永发信息网

一道c语言问题

答案:4  悬赏:60  手机版
解决时间 2021-04-12 13:31
  • 提问者网友:一抹荒凉废墟
  • 2021-04-12 04:59

我写一道程序题,为什么不显示结果啊?请哪位高手解决一下,谢了!!

#include<stdio.h>
void main()
{int i,n=0,m;
for(i=1;i<=100;i++)
{
for(m=2;m<=i/2;m++);
{
if(i/m==0)
printf("%d",i);
n++;
}
}
if(n%5==0) printf("\n");
}

最佳答案
  • 五星知识达人网友:未来江山和你
  • 2021-04-12 05:19
#include<stdio.h>
void main()
{int i,n=0,m;
for(i=1;i<=100;i++)
{
for(m=2;m<=i/2;m++); //这多了个;号//
{
if(i/m==0) //一个数除一个数不可能为0//
printf("%d",i);
n++; //循环99次,n最后为99,所以后面也不会输出\n//
}
}
if(n%5==0) printf("\n");
}
全部回答
  • 1楼网友:夜风逐马
  • 2021-04-12 07:47

//我猜想你的程序目的是想输出1到100之间的非素数。如果是这样的话,那么程序中有几个错误

#include<stdio.h> void main() {int i,n=0,m; for(i=1;i<=100;i++) { for(m=2;m<=i/2;m++);//此处的分号删了 { if(i%m==0) //此处的“/”改为“%” printf("%d",i); n++; } } if(n%5==0) printf("\n"); }

  • 2楼网友:有你哪都是故乡
  • 2021-04-12 06:57

您好!

#include<stdio.h> void main() {int i,n=0,m; for(i=1;i<=100;i++) { for(m=2;m<=i/2;m++); //每次执行第一个for时i 的初值是1 ,1/2=0,m初值是2,所以每次的循环这个for的循环体都不会执行,于是就没有输出! { if(i/m==0) printf("%d",i); n++; } } if(n%5==0) printf("\n"); }

  • 3楼网友:英雄的欲望
  • 2021-04-12 06:07

#include<stdio.h> void main() {int i,n=0,m; for(i=1;i<=100;i++) { for(m=2;m<=i/2;m++);//此处的分号删了 { if(i/m==0) printf("%d",i); n++; } } if(n%5==0) printf("\n"); }

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯