菜鸟请教各路好汉关于C语言的一道简单程序问题

请问这个程序问题在哪?
#include <stdio.h>
int main(void)
{
int a;
for(a=0;++a<=10;a*=a){
printf("a\n",a);
}
return 0;
}
要求输出1到10的平方数,但debug后总是输出a,哪里有问题?
另外,小弟请问各位C语言大哥,哪个网站有C语言程序题集呢?越多越好,越权威越好,我想多练一下,见多识广,这样就不至于连这道简单的题也拿出来献丑了~~郁闷ing···
顺便说声,各位大哥别老叫我看书,我老师就是这样,问什麽几乎都不会回答我们,就只叫我们看书,远水救不了近火,再说,我现在有问题就应及时解决,书我也不是没看呀,只不过功效来得慢而已。老师帮不了唯有请各位斧正~~万分感谢

首先,你写的for(a=0;++a<=10;a*=a)这种风格很不好。虽然可以把代码简练在一行,但是别人看起来麻烦。当然,写这种小程序看当然没什么差。可是你以后写大程序的话,虽然马上写的时候自己能看懂,但过一段时间再看就得花一些时间才能看懂。并不是说一直看书,首先基础要打好肯定得看书了阿。不然别人帮你解决了这个问题。但以后遇到别的问题呢?先打好了基础,然后以后遇到问题自己从查相关的书籍或者资料就能自己解决了。学习c语言不只是为了学会这种语言,最主要的是要提高自己的自学能力和自己解决问题的能力。
建议先从谭浩强的《c语言程序设计》看起,讲的比较简单易懂。然后先自己实现上面的例子。然后把后面的习题做了。等学得差不多了再找别的题目作
#include <stdio.h>
int main(void)
{
int a,k;
for(a=1;a<=10;a++)
{
k=a*a;
printf("%d\n",k);
}
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-11-09
#include <stdio.h>
int main(void)
{
int a;
for(a=0;++a<=10;a*=a)
printf("%d\n",a);
return 0;
}
第2个回答  2008-11-09
不会吧,
如下#include <stdio.h>
int main()
{
int a;
for(a=0;++a<=10;a*=a)
{
printf("%d\n",a);
}
return a;
}
就这样
你这样刚开始学的,我给你一个很好的方法,多看看书,书上那么多的例子,很快就会领悟的,呵呵 ,加油
第3个回答  2008-11-09
我想你连for循环中的3个表达式各自的含义都没弄清楚。
1楼的改法 是正确的。
第4个回答  2008-11-09
printf("%d\n",a);
第5个回答  2008-11-09
for(a=0;++a<=10;){
printf("%d\n",a*a);
}
相似回答