作业帮 > 综合 > 作业

求教高手C语言过道里依次挂着标号是1,2,3,.,100的电灯泡,开始它们都是灭着的.当第一个人走过时,他将标号为 1

来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/04/27 16:45:35
求教高手C语言
过道里依次挂着标号是1,2,3,.,100的电灯泡,开始它们都是灭着的.当第一个人走过时,他将标号为 1 的倍数的电灯泡的开关线拉了一下;当第二个人走过时,他将标号为 2 的倍数的电灯泡的开关线拉了一下;当第三个人走过时,他将标号为 3 的倍数的电灯泡的开关线拉了一下;.如此进行下去,当第一百个人走过时,他将标号为100 的倍数的电灯泡的开关线拉了一下.
问:当第一百个人走过后,编写C语言程序打印出过道里亮着的电灯泡的标号.
求教高手C语言过道里依次挂着标号是1,2,3,.,100的电灯泡,开始它们都是灭着的.当第一个人走过时,他将标号为 1
void main(void)
{
bool lamp[100];
for(int i = 0; i < 100; i++)
{
lamp[i] = false;
}
for(int i = 0; i < 100; i++)
{
for(int j = 0; j < 100; j++)
{
if(((j + 1) % (i + 1)) == 0)
lamp[j] = !lamp[j];
}
}
for(int i = 0; i < 100; i++)
{
if(lamp[i])
printf("标号为%d的灯亮着\n", i + 1);
}
}