C语言程序设计模拟题
- 格式:doc
- 大小:191.00 KB
- 文档页数:20
《C语言程序设计》模拟题1一、选择题:1.一个C语言的源程序中__A____。
A)必须有一个主函数 B)可以有多个主函数C)必须有主函数和其他函数 D)可以没有主函数2.执行以下语句的结果为__C_ __。
y=10; x=y++;A)x=10, y=10 B)x=11, y=11C)x=10, y=11 D)x=11, y=103.执行以下程序段后,c3的值是__A____。
int c1=1,c2=2,c3;c3=c1/c2;A) 0 B) 1/2 C) 0.5 D) 14.C语言中字符型(char)数据在内存中的形式存储是__D ___。
A) 原码 B) 补码 C)反码 D) ASCII码5.下列常数中不能作为C的常量的是__ D____。
A) 0xA5 B) 2.5e-2 C) 3e2 D) 2e32.66.C语言中整数-8在内存中的存储形式是__B ____。
A) 1111 1111 1111 1000 B) 1000 0000 0000 1000C) 0000 0000 0000 1000 D) 1111 1111 1111 01117.已知 int i,a;执行语句"i=(a=2*3,a*5),a+6;"后,变量i的值是_B ____。
A)6 B)12 C)30 D)368.已知函数abc的定义为:void abc ( ){ ....... }则函数定义中void的含义是_ A___。
A)执行函数abc后,函数没有返回值B)执行函数abc后,函数不再返回C)执行函数abc后,可以返回任意类型D)以上三个答案全是错误的9.以下程序的输出结果是_C ___。
main(){ int i,x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++) printf("%d,",x[i][2-i]);}A) 1,5,9, B) 1,4,7, C) 3,5,7, D) 3,6,9, 10.已知:double *p[6];它的含义是__C __。
C语言程序设计模拟题一、选择题1.设x和y均为int型变量,则以下语句:x+=y;y=x-y;x-=y;的功能是()A、把x和y按从大到小排列B、把x和y按从小到大排列C、无确定结果D、交换x和y中的值2.若有以下程序段:int c1=1,c2=2,c3;c3=1.0/c2*c1;则执行后,c3中的值是()A、0 B、0.5 C、1 D、23.有以下程序#include<stdio.h>main(){char *s="ABC";do{printf("%d",*s%10);s++;}while(*s);}注意,字母A的ASCII码值为65。
程序运行后的输出结果是()A.5670 B.656667 C.567 D.ABC 4.有以下程序#include <stdio.h>main(){int i=5;do{if(i%3==1)if(i%5==2){printf("*%d",i);break;}i++;} while(i!=0);printf("\n");}程序的运行结果是()A.*7 B.*3*5 C.*5 D.*2*65.设i和x都是int类型,则for循环语句()。
for(i=0,x=0;i<=9&&x!=876;i++) scanf("%d",&x);A. 最多执行10次B. 最多执行9次C. 是无限循环D. 循环体一次也不执行6.下述for循环语句()。
int i,k;for(i=0,k=-1;k=1;i++,k++) printf("* * * *");A. 判断循环结束的条件非法B. 是无限循环C. 只循环一次D. 一次也不循环7. 引用共用体变量中的字符型变量,以下正确的是()A. a.chB. a.f C b.ch.8.以下共用体定义错误的是()A. B Cunion union data union data{ int i; {int i; {int i;char ch; char ch; char ch;float f; float f; float f;}a,b,c; } }union data a,b,c9.若指针p已正确定义,要使p指向两个连续的整型动态存储单元,不正确的语句是()。
《C语言程序设计》模拟试卷一一、单项选择题(每题2分,共30分)1、下列有关C语言的叙述中错误的是(D)。
A) C语句必须以分号结束B) 任何一个C程序中有且只有一个主函数C) 复合语句在语法上可被看作一条语句D) C程序中对数据的任何操作都可由运算符实现2、以下不能定义为用户标识符的是(C)。
A) MAIN B) _HJ C) 2ong D) LINE13、下列符号中用来表示C语言中的回车换行的是(B)。
A) \r B) \n C) \b D) \t4、如有如下定义:int a=1,则语句printf(“%d,%d”, a, ++a);的运行结果为(B)。
A) 1, 1 B) 1, 2 C) 2, 2 D) 2, 15、已知ch为字符型变量,下面表达式中正确的是(A)。
A) ch=’\xff ’B) ch=’\ff ’C) ch=’ ff ’D) ch=” ff ”6、以下能正确定义一维数组的是(C)。
A) int a[5]={0,1,2,3,4,5}; B) int a[5]=”012345”;C) char a[ ]=”012345”; D) char a[5]={0,1,2,3,4,5};7、以下语句中能正确定义变量并赋初值的是(A)。
A) char c=65; B) float f=f+1.1;C) double x=12.3e3.6; D) int m=n=2.0;8、在执行下列程序时输入:1357924,则程序的运行结果为(D)。
main( ){ int x, y;scanf(“%2d%2d”,&x,&y);printf(“%2d”,x*y); }A) 13 B) 1357 C) 74 D) 7419、执行下列程序段后输出的结果是(C)。
x = 9;while (x > 7){ printf(“*”); x- -; }A) **** B) *** C) ** D) *10、设char str1[10] = “ABCDE”, str2[10] = “xyz”;则执行语句printf(“%d”, strlen(strcpy(str1, str2))); 后的输出结果是(D)A) 9 B) 8 C) 5 D) 311、若用数组名作为函数调用的实参,则传递给形参的是(A)A) 数组的首地址 B) 数组第一个元素的值C) 数组中全部元素的值 D) 数组元素的个数12、在C程序中,若未在函数定义时说明函数类型,则函数默认的类型为( A )A)void B)double C)int D)char13、下面不能正确进行字符串赋值操作的语句是(A)A) char s[5]={"ABCD"}; B) char s[5]; s="ABCD";C) char *s;s="ABCDEF"; D) char *s="ABCD";14、设有说明int s[5]={1,3,5,7,9}; int *p=s; 则下列表达式中值为3的是 (B )A)++p B)++(*p) C) *(++p) D) *(p+=2)15、下面程序的输出结果是(B)int m=13;{ int m=3;return( x*y-m); }main( ){ int a=7,b=5;printf(“%d\n”, fun(a,b)/m); }A) 1 B) 2 C) 3 D) 10二、判断(每空1分,共10分)1、C语言有三种结构化程序设计方法,分别为顺序结构、选择结构和循环结构。
一、填空题(本题每空1分,共计15分)1.设int a = 2,b = 3;float x = 3.5,y =2.5;表达式(float)(a+b)/2+(int)x%(int)y的值为3.5 。
2.结构化程序设计的三种基本结构是顺序结构,选择结构,循环结构。
3.设a = 3 , b = 2 , c = 1 , 则!(a+b)+c-6&&c+b%2的值为 1 。
4.int a = 6 ; 若a *= 2+3,则a = 30 ;又若a /= a+a,则a = 0 ;又若a+=a-= a*=a,则a = 0 ;5.int a = 2 ,b ,c ; b = ++a ; c = (a++)+(b++) ; 则c = 6 ,a = 4 ,b = 46、判断char型变量ch是否为大写字母的正确表达式是:ch>=’A’&&ch<=’z’7、若a=1;b= 2;c=2; if(a<b<c) {t= a;a=b; b=t; c--;}则a= 2 ,b= 1 ,c= 1 ,二、选择题(本题有15个小题,每小题2分,共计30分,每题只有一个正确答案)1、C程序的执行是从(A)A)本程序的main函数开始,到main函数结束B)本程序文件的第-个函数开始,到本程序文件的最后-个函数结束C)本程序的main函数开始,到本程序文件的最后-个函数结束D)本程序文件的第-个函数开始,到本程序main函数结束2、若有说明:char *language[]={"FORTRAN","BASIC","PASCAL", "JA V A","C"};则以下不正确的叙述是(D)。
A)language+2表示字符串"PASCAL"的首地址B)*language[2」的值是字母PC)language是一个字符型指针数组,它包含5个元素,D)每个元素都是一个指向字符串变量的指针3、假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值为(B):A)7 B)8 C)6 D)24、下面四个选项中,均是不合法的用户标识符的选项是(C)A) A P_0 doB)float a0 _AC)b-a goto intD)-123 temp INT5、sizeof(float)是(B):A)一个双精度型表达式B) 一个整型表达式C) 一种函数调用D) 一个不合法的表达式6、设有说明:char w; int x; f1oat y; double z;则表达式w* x+z-y值的数据类型为(D):A)float B)char C)int D)double7、阅读下程序,若运行结果为如下形式,输入输出语句的正确内容是(B): main(){int x; float y; printf("enter x,y:")输入语句输出语句}输入形式enter x,y: 2 3.4输出形式x+y=5.40A)scanf("%d,%f",&x,&y);printf("\nx+y= %4.2f",x+y);B)scanf("%d%f",&x,&y );printf("\nx+y=%4.2f",x+y);C)scanf("%d%f",&x,&y); printf("\nx+y=%6.lf",x+y);D)scanf("%d%3.1f",&x,&y );printf("\nx+y=%4.2f",x+y);8、根据下面的走义,能打印出字母M的语句是(D)struct person{char name[9];int age;}struct person class[10]={"John",17,"Paul",19,"Mary",18,"adam",16 };A)printf("%c\n",class[3].name);B)printf("%c\n",class[3].name[1]);C)printf("%c\n",class[2].name[1]);D)printf("%c\n",class[2].name[0]);9、若有以下定义和语句:struct student{int age;int num;};struct student stu[3]={{1001,20},{1002,19},{1003,21}};main(){struct student *p;p=stu;...}则以下不正确的引用是(D)。
C语言程序设计模拟题1.由C语言编写的代码程序()。
A.可直接执行B.是一个源程序C.经过编译即可执行D.经过编译解释才能执行【答案】B。
解析:C语言编写的代码程序是一个源程序,C语言编写的代码程序需要经过编译、连接、解释才能执行。
2.按照C语言规定的用户标识符命名规则,不能出现在标识符中的是()。
A.大写字母B.中划线C.数字字符D.下划线【答案】B。
解析:C语言的自定义标识符只能有字母、数字、下划线。
3.下列选项中,不能用作标识符的是()。
A._1234_B._1_2C.int_2_D.2_int_【答案】D。
解析:标识符只能以字母或下划线开头。
4.以下选项中合法的用户标识符是()。
A.longB._2TestC.3DmaxD.A.dat【答案】B。
解析:A为关键字,C开头只能是字母或下划线,D标识符中只能有字母、数字、下划线。
5.以下不能定义为用户标识符的是()。
A.MainB._0C._intD.sizeof【答案】D。
解析:sizeof为关键字,不能用作用户标识符。
6.下列定义变量的语句错误的是()。
A.int _int;B.double int_;C.char For;D.float US$;【答案】D。
解析:标识符只能有字母、数字、下划线。
7.在C语言中,合法的实型常数是()。
A.5E2.0B.E-3C.2E0D.1.3E【答案】C。
解析:实型常量e的前面要有数,e的后面为整数。
8.在C语言中,合法的实型常数是()。
A.1.2E0.5B.3.14159EC.5E-3D.E15【答案】C。
解析:实型常量e的前面要有数,e的后面为整数。
9.以下选项中,不能作为合法常量的是()。
A.1.234e04B.1.234e0.4C.1.234e+4D.1.234e0【答案】B。
解析:实型常量e的前面要有数,e的后面为整数。
10.以下不合法的数值常量是()。
A.011B.1e1C.8.0E0.5D.0xab【答案】C。
C语言程序设计模拟考试试卷及答案(一)一、单项选择题1.一个C程序的执行是从( )。
A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序的main函数开始,到本程序文件的最后一个函数结束D) 本程序文件的第一个函数开始,到本程序main函数结束2.下列选项中,不能用作标识符的是( )。
A) _1234_ B) _1_2 C) int_2_ D) 2_int_3.以下定义语句中正确的是( )。
A) char a='A'b='B'; B) float a=b=10.0;C) int a=10,*b=&a; D) float *a,b=&a;4.设有以下定义:#define d 2int a=0; double b=1.25; char c=’A’;则下面语句中错误的是( )。
A) a++; B) b++ C) c++; D) d++;5.以下4个选项中,不能作为一条C语句的是( )。
A) {;} B) a=0,b=0,c=0;C) if(a>0); D) if(b==0) m=1;n=2;6.有以下定义语句 double a,b; int w; long c;若各变量已正确赋值,则下列选项中正确的表达式是( )。
A) a=a+b=b++ B) w%(int)a+b)C) (c+w)%(int)a D) w=a==b;7.设有定义:int n=0,*p=&n,**q=&p;则以下选项中,正确的赋值语句是( )。
A) p=1; B) *q=2; C) q=p; D) *p=5;8.设有定义:int a,*pa=&a; 以下scanf语句中能正确为变量a读入数据的是( )。
A) scanf(“%d”,pa) ; B) scanf(“%d”,a) ;C) scanf(“%d”,&pa) ; D) scanf(“%d”,*pa);9.若有说明:char*language[]={”FORTRAN”,”BASIC”,”PASCAL”,”JAVA”,”C ”};则表达式*language[1]>*language[2]比较的是()。
《C语言程序设计》模拟试卷一一、单项选择题(每题2分,共30分)1、下列有关C语言的叙述中错误的是(D)。
A) C语句必须以分号结束B) 任何一个C程序中有且只有一个主函数C) 复合语句在语法上可被看作一条语句D) C程序中对数据的任何操作都可由运算符实现2、以下不能定义为用户标识符的是(C)。
A) MAIN B) _HJ C)2ong D) LINE13、下列符号中用来表示C语言中的回车换行的是(B)。
A) \r B) \n C)\b D) \t4、如有如下定义:int a=1,则语句printf(“%d,%d”, a, ++a);的运行结果为(B)。
A) 1, 1 B) 1, 2 C) 2, 2 D)2, 15、已知ch为字符型变量,下面表达式中正确的是(A)。
A) ch=’\xff ’B) ch=’\ff ’C) ch=’ ff ’D) ch=” ff ”6、以下能正确定义一维数组的是(C)。
A) int a[5]={0,1,2,3,4,5}; B) int a[5]=”012345”;C) char a[ ]=”012345”;D) char a[5]={0,1,2,3,4,5};7、以下语句中能正确定义变量并赋初值的是(A)。
A) char c=65; B) float f=f+1.1;C) double x=12.3e3.6; D) int m=n=2.0;8、在执行下列程序时输入:1357924,则程序的运行结果为(D)。
main( ){ int x, y;scanf(“%2d%2d”,&x,&y);printf(“%2d”,x*y); }A) 13 B) 1357 C) 74 D) 7419、执行下列程序段后输出的结果是(C)。
x = 9;while (x > 7){ printf(“*”); x- -; }A) **** B) *** C) ** D) *10、设char str1[10] = “ABCDE”, str2[10] = “xyz”;则执行语句printf(“%d”, strlen(strcpy(str1, str2))); 后的输出结果是(D)A) 9 B) 8 C) 5 D) 311、若用数组名作为函数调用的实参,则传递给形参的是(A)A) 数组的首地址B) 数组第一个元素的值C) 数组中全部元素的值 D) 数组元素的个数12、在C程序中,若未在函数定义时说明函数类型,则函数默认的类型为( A ) A)void B)double C)int D)char13、下面不能正确进行字符串赋值操作的语句是(A)A) char s[5]={"ABCD"};B) char s[5]; s="ABCD";C) char *s;s="ABCDEF"; D) char *s="ABCD";14、设有说明int s[5]={1,3,5,7,9}; int *p=s; 则下列表达式中值为3的是(B )A)++p B)++(*p) C) *(++p) D) *(p+=2)15、下面程序的输出结果是(B)int m=13;int fun( int x, int y){ int m=3;return( x*y-m); }main( ){ int a=7,b=5;printf(“%d\n”, fun(a,b)/m); }A) 1 B) 2 C) 3 D) 10二、判断(每空1分,共10分)1、C语言有三种结构化程序设计方法,分别为顺序结构、选择结构和循环结构。
c语言程序设计模拟题c语言程序设计模拟题一、选择题(1)能够将高级语言程序转换成目标语言程序的就是__c____。
a)调试程序b)解释程序c)编译程序d)编辑程序(2)__a____是构成c语言程序的基本单位。
a)函数b)过程c)子程序d)子例程(3)可以在c语言中用作用户标识符的就是__b___。
a)voidb)as_b3c)ford)2cdefine_123-abcdowordifcassig(4)若有以下类型说明语句:charw;intx;floaty,z;则表达式w*x+z-y的结果为__d___类型。
a)floatb)charc)intd)double(5)main(){floatx=123.456;printf(\}以上程序输出的结果是___d___。
a)123.4b)123.5c)123.45d)123.46(6)下面语句的输入结果就是___c___。
printf(\a)14b)8c)5d)输入项不合法,并无正常输入(7)以下程序的输入结果就是__b____。
main(){inta=0,b=0,c=0;if(++a>0|++b>0)++c;printf(\}a)a=0,b=0,c=0b)a=1,b=1,c=1c)a=1,b=0,c=1d)a=0,b=1,c=1(8)以下程序的输入结果就是__b____。
main(){inti;for(i=1;i+1;i++){if(i>4){printf(\}printf(\}a)55b)56c)程序错误,没有输出d)循环条件永远为真,死循环(9)下列程序的输出结果是___a___。
#definea100main(){inti=0,sum=0;do{if(i==(i/2)*2)continue;sum+=i;}while(++iprintf(\}a)2500b)2050c)4d)0(10)下列程序的输出结果是__d____。
main(){inti=3;switch(i){case1:case2:printf(\case3:case4:break;default:printf(\}}a)0b)3c)okd)没任何输入(11)以下程序执行后的输入结果就是__c____。
C语言程序设计课程模拟试卷一、单项选择题.把合适的选项编号填写在括号内.(每小题3分,共42分)1.在C语言中,每条复合语句的结束标记字符为( )。
A.] B.) C.> D.}2. 在C语言程序中,单行或行尾注释语句使用的标记符为()。
A。
*/ B. /* C. // D. **3。
C语言源程序文件的扩展名为().A。
cpp B. exe C。
obj D。
c4。
控制字符'\n’表示( )。
A. 回车B. 响铃 C。
换行 D。
换页5。
运算符优先级最高的是()。
A。
== B。
+ C. && D。
||6. x<=10的相反表达式为()。
A。
x〉=10 B. x>10C。
x!=10 D. x>07. 每次先进行循环条件的判断,然后再执行循环体的语句为( ).A. for和do B。
for和whileC. while和do D。
switch和break8。
假定对二维数组a[3][4]进行初始化的数据为{{3,5,6},{2,8},{7}},则a[1][1]被初始化为( )。
A。
6 B。
2 C. 8 D. 79。
对于一个二维字符数组a[M][N],存储每个字符串的长度至多为()。
A. MB. NC. M-1D. N-110. 假定p所指对象的值为25,p+1所指对象的值为42,则表达式*p++的值为( )。
A. 25B. 42C. 26 D。
4311。
已知“int a[6][5];”,则元素a[2][4]的地址比该数组的首地址大()。
A. 14个字节 B。
56个字节 C。
28个字节 D. 96个字节12. 在C语言中,用户定义的标识符分为4种作用域,下列选项中不属于这4种作用域的是( )。
A. 全局 B。
语句 C. 文件 D。
局部13. 在一个链表中,每个结点必然存在着一个指向自身结点类型的指针域,用来保存下一个结点的()。
A. 地址B. 值C. 名称D. 类型14. 在C语言中,为只写操作打开一个文本文件的方式为()。
《C 语言程序设计》模拟试卷3考试班级:一、判断题(2’×10=20’)1、C 语言源程序文件的扩展名均为.c 。
( )2、所谓常量,就是在程序运行过程中其值可以改变的量。
( )3、一个C 语言程序总是从main 函数开始执行。
( )4、若int i=10,j=2;则执行i*=j+8;后i 的值为28。
( )5、在C 语言中do-while 至少执行1次。
( )6、算术运算符中‘%’的优先级高于‘*’。
( )7、int a[10];该语句表明数组a 中的第十个元素为a[10]。
( ) 8、函数putchar()的作用是:输入一个字符。
( )9、C 语言程序区分大小写。
( )10、在函数调用中将数组名字作为实参时,实现的是单向的值传递。
() 二、单项选择题(2’×15=30’)1、以下定义字符常量PI 语句正确的为( )。
A 、define PI 3.14B 、define PI= 3.14C 、#define PI=3.14D 、#define PI 3.142、在C 语言中,要求运算量必须是整型的运算符是( )。
A 、!B 、++C 、!=D 、%3、下列四个选项中,均是不合法的用户标识符是( )。
A 、A P_0 doB 、float lao _AC 、b-a if intD 、_123 temp INT4、C 语言的三种基本结构是( )。
A 、顺序结构、逻辑结构、选择结构B 、顺序结构、选择结构、循环结构C 、逻辑结构、层次结构、网状结构D 、层次结构、顺序结构、循环结构 系部:班级:学号:姓名:5、下列有关函数的叙述中,不正确的是()。
A、函数可以有返回值,也可以有参数B、函数可以没有返回值,也可以有参数C、函数可以没有返回值,也可以没有参数D、函数必须有返回值,也必须有参数6、设变量a是int型,f是float型,i是double型,则表达式10+′a′+i*f值的数据类型为()。
《C语言程序设计》模拟题(补)一、简答题1、简述C语言程序的结构。
二、选择题1、下面程序段的输出结果是【1】。
int a=60;a+=a-=a+a;printf(“%d\n”,a);A) 120 B) 60C) -120 D) -602、下面正确的字符常量是【2】。
A) ‘c’B) ‘//’’C) “w”D) ‘’3、以下不能用作标识符的是【3】。
A) _26 B) ScanfC) case D) Double4、下面程序段中循环体执行的次数是【4】。
int a=10, b=0;do {b+=2; a-=2+b; } while(a>=0);A) 1B) 2C) 3D) 45、以下关于函数的叙述正确的是【5】。
A) 函数中必须要有return语句B) 函数中可以有多个return语句,但只有一个被执行C) return语句中必须有一个表达式D) 函数中定义的变量不能与其它函数中的变量同名6、满足x为奇数时值为真,x为偶数时值为假的表达式是【6】。
A) !(x%2==1) B) x%2==0C) x%2 D) !(x%2)7、以下语句中无法正确赋值的是【7】。
A) char b[10]={‘H’, ‘e’, ‘l’, ‘l’, ‘o’, ‘!’};B) char b[10]; b=“Hello!”;C) char b[10]; strcpy(b, “Hello!”);D) char b[10]= “Hello!”;8、若有以下的定义和语句,则值为5的表达式是【8】。
int a[]={1,2,3,4,5,6,7,8,9,10};A) a[5] B) a[a[4]]C) a[a[3]] D) a[a[5]]9、若有定义:int k=7;float a=2.5,b=4.7;则表达式a+k%3*(int)(a+b)%2/4的值是【9】。
A) 2.B) 2.C) 3.D) 0.10、已知ch是字符型变量,下面正确的赋值语句是【10】。
A) ch=”\”B) ch=’123’C) ch=’\xff’D) ch=’\08’11、下面程序的运行结果是:【11】。
void main(){char c=’a’;if(‘0’<=c<=’9’) printf(“YES”);else printf(“NO”);}A) 语句有错误B) NOC) YESNO中国地质大学(北京)继续教育学院 2015年05课程考试D) YES12、已知:int a=4,b=5,c; 则执行表达式c=a=a>b后,变量a的值为【12】。
A) 0 B) 1C) 4 D) 513、以下程序的运行结果是【13】。
#include <stdio.h>void main(){ int x1=3,x2=1,x3=1;if(x1=x2+x3) printf(“****”);else printf(“####”);}A) 存在语法错误B) 无输出结果C) 输出**** D) 输出####14、下面程序段的输出结果是【14】。
#include <stdio.h>char p1[10]= “abc”, p2[]=“ABC”, str[50]= “xyz”;strcpy(str+2, strcat(p1,p2));printf(“%s\n”,str);A) xyabcABC B) zabcABCC) yzabcABC D) xyzabcABC15、设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)后n的值为【15】。
A) 1 B) 2C) 3 D) 016、若已定义x和y为double类型,则表达式:x=1, y=x+3/2的值是【16】。
A) 1 B) 2C) 2.0 D) 2.517、以下程序段的输出结果为【17】。
int x=1,y=2;void fun1()第3页(共20页){ x=3; y=4; }void fun2(int x,int y){ printf(“%d,%d\n”,x,y); }void main(){ fun1(); printf(“%d,%d,”,x,y);fun2(5,6);}A) 3,4,5,6 B) 1,2,5,6C) 1,2,3,4 D) 3,4,1,218、下面程序执行时,while的循环次数是【18】。
int i=0;while(i<10){if(i<1) continue;if(i==5) break;i++;}A) 1B) 10C) 6D) 死循环,不能确定次数19、对一维数组a的说明语句中正确的是【19】。
A) int a(10) B) int n=10;a[n];C) #define SIZE 10int a[SIZE]; D) int n;scanf(“%d”,&n);int a[n];20、若调用一个函数,且此函数中没有return语句,则该函数【20】。
A) 没有返回值B) 返回若干个系统默认值C) 能返回一个用户所希望的函数值D) 返回一个不确定的值21、下列运算符中优先级最高的是【21】。
中国地质大学(北京)继续教育学院 2015年05课程考试 A)! B)% C)-= D)&&22、若int j=10;执行下列程序后,变量j的正确结果是【22】。
switch(j) {case 9: j+=1;case 10: j+=1;case 11: j+=1;default: j+=1;}A) 10 B) 11C) 12 D) 1323、下列程序的运行结果是【23】。
int ii,x[3][3]={1,2,3,4,5,6,7,8,9};for(ii=0;ii<3,ii++)printf(“%d”,x[ii][2-ii]);A)1,5,9 B) 1,4,7C) 3,5,7 D)3,6,924、在定义int a[10];之后,对a的引用正确的是【24】。
A) a[10] B) a[6,3]C) a(6) D) a[10-10]25、在定义了a[2][3]之后,对a的引用正确的是【25】。
A)a(1,2) B) a[1,3]C) a[1>2][!1] D) a[2][0]26、设有程序段int k=10;while (k=0) k=k-1;则下面描述中正确的是:【26】A)while循环执行10次B)循环是无限循环C)循环体语句一次也不执行D)循环体语句执行一次27、判断两个字符串s1和s2相等的正确语句是【27】。
第5页(共20页)A) if(s1=s2) B) if(s1==s2)C) if(strcpy(s1,s2)) D) if(strcmp(s1,s2)==0)28、以下正确的字符常量的定义为【】。
A、’c’B、“c j”C、’abc’D、’’29、若x、y都是int型变量,且x=100,y=200,则printf(“%d”,(x,y));的输出结果是【】。
A) 200 B) 100C) 100 200 D) 不确定30、运行以下程序,如果从键盘输入ABCDE<回车>,则输出结果是【】。
#include <stdio.h>int funch (char str[]){int num=0;while( str[num]!= ‘\0’) num++;return (num);}void main( ){ char str[10];gets(str);printf(“%d\n”,funch(str));}A) 7 B) 6C) 5 D) 431、为表示关系x>=y>=z,下面C语言表达式中正确的是【】。
A) (x>=y)&&(y>=z) B) (x>=y)and(y>=z)C) (x>=y>=z) D) (x>=y)&(y>=z)32、下面程序段的输出结果是【】。
int x=2,y=0,z;x*=3+2; printf(“%d ”,x);x*=y=z=4; printf(“%d”,x);中国地质大学(北京)继续教育学院 2015年05课程考试第7页(共20页)A) 8 40 B) 10 40 C) 10 4D) 8 433、下列程序段的输出结果为【】。
int a=9; a+=a-=a+a;printf(“%d \n”,a); A) 18 B) 9 C) -18D) -934、设有整型变量a 的值为5,使整型变量b 的值不为2的表达式【】。
A) b=a/5 B) b=6-(--a)C) b=a%2D) b=(a-a--,a/2)35、语句printf(“a \bre\’hi \’y \\\bou\n”)的输出结果为【】。
A) a\bre\’hi \’y \\\bou B) a\bre\’hi \’y \bou C) re’hi’youD) abre’hi’y \bou36、设a,b,c,d 均是int 型变量,为了使以下程序输出为:1234+123+12+1,正确的输入形式应当为【】。
scanf(“%4d+%3d+%2d+%1d”,&a,&b,&c,&d); printf(“%4d+%3d+%2d+%1d”,a,b,c,d); A) <回车>B) 41234<回车> C) 1234+1234+1234+1234<回车> D) 1234+123+12+1<回车>37、以下程序的输出结果是【】。
void main() { int a=1,b=1; switch (a+b ){ case 2 : printf("*\n"); case 3 : printf("**\n"); } }A) ***B) **C) * D) * **38、分析以下程序,以下程序【】。
void main(){ int x=5,a=0,b=0;if(x=a+b) printf(“****\n”);else printf(“####\n”); }A) 有语法错,不能通过编译B) 通过编译,但不能连接C) 输出**** D) 输出####39、假定所有变量均已正确说明,下列程序段运行后x的值是【】。
a=b=c=0;x=35;if(! a) x=-1;else if(b);if(c) x=3;else x=4;A) -1 B) 4C) 35 D) 340、下面程序运行的结果是【】。
#include <stdio.h>void main(){ int i,j,x=0;for(i=0;i<2;i++){ x++;f or(j=0;j<=3;j++){ if(j%2) continue;x++; }x++;}printf(“x=%d\n”,x);}A) x=4 B) x=8中国地质大学(北京)继续教育学院 2015年05课程考试C) x=6 D) x=1241、下面程序的运行结果是【】。