写出以下程序的执行结果
main()
{ int i,s=0;
int a[3][3]={1,2,9,3,4,8,5,6,7};
for(i=0;i<3;i++) s+=a[i][i]+a[i][3-i-1];
printf(“%d”,s);
}
s1和s2已正确定义并分别指向两个字符串。若要求:当s1所指串大于s2所指串时,执行语句S;,则以下选项中正确的是______。
A. if(s1>s2) S; B. if(strcmp(s1,s2)>0) S;
C. if(strcmp(s2,s1)>0) S; D. if(strcmp(s1,s2)) S;
若程序中定义了以下函数
double myadd(double a,double b)
{ return (a+b);}
并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中错误的说明是( )
A)double myadd(double a,b);
B)double myadd(double,double);
C)double myadd(double b,double a);
D)double myadd(double x,double y);
以下程序的输出结果是( ) 。
#define MA(x) x*(x-1)
main()
{ int a=1,b=2;
printf("%d \n",MA(1+a+b)); }
A.6 B.8 C.10 D.12