下面这个程序的具体运行过程求解
下面这个程序的具体运行过程求解#include <stdio.h>
void main()
{
int i,a[10];
for (i=0; i<=9;i++)
a[i]=i;
for(i=9;i>=0; i--)
printf("%d ″,a[i]);
printf("\n″);
} 对于这个程序有以下几点疑问:
1.它是怎么运算的?
2.for循环是怎么循环的,为什么输出是倒序的?有点看不明白 第一个for循环是初始化a, i初始值为0, i=0,a=0,然后i+1,此时为1,a=1,一直这样循环到i=9,a=9;
第二个for循环是用printf输出a,这个for循环是从i=9开始第一次输出a,接着i--为8,输出a,在i--,输出
a,这样一直循环到i=0,即输出a,这样就实现了倒叙输出. 匿名者 发表于 2014-2-10 09:38 static/image/common/back.gif
第一个for循环是初始化a, i初始值为0, i=0,a=0,然后i+1,此时为1,a=1,一直这样循环到i=9,a=9;
...
那上面的程序能直接写成下面这样么?
#include <stdio.h>
void main()
{
int i,a[10];
for(i=9;i>=0; i--)
a[i]=i;
printf("%d ″,a[i]);
printf("\n″);
} 怎么赋值,怎么输出都是你说了算,想怎么赋,怎么输出就怎么写。 本帖最后由 lvyunhua 于 2014-2-14 09:09 编辑
那上面的程序能直接写成下面这样么?
#include <stdio.h>
void main()
{
int i,a[10];
for(i=9;i>=0; i--)
a[i]=i;
printf("%d ″,a[i]);
printf("\n″);
}
不可以的。你这样只输出一个结果就是a=0 lvyunhua 发表于 2014-2-14 09:07 static/image/common/back.gif
不可以的。你这样只输出一个结果就是a=0
为什么?有点不懂,求详解 snows512921 发表于 2014-2-17 15:31 static/image/common/back.gif
为什么?有点不懂,求详解
for 后只能有一条语句。 如果for后面有两条或两条以上的语句,需要{}符号将它们括起来。
页:
[1]