欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

一道计算机二级的题目

程序员文章站 2022-03-13 12:15:29
...

输入两个正整数m和n(m<n),求m到n之间(包括m和n)所有素数的和,要求定义并调用函数isprime(x)来判断x是否为素数(素数是除1以外只能被自身整除的自然数)。

#include<stdio.h>
#include<math.h>
#include<Windows.h>
int isprime(int x);
void swap(int *x,int *y);
int main(void)
{	int m=0,n=0,sum=0,j=0;
	printf("输入两个正整数m和n(m<n):");
	scanf("%d %d",&m,&n);
	if(m>n)
	{
		swap(&m,&n);
	}
	for(j=m;j<=n;j++)
	{
		if(isprime(j))
		{
			sum+=j;
		}
	
	}
	printf("m到n之间(包括m和n)所有素数的和为:%d\n",sum);
	system("pause");
	return 0;
}
int isprime(int x)//判断素数
{	int i=2,m=0;
	for(;i<=sqrt(x);i++)
	{	
		if(x%i==0){m++;}}
	if(m!=0)
		return 0;
	else
		return 1;
}
void swap(int *x,int *y)
{	int temp;
	temp=*x;
	*x=*y;
	*y=temp;
}
相关标签: 素数