c语言的开灯问题,求解我这样写哪里有问题?假定0为关闭,1为打开。

如题所述

没有初始化变量,第一个for的条件n是随机数
a(j)是什么东西,数组访问用的是[]
后面if(a[j]=1)那里要用==
至少能不能实现就不知道了,真没明白你的程序想干嘛,没有输入只有最后一个输出如何控制的,灯就两种状态可以用bool型
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-12-26
数组下标是从0开始计数的,int a[100],就是a[0]~a[99]追答

另外,开灯问题,第一个开关,只有1按,第二个开关,有1.2个人按。第三个开关,有1.3个人按。第四个开关,有1.2.4个人按。由此可知,第N个开关,如果N可以开平方(sqrt(i)*sqrt(i)==i),则被按了奇数次。所以只有统计,1到N中,的可开平方的数,就知道,灯开的个数了。

相似回答