文档详情

C语言选择题99道.doc

发布:2017-04-23约2.56万字共18页下载文档
文本预览下载声明
1.有以下程序 int f1(int x,int y) { return xy?x:y; } int f2(int x,int y) { return xy?y:x; } main() {int a=4,b=3,c=5,d,e,f; d=f1(a,b); d=f1(d,c); e=f2(a,b); e=f2(e,c); f=a+b+c-d-e; printf(%d,%d,%d\n,d,f,e); } 执行后输出的结果是______。 A:3,4,5 B:5,3,4 C:5,4,3 D:3,5,4 答案:C 348、有以下程序 int f1(int x,int y){return xy?x:y;} int f2(int x,int y){return xy?y:x;} main() { int a=4,b=3,c=5,d=2,e,f,g; e=f2(f1(a,b),f1(c,d)); f=f1(f2(a,b),f2(c,d)); g=a+b+c+d-e-f; printf(%d,%d,%d\n,e,f,g); } 程序运行后的输出结果是______。 A:4,3,7 B:3,4,7 C:5,2,7 D:2,5,7 答案:A 2.设有定义:float a=2,b=4,h=3;,以下C语言表达式中与代数式1/2(a+b)h计算结果不相符的是______。 A:(a+b)*h/2 B:(1/2)*(a+b)*h C:(a+b)*h*1/2 D:h/2*(a+b) 答案:B 3.设有定义:float a=2,b=4,h=3;,以下C语言表达式中与代数式1/2(a+b)h计算结果不相符的是______。 A:(a+b)*h/2 B:(1/2)*(a+b)*h C:(a+b)*h*1/2 D:h/2*(a+b) 答案:B 261、已有定义:char c;,程序前面已在命令中包含ctype.h文件。不能用于判断c中的字符是否为大写字母的表达式是______。 A:isupper(c) B:A=c=Z C:A=cc=Z D:c=(z-32)(a-32)=c 答案:B 469、有以下程序 main() {char p[]={a,b,c},q[]=abc; printf(%d %d\n,sizeof(p),sizeof(q)); } 程序运行后的输出结果是______。 A:4 4 B:3 3 C:3 4 D:4 3 答案:C 617、设有以下定义和语句 char str[20]= Program,*p; p=str; 则以下叙述中正确的是______。 A:*P与str[0]中的值相等 B:str与p的类型完全相同 C:str数组长度和p所指向的字符串长度相等 D:数组str中存放的内容和指针变量p中存放的内容相同 答案:A 513、以下能正确定义数组并正确赋初值的语句是______。 A:int N=5,b[N][N]; B:int a[1][2]={{1},{3}}; C:int c[2][]={{1,2},{3,4}}; D:int d[3][2]={{1,2},{3,4}}; 答案:D 533、以下不能正确定义二维数组的选项是______。 A:int a[2][2]={{1},{2}}; B:int a[][2]={1,2,3,4}; C:int a[2][2]={{1},2,3} D:int a[2][]={{1,2},{3,4}} 答案:D 567、有以下程序: void sort(int a[],int n) { int i,j,t; for(i=0;in-1;i+=2) for(j=i+2;jn;j+=2) if(a[i]a[j]){t=a[i];a[i]=a[j];a[j]=t;} } main() { int aa[10]={1,2,3,4,5,6,7,8,9,10},i; sort(aa,10); for(i=0;i10;i++) printf(%d,,aa[i]); printf(\n); } 其输出结果是______。 A:1,2,3,4,5,6,7,8,9,10, B:10,9,8,7,6,5,4,3,2,1, C:9,2,7,4,5,6,3,8,1,10, D:1,10,3,8,5,6,7,4,9,2, 答案:C 137、以下程序中函数sort的功能是对a所指数组中的数据进行由
显示全部
相似文档