二级C语言笔试-380
(总分98, 做题时间90分钟)
一、选择题
在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的。
1.
已有定义:char c;,程序前面已在命令行中包含ctype.件,不能用于判断c中的字符是否为大写字母的表达式是 A isupper(
B 'A'<=c<='Z'
C 'A'<=c&&c<='Z'
D c<=('z'-32)&&('a'-32)<=c
2.
有以下程序 #include <stdio.h> main() { int s[12]={1,2,3,4,4,3,2,1,1,1,2,3},c[5]={0},i; for(i=0;i<12;i++) c[s[i]]++; for(i=1;i<5;i++) printf("%d",c[i]); printf("\n"); } 程序的运行结果是 A 1 2 3 4
B 2 3 4 4
C 4 3 3 2
D 1 1 2 3
3.
以下函数返回a所指数组中最小的值所在的下标值 fun(int *a,int n) { int i,j=0,p; p=j for(i=j;i<n;i++) if(a[i]<a[p])______; return(p);} 在横线处应填入的是
A i=p
B a=a
C p=j
D p=i
4.
阅读下列程序,则运行结果为 #include"stdio.h" fun() { static int x=5; x++; return x;} main() { int i,x; for(i=0;i<3;i++) x=fun(); printf("%d\n",x);}
A 5
B 6
C 7
D 8
5.
设有: int a=1,b=2,c=3,d=4,m=2,n=2; 执行(m=a>b)&&(n=c>d)后,n的值是
A 1
B 2
纸碗C 3
D 4
6.
pvc安全阀有以下程序 #include <stdio.h> #include <string.h> typedef strtlct{ char name[9]; char sex;floatscore[2]; }STU; void f(STU a) { STU b={"Zhao",'m',85.0,90.0}; int i; strcpy(a.name,b.name); a.sex=b.sex; for(i=0;i<2;i++) a.score[i]=b.score[i]; } main() { STU c={"Qian",'f',95.0,92.0}; f(c);printf("%s,%c,%2.0f,%2.0f\n",c.name,c.sex,c.score[0],c.score[1]); } 程序的运行结果是
A Qian,f,95,92
B Qian,m,85,90
无机颜料分散剂C Zhao,f,95,92
D Zhao,m,85,90
7.
独角架以下不属于对象的基本特点的是
A 分类性
B 多态性
C 继承性
D 封装性
8.
有以下程序 #include <stdio.h> main() { int a[]={1,2,3,4},y,*p=&a[3]; --p; y=*p;printf("y=%d\n",y); } 程序的运行结果是
A y=0
B y=1
C y=2
D y=3
9.
下面程序的输出结果是 #include<stdio.h> #include<string.h> main() { char *pl="abc",*p2="ABC",str[50]="xyz"; strcpy(str+2,strcat(p1,p2)); printf("%s\n",str);}
A xyzabcABC
B zabcABC
C xyabcABC
D yzabcABC
10.
电动睫毛器若要求从键盘读入含有空格字符的字符串,应使用函数
A getc()
B gets()
C getchar()
D scanf()
11.
yig滤波器以下程序的运行结果是 int k=0; void fun(int m) {m+=k;k+=m;printf("m=%d k=%d",m,k++);} main() {int i=4; fun(i++); printf("i=%d k=%d\n",i,k); }
A m=4 k=5 i=5 k=5
B m=4 k=4 i=5 k=5
C m=4 k=4 i=4 k=5
D m=4 k=5 i=4 k=5
12.
以下描述中正确的是
A 由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句 B do-while循环由do开始,用while结束,在while(表达式)后面不能写分号
C 在do-while循环体中,是先执行一次循环,再进行判断
D do-while循环中,根据情况可以省略while
13.
有以下程序 #include <stdio.h> voidfun(char*t,char*s) {while(*t!=0) t++; while((*t++=*s++)!=0); } main() {char ss[10]="acc",aa[10]="bbxxyy"; fun(ss,aa); printf("%s,%s\n",ss,aa); } 程序的运行结果是
A accxyy,bbxxyy
B acc,bbxxyy
C accxxyy,bbxxyy
D accbbxxyy,bbxxyy
14.
下列叙述中正确的是
A 程序执行的效率与数据的存储结构密切相关