中山南朗有什么好玩的:一个关于c语言 数组的程序~求助啊~~~

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/29 09:32:40
#include<stdio.h>
main()
{
int t,i,a[10]={1,2,3,4,5,6,7,8,9,10};
t=a[9];
for(i=9;i>1;i=i-2)
a[i]=a[i-2];
a[1]=t;
for(i=0;i<10;i++)
printf('%d",a[i]);
}

请教哪位高手分析一下这道程序!特别是"for(i=9;i>1;i=i-2) a[i]=a[i-2];"这句的功能~~~ 还有着整个程序的功能是什么~!!
运行结果是
11034567898

为什么和你们给的结果不同呢~

i从9开始,每次减2,当i<=1则for loop停止
在这个loop中,每次a[i]被a[i-2]替换

其实就是双数项被前一个双数项替换了

最后数组应该是变成{1,10,3,2,5,4,7,6,9,8}

for loop
a[] array
printf() for output
http://www.cplusplus.com/ref/cstdio/printf.html

这是一个很普通的关于循环,数组的程序吧,看这个for循环过程,a9=a7=8,a7=a5=6,a5=a3=4,a3=a1=2,然后循环停止,由于先由一个中间变量t=原来数组里的a9=10,所以a1=t=10,最后这个数组的顺序为:1,10,3,2,5,4,7,6,9,8