施工现场管理标准图集:谢谢大家

来源:百度文库 编辑:查人人中国名人网 时间:2024/04/29 03:57:08
4下面程序的运行结果是
main()
{int a[6],i;
for(i=1;i<6;i++)
{a[i]=9*(i-2+4*(i>3))%5;
printf("%2d",a[i];
}
}
帮手解释下它的答案-4 0 4 4 3怎么得到的好吗?
5。下面程序的运行结果是———— #include<stdio.h> #include<string .h>
main()
{char a[80]="MY", b[80]="LOVE";
int i=0;
strcat (a,b);
while (a[i++]!='\0') b[i]=a[i];
puts(b);
}
答案是LYLOVE。怎么会是这个答案????怎么得出来的啊
while (a[i++]!='\0') 就是
a[i++]=a[0]的意思吗?

4.第一次循环:
a[1]=9*(1-2+4*(1>3)%5
1>3不成立等于0
所以a[1]=9*(-1)%5=-4

第二次循环:
a[2]=9*(2-2+4*(2>3)%5
=0%5=0
第三次循环:
a[3]=9*(3-2+4(3>3)%5
= 9%5=4
第四次:
a[4]=9*(4-2+4*(4>3)%5
= 9*6%5=4
第五次:
a[5]=9*(5-2+4*(5>3)%5
=9*7%5=3

5.
首先strcat (a,b),把b数组拼接给a数组,
a即为MYLOVE;b[80]="LOVE";

while中a[i++]=a[0], 但循环体内i已通过i++变为了1,
所以b[1]=a[1〕=y
b[2]=a[2]=L
b[3]=a[3]=O
b[4]=a[4]=V
b[5]=a[5]=E
但由于b[0]在循环中没有重新赋值,所以b[0]=L(原来的)

应注意i++与++i意义是不同的

不是的while (a[i++]!='\0')

的意思是:
  当a数组不指向结束符'\0'时,
  则执行循环~~~