当前位置: 代码迷 >> C语言 >> 我的错在哪里啦!大伙指点!
  详细解决方案

我的错在哪里啦!大伙指点!

热度:229   发布时间:2008-05-27 18:08:30.0
我的错在哪里啦!大伙指点!
计算100到999的素数个数并显示,为什么编译通过啦但计算的结果为-12请大伙指点!
    #include  "stdio.h"
main()
{int x,i,t=0;
clrscr();
for(x=100;x<999;x++);
for(i=2;i<x;i++)
if(x/i==0) break; }
if(i>=x);
{printf("%d",&x);t++;
if(t/10==0)printf("\n");

return x; }
搜索更多相关的解决方案: 素数  指点  int  main  clrscr  

----------------解决方案--------------------------------------------------------
x+=2
----------------解决方案--------------------------------------------------------
liyanhong你到底知不知道自己在说什么?你到底会不会C语言????
LZ你检查两样东西:1 大括号,2 分号。
----------------解决方案--------------------------------------------------------
凑热闹的
我只是说着玩的  
逗大家的
可以说我不会C语言
----------------解决方案--------------------------------------------------------
#include  "stdio.h"
main()
{
        int x,i,t=0;
        clrscr();
        for(x=100;x<999;x++);
         {
                 for(i=2;i<x;i++)
                        if(x/i==0) break;
                 if(i>=x);
                 printf("%d",x);t++;
        if(t/10==0)printf("\n");
        return x;
         }
}
----------------解决方案--------------------------------------------------------
LS:你还是没注意分号………………
----------------解决方案--------------------------------------------------------
#include  "stdio.h"
int main()
{
    int x,i,t=0;
    for(x=100;x<999;x++)
    {
        for(i=2;i<=sqrt(x);i++)
            if(x%i==0) break;
        if(i>sqrt(x))
        {
            printf("%d  ",x);
            t++;
            if((t%10)==0) printf("\n");
        }
    }
    printf("总共有%d个素数",t);
    return 0;
}
----------------解决方案--------------------------------------------------------
凑热闹的
#include  "stdio.h"
int main()
{
        int x,i,t=0;
    for(x=101;x<999;x+=2)
        {
        for(i=2;i<=(x/2);i++)
                        if(x%i==0) break;
        if(i=sqrt(x/2))
                {
                printf("%d  ",x);
                    t++;
            if((t%10)==0) printf("\n");
                }
        }
        printf("总共有%d个素数",t);
        return 0;
}

[[it] 本帖最后由 liyanhong 于 2008-5-28 13:35 编辑 [/it]]

[[it] 本帖最后由 liyanhong 于 2008-5-28 18:30 编辑 [/it]]
----------------解决方案--------------------------------------------------------
不行啊!这次的结果不是-12啦而是999,为什么呀?
----------------解决方案--------------------------------------------------------
#include <stdio.h>
int a[2000]={1,1,0};
void prime()
{   
    for(int j=0;j<50;j++)
        {
                if(a[j]==0)
            for(int i=j*j;i<2000;i+=j)
                          a[i]=1;
        }   
}
int main()
{        
        prime();
        for(int i=100;i<1000;i++)
           if(a[i]==0)
              printf("%d ",i);
    return 0;
}

[[it] 本帖最后由 sunkaidong 于 2008-5-28 14:06 编辑 [/it]]
----------------解决方案--------------------------------------------------------
  相关解决方案