标题:打印100以内的素数,自己写了一个,编译可以。运行不了......请教了....
只看楼主
NBABOY
Rank: 4
等 级:业余侠客
威 望:4
帖 子:129
专家分:281
注 册:2013-5-2
得分:3 
九楼的结构好像有点问题了。
2013-06-21 14:12
小修
Rank: 1
来 自:山东 济南
等 级:新手上路
帖 子:14
专家分:4
注 册:2013-6-21
得分:3 
为什么能有多个花括号

奋斗为不错过!
2013-06-21 14:17
love云彩
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:青藏高原
等 级:贵宾
威 望:53
帖 子:3663
专家分:11416
注 册:2012-11-17
得分:0 
#include<stdio.h>
void main()
{
    int i,j;
    for(i=2;i<100;i++)
    {
        for(j=2;j<=i/2;j++)
        if(i%j==0)break;
       if(j>i/2)
       {
          printf("%d ",i);
        }
    }
}
这是打印了100以内的素数的代码参照

思考赐予新生,时间在于定义
2013-06-21 14:35
love云彩
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:青藏高原
等 级:贵宾
威 望:53
帖 子:3663
专家分:11416
注 册:2012-11-17
得分:3 
#include<math.h>
void main()
{
      int  i,k,a;
      double  j;
      for(i=1;i<=100;i++)
  {      
       j=sqrt(i);  //这里用VS2012来调试,显示出错的,不过不是很大问题,编译器的不同而已
      for(a=2;a<=j;a++)   
    {   
        k=i/a;      
        if(k==0)  
        printf("%d\n",i);
         }
     }
   }
至于楼主说运行不了,就是你的算法出错,以及根据算法的思想写出的代码有错

思考赐予新生,时间在于定义
2013-06-21 14:41
kennyshen
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-6-25
得分:0 
求帮忙 编写一个程序  #include<stdio.h>
 #include<math.h>
 void main()
 {
       int  i,k,a;
       double  j;
       for(i=1;i<=100;i++)
   {      
        j=sqrt(i);  
       for(a=2;a<=j;a++)   
     {   
         k=i/a;  /////这里是不是错了,你想取余数吗?   
         if(k==0)  
         printf("%d\n",i);
         }
     }
   }
 
2013-06-27 08:20
魔道无敌
Rank: 1
等 级:新手上路
帖 子:19
专家分:7
注 册:2013-2-27
得分:0 
lz你是弄成非素数了
2013-06-28 23:17
爱她永远
Rank: 2
等 级:论坛游民
帖 子:14
专家分:19
注 册:2013-6-9
得分:0 
#include <stdio.h>
int judge(int a)
{
    int i,flag=1;
    if(a==1)
        flag=0;
    else if(a==2||a==3)
        flag=1;
    else
    {
        for(i=2;i<=a-1;i++)
        {
            if(a%i==0)
            {
                flag=0;
                break;
            }
        }
    }
    return flag;
}
main()
{
    int a,i;
    for(a=1;a<=100;a++)
    {
        if(judge(a)==1)
            printf("%d\n",a);
    }
}
我写的水平也一般,不过可以输出100内素数,仅供参考哦!
2013-06-29 01:13
cheetah
Rank: 2
等 级:论坛游民
威 望:2
帖 子:110
专家分:92
注 册:2013-6-29
得分:0 
你的编程习惯不是太好,有点乱;
#include <stdio.h>
#include <math.h>
void main ()
{
   int i, k, a, count = 0;
   
   for (i=2; i<=100; i++)
   {
      k = sqrt (i);
      for (a=2; a<=k; a++)
      if (i%a==0)
      break;
      if (a>k)
     {
        printf ("%3d",i);
        count++;
     }
     if (count%10==0&&count!=0)
     {
       printf ("\n");
       count = 0;
     }
   }
}
  

天道酬勤
2013-06-29 08:44



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-415685-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.150831 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved