(21) 若有定义语句:int m[]={5,4,3,2,1},i=4;,则下面对m数组元素的引用中错误的是A) m[--i] B)m[2*2] C)m[m[0]] D)m[m[i]]
(24) 若有定义语句:char s[10]= "1234567\0\0 ";,则strlen(s)的值是A)7 B)8 C)9 D)10
(34) 有以下程序#include void fun(int a[], int n) { int i,t;for(i=0;i}main(){ int k[10]={1,2,3,4,5,6,7,8,9,10},i;fun(k,5);for(i=2;i<8;i++) printf("%d",k[i]);printf("\n");}程序的运行结果是A)345678 B)876543 C)1098765 D)321678
(35) 有以下程序#include #define N 4void fun(int a[][N], int b[]){ int i;for(i=0;i}main() { int x[][N]={{1,2,3},{4},{5,6,7,8},{9,10}},y[N],i;fun(x,y);for(i=0;i printf("\n");}程序的运行结果是A)1,2,3,4, B)1,0,7,0, C)1,4,5,9, D)3,4,8,10,(12)以下程序按下面指定的数据给x数组的下三角置数,并按如下形式输出,请填空.43 72 6 91 5 8 10#include main(){ int x[4][4],n=0,i,j;for(j=0;j=j; 【12】 ) {n++;x[i][j]= 【13】 ;}for(i=0;i<4;i++){ for(j=0;j<=i;j++) printf("%3d",x[i][j]);printf("\n");}}
.(20)有以下程序 #include
main()
{ char s[]={"012xy"};int i,n=0;
for(i=0;s[i]!=0;i++)
if(s[i]>'a'&&s[i]<='z') n++;
printf("%d\n",n);
}
程序运行后的输出结果是
A)0
B)2
C)3
D)5
(25)以下函数findmax拟实现在数组中查找最大值并作为函数值返回,
但程序中有错导致不能实现预定功能
#define MIN -2147463647
int findmax(int x[],int n)
{ int i,max;
for(i=0;i
{ max=MIN;
if(max
}
return max;
}
造成错误的原因是
A)定义语句int i,max中max未赋值
B)赋值语句max=MIN;中,不应该给max赋MIN值
C)语句if(max
D)赋值语句max=MIN;放错了位置
(28)有以下程序
#include
#include
main()
{ char str[][20]={"One*World","One*Dream!"},*p=str[1];
printf("%d,",strlen(p));
printf("%s\n",p);
}
程序运行后的输出结果是
A)9,One*World
B)9,One*Dream!
C)10,One*Dream!
D)10,One*World
(29)有以下程序
#include
main()
{ int a[]={2,3,5,4},i;
for(i=0;i<4;i++)
switch(i%2)
{ case 0:
switch(a[i]%2)
{ case 0:a[i]++;break;
case 1:a[i]--;
} break;
case 1:a[i]=0;
}
for(i=0;i<4;i++)
printf("%d ",a[i]);
printf("\n");
}
程序运行后的输出结果是
A)3 3 4 4
B)2 0 5 0
C)3 0 4 0
D)0 3 0 4
(30)有以下程序
#include
#include
main()
{ char a[10]="abcd";
pr