初学C语言,有个素数问题求教,代码如下,请尽量不要使用一些初学者不熟悉的函数什么的。。。谢谢
何日成熟 2014-03-04 08:55:15 C语言
求素数
这个程序的目的是给电脑一个数字,然后电脑求出数值内最大的十个素数,然后显示它们和它们的和;
目前遇到的一些问题就是:
1.输出了以后总是会多出来两个0;
2.试了很多次找不到将1,0,负数那些去掉;
3.想找个办法一次性输出数组;
4.其实这个我还没写完,只是写到可以输出素数的地步;
#include "stdio.h"
#include "stdlib.h"
#include "math.h"
int main(void)
{
int i,m,j,a;
int grade[10];
double k;
printf("请输入一个数字:\n");
scanf("%d",&i);
for(i=i,m=0;i>=2,m<=10;i--)
{
k=sqrt(i);
for(j=2;j<=floor(k);j++)
if (i%j==0)
{
break;
}
if (j>floor(k))
{
grade[m]=i;
m++;
}
}
a=grade[0]+grade[1]+grade[2]+grade[3]+grade[4]+grade[5]+grade[6]+grade[7]+grade[8]+grade[9];
printf("%d %d %d %d %d %d %d %d %d %d %d %d"
,grade[0],grade[1],grade[2],grade[3],grade[4],grade[5]
,grade[6],grade[7],grade[8],grade[9]);
printf("")
}
我C语言还只上了一节课,都是自己边看书边搜索边试的,请不要笑话。。。不过还请前辈们笑过之后不吝赐教,谢谢啦。