搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 报数问题,编译没错运行出错
标题:
报数问题,编译没错运行出错
取消只看楼主
Dream_LX
等 级:
新手上路
帖 子:9
专家分:0
注 册:2012-6-6
结帖率:
100%
楼主
已结贴
√
问题点数:10 回复次数:7
报数问题,编译没错运行出错
输入一个数,10个人依次报数,求报到这个数的人是第几个人
#include<stdio.h>
int main()
{
int i=1,j,m;
printf("请输入要报到的数字=");
scanf("%d",m);
for(;i<=m;)
{
for(j=1;j<=10;j++)
{
if(i==m)
{
printf("第%d个人报到了%d。",j,m);
break;
}
i++;
}
}
return 0;
}
哪里出问题了?求解
搜索更多相关主题的帖子:
个人
2013-04-09 20:54
Dream_LX
等 级:
新手上路
帖 子:9
专家分:0
注 册:2012-6-6
第
2
楼
得分:0
回复 2楼 icanbestrong
那个10是10个人循环报数,m是最后要报到的数字,j是第几个人
2013-04-10 01:00
Dream_LX
等 级:
新手上路
帖 子:9
专家分:0
注 册:2012-6-6
第
3
楼
得分:0
回复 3楼 fanpengpeng
呃,用%10是好写可是不知道这样为什么不对...
2013-04-10 01:01
Dream_LX
等 级:
新手上路
帖 子:9
专家分:0
注 册:2012-6-6
第
4
楼
得分:0
回复 4楼 icanbestrong
应该就是i==m吧,因为i是报的数字从1开始一直增加到m,j是第几个人从1到10来回循环
2013-04-10 01:05
Dream_LX
等 级:
新手上路
帖 子:9
专家分:0
注 册:2012-6-6
第
5
楼
得分:0
回复 7楼 yctchxf
哦哦,谢谢这个地方确实少了
2013-04-10 01:05
Dream_LX
等 级:
新手上路
帖 子:9
专家分:0
注 册:2012-6-6
第
6
楼
得分:0
回复 6楼 邓士林
你说的无线循环的问题确实是这样...你一说我才发现,但是你改的还是有问题...
如果把i++放到内层for外面,那么就相当于每个来回报完一遍,i才加了1次,那么内层for循环就没有意义了,这样外层循环m次,每次内层for循环都将j从1+到10,第m次直接当j是1的时候就输出了
2013-04-10 01:18
Dream_LX
等 级:
新手上路
帖 子:9
专家分:0
注 册:2012-6-6
第
7
楼
得分:0
回复 12楼 fanpengpeng
嗯...发现这个问题了。
所以一运行就报错,可是这个应该怎么改呢...求解
2013-04-10 01:20
Dream_LX
等 级:
新手上路
帖 子:9
专家分:0
注 册:2012-6-6
第
8
楼
得分:0
哦,我知道了,再加一个
if(i==m)
{
break;
}
这样
#include<stdio.h>
int main()
{
int i=1,j,m;
printf("请输入要报到的数字=");
scanf("%d",&m);
for(;i<=m;)
{
for(j=1;j<=10;j++)
{
if(i==m)
{
printf("第%d个人报到了%d。\n",j,m);
break;
}
i++;
}
if(i==m)
{
break;
}
}
return 0;
}
就可以了~
2013-04-10 01:24
8
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-403521-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.463303 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved