36.以下叙述中正确的是( )
A.C语言比其他语言高级
B.C语言可以不用编译就能被计算机识别执行
C.C语言以接近英语国家的自然语言和数学语言作为语言的表达形式
D.C语言出现的最晚,具有其他语言的一切优点
【参考答案】C
37.C语言中最简单的数据类型包括( )
A.整型、实型、逻辑型 B.整型、实型、字符型
C.整型、字符型、逻辑型 D.字符型、实型、逻辑型
【参考答案】B
38.下列可用于C语言用户标识符的一组是( )
A.void define WORD B.a3_b3 _123 Car
C.For abc IFCase D.2a DO sizeof
【参考答案】B
39.已知
int t=0;
while (t=1)
{…}
则以下叙述正确的是( )
A.循环控制表达式的值为0 B.循环控制表达式的值为1
C.循环控制表达式不合法 D.以上说法都不对
【参考答案】B
40.有以下程序
main()
{ int i=1,j=1,k=2;
if((j++ || k++)&&i++)
printf(″%d,%d,%d\n″,i,j,k);
}
执行后输出结果是( )
A.1,1,2 B.2,2,1 C.2,2,2 D.2,2,3
【参考答案】C
41.在下列选项中,没有构成死循环的是( )
A.int i=100;
while(1)
{ i=i0+1;
if(i>100)break;
}
B.for(;;);
C.int k=1000;
do{k++;}while(k>10000);
D.int s=36;
while(s)--s;
【参考答案】D
42.有以下程序
float fun(int x,int y)
{return(x+y);}
main()
{ int a=2,b=5,c=8;
printf(″%3.0f\n″,fun((int)fun(a+c,b),a-c));
}
程序运行后的输出结果是( )
A.编译出错 B.9 C.21 D.9.0
【参考答案】B
43.设有以下说明语句
struct stu
{ int a;
float b;
} stutype;
则下面的叙述不正确的是( )
A.struct是结构体类型的关键字
B.struct stu是用户定义的结构体类型
C.stutype是用户定义的结构体类型名
D.a和b都是结构体成员名
【参考答案】C源:中华考试网
44.以下说法正确的是( )
A.C语言程序总是从第一个函数开始执行
B.在C语言程序中,要调用函数必须在main()函数中定义
C.C语言程序总是从main()函数开始执行
D.C语言程序中的main()函数必须放在程序的开始部分
【参考答案】C
45.下列程序执行后的输出结果是( )
void func(int *a,int b[ ])
{ b[0]=*a+6; }
main()
{ int a,b[5]={0};
a=0;b[0]=3;
func(&a,b);printf(″%d\n″,b[0]);
}
A.6 B.7 C.8 D.9
【参考答案】A
46.以下程序中函数sort的功能是对a数组中的数据进行由大到小的排序
void sort(int a[ ],int n)
{ int i,j,t;
for(i=0;i for(j=i+1;j if(a[i] } 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[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.1,2,3,8,7,6,5,4,9,10, D.1,2,10,9,8,7,6,5,4,3, 【参考答案】C 47.若执行下述程序时,若从键盘输入6和8时,结果为( ) main() { int a,b,s; scanf(″%d%d″,&a,&b); s=a if(a s=b; s*=s; printf(″%d″,s); } A.36 B.64 C.48 D.以上都不对 【参考答案】B 48.有以下程序 void ss(char *s,char t) { while( *s) { if(*s==t)*s=t-′a′+′A′ s++; } } main() { char strl[100]=″abcddfefdbd″,c=′d′; ss(strl,c);printf(″%s\n″,strl); } 程序运行后的输出结果是( ) A.ABCDDEFEDBD B.abcDDfefDbD C.abcAAfefAbA D.Abcddfefdbd 【参考答案】B A.void,define,WORD B.a3_b3,_123,IF C.FOR,--abc,Case D.2a,Do,Sizeof 【参考答案】B 50.下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除,在划线处应填入的选项是( ) #include main() { int i=0,j,k; do{i++;k=316-13*i;}while(______); j=k/11; printf(″316=13*%d+11*%d″,i,j); } A.k/11 B.k C.k/11==0 D.k==0 【参考答案】B 二.填空题 1.用树结构表示实体类型及实体间联系的数据模型称为____【1】____。 【参考答案】 【1】层次模型 2.数据流图的类型有____【2】____和事务型。 【参考答案】 【2】 变换型 3.冒泡排序算法在最好的情况下的元素交换次数为____【3】____。 【参考答案】 【3】 0 4.若串s="MathTypes",则其子串的数目是____【4】____。 【参考答案】 【4】 46 5.关系数据库的关系演算语言是以____【5】____为基础的DML语言。 【参考答案】 【5】 谓词演算 main () {float x,amax,amin; scanf(″%f″,&x); amax=x; amin=x; while(____【6】____) {if(x>amax) amax=x; else if____【7】____ amin=x; else scanf(″%f″,&x); } printf(″\n amax=%f\n amin=%f\n″,amax,amin); } 【参考答案】 【6】 x>0 【7】 x 7.下列程序的功能是输入一个整数,判断是否是素数,若为素数输出1,否则输出0,请填空。 main() { int i,x,y=1; scanf(″%d″,&x); for(i=2;i<=x/2;i++) if____【8】____{y=0;break;} printf(″%d\n″,y); } 【参考答案】 【8】 (x%i==0) 8.以下程序可把输入的十进制数以十六进制数的形式输出,请填空。 main()www.Examw.CoM { char b[17]={″0123456789ABCDEF″}; int c[64],d,i=0,base=16; long n; printf(″Enter a number:\n″);scanf(″″,&n); do{c[i]=____【9】____;i++;n=n/base;} while(n!=0); printf(″Transmite new base:\n″); for(--i;i>=0;--i) {d=c[i];printf(″%c″,b____【10】____);} printf(″\n″); } 【参考答案】 【9】 n% base 【10】 [d]
49.请选出可用作C语言用户标识符的是( )
6.以下程序的功能是从键盘输入若干学生的成绩,并输出最高成绩和最低成绩,当输入负数时结束。请填空。