|
本帖最后由 dssz 于 2022-6-28 11:56 编辑
- /*
- 从实例中学C语言 实例3_1( //3_1.cpp : 百灯判亮)
- 有序号为1,2,3,…,99,100的100盏灯从左到右排成一横行,且每盏灯各由一个拉线开关控制着,
- 最初他们全呈关闭状态。有100个小朋友,第1位走过来,把凡是序号为1的倍数的电灯开关拉一下;
- 接着第2位走过来,把凡是序号为2的倍数的电灯开关拉一下;第3位走过来,把凡是序号为3的倍数的
- 电灯开关拉一下。问这样做过一遍之后,哪些序号的电灯是亮着的?
- */
- #include <iostream>
- using namespace std;
- int main(int argc, char* argv[])
- {
- bool a[101]={false}; //a[1]~a[100]表示100盏灯的状态,初始化为false关,
- int i,j;
- for(i=1; i<=100; ++i)
- for(j=i; j<=100; j+=i)
- a[j]=!a[j];
-
- for( i=1; i<=100; ++i)
- if (a[i]) cout<<i<<" ";
-
- return 0;
- }
- //执行结果
- //1 4 9 16 25 36 49 64 81 100
复制代码 |
上一篇: 请教VC两个类之间引用的问题下一篇: 字符串转换
|