有以下程序,程序执行后,输出结果是【 】 #include<stdio.h> void fun(int*A) { a[0]=a[1];} main() { int a[10]={1

admin2013-02-23  19

问题 有以下程序,程序执行后,输出结果是【  】
      #include<stdio.h>
       void fun(int*A)
       {  a[0]=a[1];}
       main()
       {  int a[10]={10,9,8,7,6,5,4,3,2,1,},i;
          for(i=2;i>1=0;i-) fun(&a);
          for(i=0;i<10;i++) printf("%d,a);
          printf("\n");
       }

选项

答案7777654321

解析 本题主要考查函数的调用,第—次调用把数组元素a[2]的地址赋给a,此时a[1]即是原数组的a[3]等于7,再执行赋值语句a[0]=a[1],则a[0]和a[1]中的值都是7,然后再把这个值返回给a[2]同样地第二次调用的时候函数返回值也是7,第三次调用返回值也是7,因此数组的前4个元素,即对a[0]、a[1]、a[2]和a[3]的值都为7,当执行第二个for循环时输出数组中所有元素的值7777654321。
转载请注明原文地址:https://kaotiyun.com/show/3LJp777K
0

最新回复(0)