以下程序运行后的输出结果是( )。 #include<stdio.h> void reverse(int a[],int n) { int i,t; for(i=0;i<n/2;i++) {t=a

admin2020-04-18  28

问题 以下程序运行后的输出结果是(    )。
    #include<stdio.h>
    void reverse(int a[],int n)
    {  int i,t;
       for(i=0;i<n/2;i++)
       {t=a;a=a[n-1-i];a[n-1-i]=t;}
    }
    main()
    {  int b[10]={10,9,8,7,6,5,4,3,2,1);int i,s=0;
       reverse(b,10);
       for(i=0;i<3;i++)s+=b
       printf("%d\n",s);
    }

选项 A、27
B、6
C、25
D、30

答案B

解析 本题考查函数调用时的参数传递。函数reverse将数组b进行了逆置,此时b[10]={10,9,8,7,6,5,4,3,2,1),后面for语句的功能是将b中的后3个数累加,并将结果放在s中,最后将s输出,结果s=1+2+3=6。
转载请注明原文地址:https://kaotiyun.com/show/M3Cp777K
0

最新回复(0)