注册 登录
编程论坛 C++教室

[求助]昨天发生的怪事

dlcdavid 发布于 2006-11-02 19:10, 999 次点击

关于爱因斯坦阶梯的问题 这个程序不会报错,没警告,(VC++6.0)运行后就连第一个if语句都不能到达-----请大家先看看这个程序有什么错,,再看一楼

#include <iostream.h>
int main()
{
int a=1;
for (a=7;;a+=7);
{
if(a%6==5)
{if(a%5==4)
{if(a%4==3)
{if(a%3==2)
{if(a%2==1);
cout<<a;
}
}
}
}
}
system("PAUSE");
return 0;
}

以下是引用dlcdavid在2007-3-10 1:12:51的发言:

呵呵。。。都是陈年往事了,,没想到现在被翻出来了
谢谢这么多热心人。。

那天在群头说了2个小时都没人发现问题之所在。
可能是太晚了,,大家都累了的原因吧

[此贴子已经被作者于2007-3-10 1:14:06编辑过]

13 回复
#2
dlcdavid2006-11-02 19:11

为什么去掉8个大括号就能运行了????
# include <iostream>
using namespace std;

int main()
{
int a;
for(a=0;;a=a+7)
{
if(a%6==5)
if(a%5==4)
if(a%4==3)
if(a%3==2)
if(a%2==1)
{
cout<<a;
system("PAUSE");
return 0;
}

}
}

#3
litcatyx2006-11-02 19:29
不是大括号的问题,for (a=7;;a+=7);后面的分号去掉
if(a%2==1);也一样
还有就是你的第一个程序没有终止条件,输出a后还会接着循环
#4
溜园2006-11-02 23:05
这个问题太弱子了
#5
dragonfly2006-11-03 09:04
呵呵,三楼真是明察秋毫!
#6
独孤风2006-12-11 14:23
希望大家编的时候不要整那么的大括号,要是必需要用的话,最好加一些注解, 我个人认为这也是好的编程风格所必须的
#7
peswe2006-12-11 21:53

真是高手了,刚看还真被楼主给蒙了下

#8
走刀口→超2006-12-11 21:56

耍砸是么用的.

#9
yuyunliuhen2006-12-12 22:51

呵呵 还真的是,最好自己先想下

#10
一二三四五2006-12-13 09:19
多了两个分号,FOR后面多了一个,最后一个IF后面多了一个
#11
cyyx2006-12-27 15:28
3楼真是细心
看了好几遍都没有找到问题所在
#12
woailiwei2007-03-09 13:30
回复:(dlcdavid)[求助]昨天发生的怪事
#include <iostream.h>
void main()
{
int a=1;
for (a=7;a<=10000;a+=7)
{
if(a%6==5&&a%5==4&&a%4==3&&a%3==2&&a%2==1)
cout<<a<<'\n';

}


}
#13
Rey10232007-03-10 00:35

我觉得楼主应该想想再发帖的,呵呵!!

#14
dlcdavid2007-03-10 01:12
呵呵。。。都是陈年往事了,,没想到现在被翻出来了
谢谢这么多热心人。。

那天在群头说了2个小时都没人发现问题之所在。
可能是太晚了,,大家都累了的原因吧
1