C语言 求100以内的最大素数

4求100以内的最大素数(4分)
题目内容:

编程计算n(n<=500)以内的10个最大素数及其和,分别输出这最大的10个素数及其和。n的值要求从键盘输入。要求10个素数按从大到小的顺序输出。

程序运行示例1:

Input n(n<=500):10↙

 7     5     3     2

sum=17

程序运行示例2:

Input n(n<=500):100↙

97    89    83    79    73    71    67    61    59    53

sum=732

输入提示信息:“Input n(n<=500):”

输入格式: “%d”

10个最大素数的输出格式:“%6d”

10个最大素数和的输出格式:“\nsum=%d\n”

#include
#include
int chang(int x);
int main()
{
	int n=0,b[10]={0},sum=0;int count=0;
	printf("Input n(n<=500):");
	scanf("%d",&n);
	for(int x=n;x>=2;x--)
	{
		if(chang(x)==0)
		{
			if(count==10)
				break;
			printf("%d\n",x);
			b[count]=x;
		    sum+=x;
			count++;
		}
	}
	printf("%d\n",count);
	for(int y=0;y<10;y++)
	{
		if(b[y]!=0)
		{
			printf("%6d",b[y]);
		}
	}
	printf("\nsum=%d\n",sum);
	return 0;
}
int chang(int x)
{
	int number=0;
	for(int y=2;y<(int)sqrt((float)x);y++)
	{
		if(x%y==0)
		{
			number=1;
			break;
		}
	}
	return number;
}

你可能感兴趣的:(c语言,java,算法)