以下程序的输出结果是()intmain(){inta[3][3]={1,2,3,4,5,6,7,8,9};intsum=0,i,j;for(i=0;i<3;i++)for(j=0;j<3;j++)if(i==j)sum=sum+a[i][j];printf(“sum=%d”,sum);}
数组相当于存储了如下的矩阵:1 2 34 5 67 8 9程序的功能是求主对角线上3个元素的和,即1+5+9=15
执行下述程序的输出结果是:#include<stdio.h>intmain(){inti=0,j;for(j=9;i<j;i++){for(i=9;i<j;i++)if(!(j%i))break;if(i>=j-1)printf(“%d\n”,j);}return0;}
外循环:j=9内循环:i=9,i<j条件不成立,结束内循环i>=j-1成立,输出j值9i=10,i<j不成立,外循环结束,程序结束。
以下程序的输出结果是()。#include<stdio.h>structst{intx;int*y;}*p;intdt[4]={10,20,30,40};structstaa[4]={50,&dt[0],60,&dt[1],70,&dt[2],80,&dt[3]};main(){p=aa;printf("%d",++p->x);printf("%d",(++p)->x);printf("%d\n",++(*p->y));}
++p->x指的是++(p->x),所以p数据域x的值自增。 (++p)->x是p自增后再p的数据域x的值。++(*p->y)是指p的数据域y所指的对象自增。