以下程序的输出结果是#include <stdio.h>main(){int j, a[]={1,3,5,7,9,11,13,15},*p=a+5;

11 查阅

以下程序的输出结果是#include <stdio.h>main(){ int j, a[]={1,3,5,7,9,11,13,15},*p=a+5; for(j=3; j; j--) { switch(j) { case 1: case 2: printf("%d",*p++); break; case 3: printf("%d",*(--p)); } }}

参考答案:

9911本题考查运算符及其结合性。题目中给出的程序的主体主要由for循环和switch语句构成,初始时定义数组a[],包括8个数据。定义指针指向a[5],for循环的循环变量初始值为3,循环条件为j!=0,增值为-1,即循环变量的取值为3,2,1。switch语句的表达式为for循环中的循环变量j。当j=3时,switch语句执行case 3后面的语句,即输出*(--p)的值,初始时,指针p指向的值为a[5]=11,*(--p)的值为a[4],即9。第2次for循环j=2,switch语句执行case 2

计算机二级