| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1300 人关注过本帖
标题:打印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: 3Rank: 3
等 级:论坛游侠
威 望:3
帖 子:120
专家分:118
注 册: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
快速回复:打印100以内的素数,自己写了一个,编译可以。运行不了......请教了.. ...
数据加载中...
 
   



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

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