有以下程序: #include<stdio.h> #define N 4 void fun(int a[][N],int b[]) { int i; for(i=0;i<N;i++)

admin2021-02-25  31

问题 有以下程序:
    #include<stdio.h>
    #define N 4
    void fun(int a[][N],int b[])
    {
      int i;
      for(i=0;i<N;i++)
        b[0]=a
    }
    main()
    {
      int x[][N]={{1,2,3},{4},{5,6,7,8},{9,10}},y[N],i;
      fun(x,y);
      for(i=0;i<N;i++)
        printf("%d",y);
      printf("n");
    }
    程序运行的结果是(  )。

选项 A、1 2 3 4
B、1 0 7 0
C、1 4 5 9
D、3 4 8 0

答案B

解析 数组x有4列。fun函数中for循环的作用是将二维数组前4行的对角线元素分别赋给b[0],b[1],b[2],b[3]。在主函数中,二维数组初始化为{1,2,3},{4},{5,6,7,8},{9,10},所以可以看出对角线元素为1 0 7 0。
转载请注明原文地址:https://jikaoti.com/ti/5rz0FFFM
0

最新回复(0)