有以下程序 #include <stdio.h> void f( int *q ) { int i=0; for ( ;i<5; i++) (*q)++; } main() { int a

admin2020-11-27  8

问题 有以下程序
    #include <stdio.h>
    void f( int  *q )
    { int  i=0;
      for (  ;i<5; i++) (*q)++;
    }
    main()
    { int  a[5] ={1,2,3,4,5}, i;
      f(a);
      for (i=0;i<5; i++) printf("%d,", a);
    }
程序运行后的输出结果是

选项 A、6, 2, 3, 4, 5,
B、2, 2, 3, 4, 5,
C、1, 2, 3, 4, 5,
D、2, 3, 4, 5, 6,

答案A

解析 本题考查的是函数的地址调用,将数组名作为数组首地址进行传递,然后取数据元素值进行加1运算。因此A选项正确。
转载请注明原文地址:https://kaotiyun.com/show/cstp777K
0

最新回复(0)