(21)已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1&&y+z/2的值是______。
A) 6 B) 0 C) 2 D) 1
(22)有一函数
1 x>0
y= 0 x=0
-1 x<0,
以下程序段中不能根据x的值正确计算出y的值的是______。
A) if(x>0) y=1;else if(x==0) y=0;else y=-1;
B) y=0;if(x>0) y=1;else if(x<0) y=-1;
C) y=0;if(x>=0)if(x>0) y=1;else y=-1;
D) if(x>=0) if(x>0) y=1;else y=0;else y=-1;
(23)以下选项中,与k=n++完全等价的表达式是_______。
A) k=n,n=n+1 B) n=n+1,k=n C) k=++n D) k+=n+1
(24)以下程序的功能是:按顺序读入10名学生4门课程的成绩,
计算出每位学生的平均分并输出,程序如下:
main()
{int n,k;
float score,sum,ave;
sum=0.0;
for(n=1;n<=10;n++)
{for(k=1;k<=4;k++)
{scanf("%f",&score); sum+=score;}
ave=sum/4.0;
printf("NO%d:%f ",n,ave);
}
}
上述程序运行后结果不正确,调试中发现有一条语句
出现在程序的位置不正确。这条语句是______。
A) sum=0.0;
B) sum+=score;
C) ave=sum/4.0;
D) printf("NO%d:%f ",n,ave);
(25)有以下程序段
int n=0,p;
do {scanf("%d",&p);n++;} while(p!=12345&&n<3);
此处do-while循环的结束条件是______。
A) p的值不等于12345并且n的值小于3
B) p的值等于12345并且n的值大于等于3
C) p的值不等于12345或者n的值小于3
D) p的值等于12345或者n的值大于等于3
(26)有以下程序
main()
{int a=15,b=21,m=0;
switch(a%3)
{case 0:m++;break;
case 1:m++;
switch(b%2)
{default:m++;
case 0:m++;break;
}
}
printf("%d ",m);
}
程序运行后的输出结果是______。
A) 1 B) 2 C) 3 D) 4
(27)C语言中,函数值类型的定义可以缺省,此时函数值的隐含类型是______。
A) void B) int C) float D) double
(28)若有说明:int n=2,*p=&n,*q=p;,则以下非法的赋值语句是______。
A) p=q; B) *p=*q; C) n=*q; D) p=n;
(29)有以下程序
float fun(int x,int y)
{return(x+y); }
main()
{int a=2,b=5,c=8;
printf("%3.0f ",fun((int)fun(a+c,b),a-c));
}
程序运行后的输出结果是______。
(30)有以下程序
void fun(char *c,int d)
{*c=*c+1;d=d+1;
printf("%c,%c,",*c,d);
}
main()
{char a=’A’,b=’a’;
fun(&b,a); printf("%c,%c ",a,b);
}
程序运行后的输出结果是______。
A) B,a,B,a B) a,B,a,B C) A,b,A,b D) b,B,A,b
(31)以下程序中函数sort的功能是对a所指数组中的数据进行由大到小的排序
void sort(int a[],int n)
{int i,j,t;
for(i=0;ifor(j=i+1;jif(a}
main()
{int aa[10]={1,2,3,4,5,6,7,8,9,10},i;
sort(&aa[3],5);
for(i=0;i<10;i++) printf("%d,",aa);
printf(" ");
}
程序运行后的输出结果是______。
A) 1,2,3,4,5,6,7,8,9,10,
B) 10,9,8,7,6,5,4,3,2,1,
C) 1,2,3,8,7,6,5,4,9,10,
D) 1,2,10,9,8,7,6,5,4,3,
(32)有以下程序
int f(int n)
{if (n==1) return 1;
else return f(n-1)+1;
}
main()
{int i,j=0;
for(i=1;i<3;i++) j+=f(i);
printf("%d ",j);
}
程序运行后的输出结果是______。
A) 4 B) 3 C) 2 D) 1
(33)有以下程序
main()
{char a[]={’a’,’b’,’c’,’d’,’e’,’f’,’g’,’h’,’’}; int i,j;
i=sizeof(a); j=strlen(a);
printf("%d,%d ",i,j);
}
程序运行后的输出结果是______。
A) 9,9 B) 8,9 C) 1,8 D) 9,8
(34)以下程序中的函数reverse的功能是将a所指数组中的内容进行逆置。
void reverse(int a[],int n)
{int i,t;
for(i=0;i{t=a;a=a[n-1-i];a[n-1-i]=t;}
}
main()
{int b[10]={1,2,3,4,5,6,7,8,9,10}; int i,s=0;
reverse(b,8);
for(i=6;i<10;i++) s+=b;
printf("%d ",s);
}
程序运行后的输出结果是______。
A) 22 B) 10 C) 34 D) 30
(35)有以下程序
main()
{int aa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};
int i,s=0;
for(i=0;i<4;i++) s+=aa[1];
相关推荐: