有哪位大佬能告诉我串这c语言代码错在哪,可以通过编译,但是运行结果却是一片空白。

#include<stdio.h>
int isPreme(int x,int a[], int b);

int main(void)
{
const int number=100;
int prime[number]={2};
int count=1;
int i=3;
while (count<number){
if(isPreme(i,prime,count)){
prime[count++]=i;
}
i++;
}
for(i=0;i<number;i++){
printf("%d",prime[i]);
if((i+1)%5)printf("\t");
else printf("\n");
}
return 0;
}
int isPreme(int x,int knownPrimes[], int numberOfKnownPrimes)
{
int ret=1;
int i;
for(i=0;i<numberOfKnownPrimes;i++){
if(i%knownPrimes[i]==0){
ret=0;
break;
}
}
return ret;
}

#include<stdio.h>
int isPreme(int x,int a[], int b); 

int main(void)
{
const int number=100;
int prime[100]={2};
int count=1;
int i = 3;
while (count < number){
if(isPreme(i, prime, count)){
prime[count++]=i;
}
i++;
}
for(i=0;i<number;i++){
printf("%d", prime[i]);
if((i+1) % 5) printf("\t");
else printf("\n");
}
return 0;
}
int isPreme(int x,int knownPrimes[], int numberOfKnownPrimes)
{
int ret=1;
int i;
for(i=0;i<numberOfKnownPrimes;i++){
if((x % knownPrimes[i]) == 0){//注意这一行条件写错了
ret=0;
    break;
}
}
return ret;
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-08-18

相似回答