2016C语言模拟题
- 格式:doc
- 大小:46.50 KB
- 文档页数:6
C语言模拟考试试题填空题(模拟)1. 在c语言中,每个语句和数据定义的最后必须有一个_____,以标志该语句的结束。
答案:;或者 ; 或者分号4. 在c语言中,常量分为整型常量(如:12)、实型常量(如:3.2)、和______常量(如:'a')。
答案:字符或者字符型5. 变量名只能由英文字母、数字和____组成。
答案:下划线或者 _6. 变量名的第一个字符必须是____或下划线。
答案:字母或者英文字符或者英文字母 1 18. 十进制的15等于八进制的____。
答案: 17 或者 01711. 字符变量占用____个字节。
答案: 1 或者一或者 1个或者一个12. 正确存储字符串"a"至少需要____个字节。
答案: 2 或者两或者 2个或者两个13. 变量a为int型,b为float型,c为char型,则a+b+c为____型。
(请填写英文)答案: float 或者 double 或者 float型或者 double型14. 变量分为局部和全局变量,在主函数内部定义的变量属于____变量。
答案:局部15. 在同一个源文件中如果局部变量和全局变量同名,则在局部变量的作用范围内,____变量不起作用。
答案:全局16. 从变量存在的时间(生存期)来分,可以分为静态存储变量和动态存储变量,没有用static限定的局部变量属于____存储变量。
答案:动态或者 auto17. 从变量存在的时间(生存期)来分,可以分为静态存储变量和动态存储变量,全局变量属于____存储变量。
答案:静态或者 static23. 设变量a为整型,执行语句:a=(a=2,a+2); 之后a值为____。
答案: 428. 若有:int a=1,b=2,c=3;则表达式 !a&&(b||c) 的值为____。
答案: 029. 在C语言中,有一个两目运算符,它的两侧要求运算数都必须是整型,这个运算符是____。
模拟题一一、选择题1•下列说法正确的是()。
A)nwin函数必须放在C程序的开头B)main函数必须放在C程序的最后C)nzm函数可以放在C程序的中间部分,但在执行C程序时是从程序开头执行的D)main函数可以放在C程序的中间部分,但在执行C程序时是从main函数开始的2.C语言中不能用来表示整常数的进制是()<>A)十进制B)十六进制C)八进制D)二进制3•在下而几组数据类型中,全为最常用的基本数拯类型的是哪一组:()。
A)整型实型字符型B)整型数组指针C)数组结构体共用体D)指针逻辑型空类型4.C语言规定标识符由()等字符组成。
A)字母数字下划线B)中划线字母数字C)字母数字逗号D)字母下划线中划线5.若有说明语句:char ci6T;则变量C包含(九A)1个字符B) 2个字符C) 3个字符D)说明不合法,C值不确泄6.若有如下定义:int a=2,b=3; float x=3.5,y=2.5;则表达式:(float)(a+b)/2+(iiit)x%(int)y 的值是()。
A) 2.500000 B) 3.500000 C) 4.500000 D) 5.0000007•设有如下泄义和执行语句,其输岀结果为()。
mt a=3,b=3;a = —b + 1; printf(fcfc%d %d'\a.b);A) 3 2 B) 4 2 0 2 2 D) 2 38•以下表达式:2+hTf,其中i为整型变量,f为float型变量,则表达式的最终数据类型为()oA)iiit B) float C) char D) double9.C语言中,运算对象必须是整型数的运算符是()。
A) % B) \ C) % 和 \ D) **10.有如下语句:pnntf(%%5.3syCOMPUTER'TCOMPUTER");执行语句后的最终结果为(A) COMPUTER .CMP . B) COMPUTER. CMP.C) COMPU, CMP. D) COMPU,CMP11•能正确表示X的取值范用在[0, 100]和[-10, -5]内的表达式是()。
1.按照计算机应用领域分类,学校使用的成绩管理系统属于_______.A. 实时控制B。
计算机辅助设计C。
数据处理D. 科学计算参考答案:C2。
下面关于计算机系统的叙述中,完整的计算机系统通常是指______。
A. 计算机的硬件系统B。
计算机上配置的操作系统C。
计算机的软件系统D. 由硬件系统和软件系统组成参考答案:D3.微型计算机的微处理芯片上集成的主要组件包括______。
A。
控制器和运算器B。
内存和控制器C. 控制器和存储器D。
运算器和I/O接口参考答案:A4.Windows的对话框窗口不可以______.A。
关闭B。
移动C. 任意改变大小D. 最小化参考答案:C5。
某用户在域名为mail。
edu。
cn的邮件服务器上申请了一个账号,账号名为xing,那么该用户的电子邮件地址为______。
A. mail。
edu。
cn@xingB. 。
cn%xingC。
xing%D。
xing@mail。
edu。
cn参考答案:D6。
下列对C语言程序的描述中,正确的是_______。
A. C语言程序总是从第一个定义的函数开始执行B. C语言程序总是从最后一个定义的函数开始执行C. C语言程序总是从main()函数开始执行D。
C语言程序中的main()函数必须放在程序的开始部分参考答案:C7.设有char ch=’\\';,则变量ch包含______个字符。
A. 1B。
2C。
3D。
4参考答案:A8。
以下选项中合法的字符常量是____________.A. '\101'B。
'\97'C. '\xyz'D. '\019'参考答案:A9.下面用户标识符中合法的是____________.A。
iPhone#B. 13aC。
charD. _int参考答案:D10。
已知int c1=5,c2=2,c3;,则执行c3=c1/c2后,c3的值是_______。
2016秋国家开放大学《C语言程序设计》模拟试卷1答案在后面一、单选题(每小题2分,共20分)1. C语言源程序文件的缺省扩展名为( )。
A. cppB. exeC. objD. c2.设x和y均为逻辑值,则x && y为真的条件是x和y( )。
A. 均为真B. 其中一个为真C. 均为假D. 其中一个为假3. 在下列的符号常量定义中,正确的定义格式为()。
A. #define M1B. const int M2 20C. #define M3 10D. const char mark4. for循环语句能够被改写为()语句。
A. 复合B. ifC. switchD. while5. 在下面的一维数组定义中,错误的定义格式为()。
A. int a[]={1,2,3};B. int a[10]={0};C. int a[];D. int a[5];6.在下面的函数原型声明中,存在语法错误的是()。
A. int AA(int a, int b);B. int AA(int, int);C. int AA(int a; int b;);D. int AA(int a, int);7. 假定a为一个数组名,则下面存在错误的表达式为()。
A. a[i]B. *a++C. *aD. *(a+1)8. 假定有定义为“int a[10], x,*pa=a;”,若要把数组a中下标为3的元素值赋给x,则不正确的赋值为()。
A. x=pa[3]B. x=*(a+3)C. x=a[3]D. x=*pa+39.字符串"y=%d\n"的长度为________。
A. 5B. 6C. 4D. 310. 向一个二进制文件中写入信息的函数为()。
A. fgets()B. fputs()C. fread()D. fwrite()二、填空题(每小题2分,共26分)1.执行“printf("%c",'A'+3);”语句后得到的输出结果为________。
2016年五年制大专专转本C程序设计模拟考试(一)(数据类型、顺序结构、选择结构、循环结构)一、选择题(1*20+2+30=80分)*1、结构化程序设计所规定的三种基本控制结构是______。
A、输入、处理、输出B、树形、网形、环形C、顺序、选择、循环D、主程序、子程序、函数*2、以下选项中合法的用户标识符是______。
A、longB、_2TestC、3DmaxD、A.dat*3、与数学式子3乘以x的n次方/(2x-1)对应的C语言表达式是______。
A、3*x^n/(2*x-1)B、3*x**n/(2*x-1)C、3*pow(x,n)*(1/(2*x-1))D、3*pow(n,x)/(2*x-1)*4、设有定义:long x=-123456L;,则以下能够正确输出变量x值的语句是______。
A、printf("x=%d\n",x); B、printf("x=%ld\n",x);C、printf("x=%8dL\n",x);D、printf("x=%LD\n",x);*5、已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1&&y+z/2的值是______。
A、6B、0C、2D、1*6、以下选项中,与k=n++完全等价的表达式是_______。
A、k=n,n=n+1B、n=n+1,k=nC、k=++nD、k+=n+1 *7、以下叙述中正确的是______。
A、构成C程序的基本单位是函数B、可以在一个函数中定义另一个函数C、main()函数必须放在其它函数之前D、所有被调用的函数一定要在调用之前进行定义*8、下列叙述中正确的是______。
A、C语言中既有逻辑类型也有集合类型B、C语言中没有逻辑类型但有集合类型C、C语言中有逻辑类型但没有集合类型D、C语言中既没有逻辑类型也没有集合类型*9、若有以下程序段(n所赋的是八进制数)。
C语言模拟题〔一〕一、选择题1、以下字符中不是转义字符的是〔A 〕。
A、'\c'B、'\b'C、'\\'D、'\a'2、设a=12,且a定义为整型变量。
执行语句a+=a-=a*=a;后a的值为〔A〕。
A、0B、144C、132D、123、已定义float x=1.25,y=3.37;根据下面的输出结果,正确的输出语句是(C ).y+x=4.62,y-x=2.12A、printf("y+x=%6.2f,y-x=%6.2f\n",y+x,y-x);B、printf("y+x=%f,y-x=%f\n",y+x,y-x);,lC、printf("y+x=%.2f,y-x=%.2f\n",y+x,y-x);D、printf("y+x=%5.2f,y=%5.2f\n",y+x,y-x);4 、执行下面程序段后,b的值为(A ).int s=35;char t='A';int b;b=((s&&4)&&(t<'a'));A、1B、3C、2D、05 k是整型,那么以下程序段的执行结果是:(B )k=-3;if(k<=0) printf("####")else printf("&&&&");A、####B、有语法错误,无结果C、&&&&D、####&&&&6 设j和k都是int类型,那么下面的for循环语句〔D〕。
for(j=0,k=0;j<=9&&k!=876;j++) scanf("%d",&k);A、最多执行9次B、是无限循环C、循环体一次也不执行D、最多执行10次7 以下正确的描述是(A ).A、只能在循环体内和switch语句内使用break语句B、continue语句的作用是终止整个循环的执行C、从多层嵌套的外层循环中退出时,只能使用goto语句D、在循环体内使用break和continue语句的作用一样8 以下能对一维数组a进展正确初始化的语句是〔B〕。
第八单元结构体和共用体一、选择题1、说明一个结构体变量时系统分配给它的内存是。
A. 各成员所需要内存量的总和B. 结构体中第一个成员所需内存量C. 成员中占内存量最大者所需的容量D. 结构中最后一个成员所需内存量2、 C 语言结构体类型变量在程序执行期间。
A. 所有成员一直驻留在内存中B. 只有一个成员驻留在内存中C. 部分成员驻留在在内存中D. 没有成员驻留在内存中3、设有以下说明语句struct stu { int a ; float b ; } stutype ;则下面的叙述不正确的是。
A. struct 是结构体类型的关键字B. struct stu 是用户定义的结构体类型C. stutype 是用户定义的结构体类型名D. a 和b 都是结构体成员名4、程序中有下面的说明和定义struct abc { int x;char y;}struct abc s1,s2;则会发生的情况是。
A. 编译出错B. 程序将顺利编译、连接、执行C. 能顺利通过编译、连接、但不能执行D. 能顺利通过编译、但连接出错5、有如下定义struct person { char name[9]; int age;};struct person class[10]={ " Johu", 17,"Paul", 19,"Mary", 18,"Adam",16};根据上述定义,能输出字母M 的语句是。
A. prinft(" %c\n",class[3].name);B. printf(" %c\n",class[3].name[1]);C. prinft(" %c\n",class[2].name[1]);D. printf(" %c\n",class[2].name[0]);6、下面程序的输出是。
1.一个可执行的C 语言程序由___函数________构成,一个C 语言源文件_________库函数______构成,一个函数由_______多个语句_________构成。
2.若有:int x;则表达式:x%2+(x+1)%2的值为_____1_____。
3.若a=1,b=2,c=3,则执行语句:if(a>c); b=a;a=c;c=b;后,a=_____1_____, b=_____2______,c=_______3_____。
4.以下函数按每行8个输出数组中的数据,将函数补充完整。
void fun ( int *w,int n ) { int i;for (i=0;i<n;i++) {____if(i%8)==0___________ printf (“%d ”,w[i]); } printf (“\n ”); }5.设有以下宏定义,则执行赋值语句 a=PP*20;(a 为int 型变量)后,a 的值是____483_____。
#define PR 80 #define PP PR+4036.请写出下面各printf 语句的执行结果。
①printf(“%s\n”,strcat(“China ”,”Boy ”));_____ChinaBoy__________② printf(“%d\n”,strlen(“CHINA ”)+strlen(“C ”)); __6_________ 7.若有以下说明、定义和语句,则对x.b 成员的另外两种引用方式是___p->x.b____和___(*p).x_______。
struct st { int a;struct st b; } *p,x; p=&x;8.在C 文件中,数据存在的两种代码形式是___ASCLII 码__________和_________二进制________。
1.若函数中有定义语句:int k ;,则 BA 系统将自动给k 赋初值0B 这时k 中无确定值C 系统将自动给k 赋初值-1D 这时k 中无任何值2.已知ch 是字符型变量,下面不正确的赋值语句是___C___。
计算机二级c语言题库2016年计算机二级c语言题库距2016年计算机二级考试时间越来越近了,为帮助大家尽快复习C语言考试,下面店铺整理了关于C语言的考试题库,希望对大家有所帮助!计算机二级C语言题库【一】1.若变量c为char类型,能正确判断出c为小写字母的表达式是()A)′a′<=c<=′z′B)(c>=′a′)||(c<=′z′)C)(′a′=C)D)(c>=′a′)&&(c<=′z′)2.下面程序的输出结果是()main(){ int x=2,y=0,z;x+=3+2;printf("%d",x);x*=y=z=4;printf("%d",x);}A)728 B)无法计算 C)7,4 D)8,43.有如下程序main(){int x=1,a=0,b=0;switch(x){case 0∶b++;case 1∶a++;case 2∶a++;b++;}printf("a=%d,b=%d\n",a,b);}程序运行后的输出结果是()A)a=2,b=1 B)a=1,b=1 C)a=1,b=0 D)a=2,b=24.以下选项中,正确的if-else语句是()A)if(x!=0)printf("%d",x)elseprintf("%d",-x);B)if(x!=0){x=x+y;printf("%d",x); }elseprintf("%d",-x);C)if(x!=0)x=x+y;printf("%d",x);elseprintf("%d",-x);D)if(x!=0){x=x+y;printf("%d",x)};elseprintf("%d",-x);5.有以下程序段int n=0,p;do {scanf("%d",&p);n++;}while(p!=12345 &&n<3); 此处do-while循环的结束条件是()A)p的值不等于12345并且n的值小于3B)p的值等于12345并且n的值大于等于3C)p的值不等于12345或者n的值小于3D)p的值等于12345或者n的值大于等于36.若有如下程序段:main(){ int n=0;while(printf("*")){ n++;if(n<3)break; }}则下列描述正确的是()A)其中循环控制表达式与0等价B)其中循环控制表达式与’0’等价C)其中循环控制表达式是不合法的D)以上说法都不对7.C语言中main函数参数的非法表示形式是()A)main(char *argv[],int argc)B)main(int a,char**b)C)main(int y,char *x[])D)main(int argv,char *argc[])8.设有如下枚举类型定义:enum language {Basic=3,Assembly,Ada=100,COBOL,Fortran};枚举类型Fortran的值为()A)4 B)7 C)102 D)1039.阅读下述程序段:y=-1;if (x!=0)if (x>0)y=1;elsey=0;该程序段所描述的数学关系是()A)y=-1(x<0)0(x=0)1(x>0)B)y=1(x<0)0(x=0)-1(x>0)C)y=0(x<0)-1(x=0)1(x>0)D)y=-1(x<0)1(x=0)0(x>0)10.设有数组定义:char array[]="China";蚴?閍rray所占的空间为()A)4个字节 B)5个字节 C)6个字节 D)7个字节答案:1.D 2.A 3.A 4.B 5.D 6.B 7.A 8.C 9.C 10.C计算机二级C语言题库【二】1.若变量已正确定义并赋值,对库函数错误调用的是A) k=scanf("%d%d",&i,&j);B) printf("\\%d\\\n",k);C) getchar(ch);D) putchar(ch);2.要求定义一个返回值为double类型的名为mysum的函数,其功能为求两个double类型数的和值,正确的定义是:A) mysum(double a,b){ return (a+b); }B) mysum(double a, double b){ return a+b; }C) double mysum(int a, intb);{return a+b; }D) double mysum(double a, double b){ retrun (a+b); }3.以下是对fun函数的正确调用:fun(a+b,fun(a+b,(a,b)));则fun函数有______个形参。
计算机三级C语言模拟试题2016计算机三级C语言模拟试题一、选择题1.下列叙述中正确的是( )。
A.为了建立一个关系,首先要构造数据的逻辑关系B.表示关系的二维表中各元组的每一个分量还可以分成若干数据项C.一个关系的属性名表称为关系模式D.一个关系可以包括多个二维表2.下列叙述中正确的是( )。
A.循环队列是队列的一种链式存储结构B.循环队列是队列的一种顺序存储结构C.循环队列是非线性结构D.循环队列是一种逻辑结构3.一棵二叉树共有25个结点,其中5个是叶子结点,则度为l的结点数为( )。
A.16B.10C.6D.44.在下列模式中,能够给出数据库物理存储与物理存取方法的是( )。
A.外模式B.内模式C.概念模式D.逻辑模式5.在满足实体完整性约束的条件下( )。
A.一个关系中应该有一个或多个候选关键字B.一个关系中只能有一个候选关键字C.一个关系中必须有多个候选关键字D.一个关系中可以没有候选关键字6.有三个关系R、S和T如下:2015年计算机二级《C语言》考试上机测试题(7)则由关系R和S得到关系T的操作是( )。
A.自然连接B.并C.交D.差7.软件生命周期中的活动不包括( )。
A.软件维护B.市场调研C.软件测试D.需求分析8.下面不属于需求分析阶段任务的是( )。
A.确定软件系统的功能需求B.确定软件系统的性能需求C.制定软件集成测试计划D.需求规格说明书评审9.在黑盒测试方法中,设计测试用例的主要根据是( )。
A.程序外部功能B.程序内部逻辑C.程序数据结构D.程序流程图10.在软件设计中不使用的工具是( )。
A.系统结构图B.程序流程图C.PAD图D.数据流图(DFD图)11.针对简单程序设计,以下叙述的实施步骤顺序正确的是( )。
A.确定算法和数据结构、编码、调试、整理文档B.编码、确定算法和数据结构、调试、整理文档C.整理文档、确定算法和数据结构、编码、调试D.确定算法和数据结构、调试、编码、整理文档12.关于C语言中数的表示,以下叙述中正确的是( )。
一、单选题:(每题1.5分,共60分)1、C语言程序的基本单位是_______.A.语句B.函数C.程序行D.字符答案:B2、C语言程序由( )组成A.子程序B.过程C.函数D.主程序段程序答案:C3、算法的表示方法有________。
A.自然语言,传统流程图,N-S流程图,伪代码,计算机语言B.高级语言,汇编语言,机器语言C.C语言,QBASIC语言,InterDevD.图形图像法,描述法,编程法E.计算机语言答案:A4、以下程序的输出结果是main( ){ int k=17;printf("%d,%o,%x \n",k,k,k);}A.17,021,0x11B.17,17,17C.17,0x11,021D.17,21,11答案:D5、下列变量定义中合法的是A.short _a=1-.le-1;B.double b=1+5e2.5;C.long do=0xfdaL;D.float 2_and=1-e-3;答案:A6、C语言中合法的字符常量是____A.'\084'B.'\X43'C.'ab'D."\0"答案:B7、下面说法中正确的是( )A.int型和long型运算先将int型转换成unsigned型,再转换B.两个float型运算结果为double型C.只要表达式中存在double型,所有其他类型数据都必须转D.表达式中的类型转换与运算顺序有关答案:C8、以下不正确的叙述是A.在C程序中,逗号运算符的优先级最低B.在C程序中,APH和aph是两个不同的变量C.若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变D.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值答案:D9、设变量n为float类型,m为int类型,则以下能实现将n中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是A.n=(n*100+0.5)/100.0B.m=n*100+0.5,n=m/100.0C.n=n*100+0.5/100.0D.n=(n/100+0.5)*100.0答案:B10、下列运算符中优先级最高的是A.<B.+C.&&D.!=答案:B11、若变量已正确定义并赋值,下面符合C语言语法的表达式是A.a:=b+1B.a=b=c+2C.int 18.5%3D.a=a+7:c+b答案:B12、设CH是字符型变量,其值为'A',下列表达式的值是CH=(CH > ='A'&&CH < ='Z')?(CH+32):CHA.AB.aC.zD.Z答案:B13、表达式18/4*sqrt(4.0)/8值的数据类型为A.intB.floatC.doubleD.不确定答案:C14、在C语言中,要求运算数必须是整型的运算符是A./B.%C.!D.>答案:B15、以下说法中正确的是A.#define和printf都是C语句B.#define是C语句,而printf不是C.printf是C语句,但#define不是D.#define和printf都不是C语句答案:D16、下面程序的输出是main(){int a=-1,b=4,k;k=(a++<=0)&&(!(b--<=0));printf("%d%d%d%\n",k,a,b);}A.0 0 3B.0 1 2C.1 0 3D.1 1 2答案:C17、设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行 (m=a > b)&&(n=c > d)后n的值是A.1B.2C.3D.4答案:B18、若有条件表达式 (exp)?a++:b--,则以下表达式中能完全等价于表达式(exp)的是A.(exp==0B.(exp!=0)C.(exp==1)D.(exp!=1)答案:B19、为表示关系X≥Y≥Z应使用C语言表达式:__A.(X > =Y)&&(Y > =Z)B.(X > =Y)and(Y > =Z)C.(X≥ Y≥ Z)D.(X≥ Y)&(Y≥ Z)答案:A20、能正确表示逻辑关系:"a ≥ =10或a ≤ 0"的C语言表达式是A.a > =10 or a < =0B.a > =0||a < =10C.a > =10 && a < =0D.a < =0 || a>=10答案:D21、下面的程序是______main(){ int x=3,y=0,z=0;if (x==y+z) printf("****");else printf("####");}A.有语法错误不能过通过编译B.输出****C.可能通过编译,但是不能通过连接,因而不能运行D.输出####答案:D22、执行下面语句后的输出为( )int i= -1;if (i < =0)printf("****\n")else printf("%%%%\n")A.****B.%%%%C.%%%%CD.有语法错,不能执行答案:D23、若运行以下程序时,从键盘输入 ADescriptor < CR > ( < CR > 表示回车),则下面程序的运行结果是#include <stdio.h>main(){char c;int v0=0,v1=0,v2=0;do{switch(c=getchar()){case 'a':case 'A':case 'e':case 'E':case 'i':case 'I':case 'o':case 'O':case 'u':case 'U':v1+=1;default:v0+=1;v2+=1;}while(c!='\n');printf("v0=%d,v1=%d,v2=%d\n",v0,v1,v2);}A.v0=7,v1=4,v2=7B.v0=8,v1=4,v2=8C.v0=11,v1=4,v2=11D.v0=12,v1=4,v2=12答案:D24、以下程序的输出结果是main( ){ int n=4;while(n--)printf("%d ",--n);}A.2 0B.3 1C.3 2 1D.2 1 0答案:A25、有一堆零件(100到200之间),如果分成4个零件一组的若干组,则多2个零件;若分成7个零件一组,则多3个零件;若分成9个零件一组,则多5个零件。
C语言模拟试卷及答案____―____学年第一学期《C语言程序设计》模拟试卷(B)一、单项选择题(每题1分,共30分)1.C语言程序总是从______开始执行。
A)第一条语句B)第一个函数C)主函数D)子程序2.以下选项中正确的C语言标识符是______。
A)a+bB)3Dma_C)_25D)ó.以下选项中正确表示字符型常量的是______。
A)’\\t’B)\C)’abc’D)’279’4.以下选项中属于C语言基本数据类型的是______。
A)逻辑型B)双精度型C)复数型D)集合型5.已知:inta=8,b=5,c;,则执行语句c=a%b+0.3;后,c的值是______。
A)1B)1.3C)3D)3.36.设在程序中的a,b,c均被定义为整型并且已赋予大于1的值,能正确表示代数式1 的表达式abc是______。
A)1/a_b_cB)1/(a_b_c)C)1/a/b/(float)cD)1.0/a/b/c7.已知字符’A’的ASCII 码值为十进制数65,则执行语句printf(\______。
A)AB)CC)65D)678.已知:inti=1;,则执行语句printf(\A)1B)2C)-1D)-29.以下选项中,和语句__=y+2;等价的是______。
A)_=__y+2;B)y=__(y+2);C)_=y+2__;D)_=__(y+2);10.以下选项中能正确判断字符变量c不是大写字母的表达式是______。
A)c’Z’B)!(c’Z’)C)c>=‘A’||c=‘A’__cvoidmain()—1—{inta=3,b=-1,c =1;if(a=y)__(y>=z)B)(_>=y)AND(y>=z)C)_>=y>=zD)(_>=y)||(y>=z)17.已知:inti=5;,则执行语句while(ivoidmain(){intn=9;while(n>6){n--;printf(\}A)987B)9876C)8765D)87 619.执行以下程序后,输出结果是______。
单项选择题得分:01:计算机最主要的工作特点是______。
A. 存储程序与程序控制B. 高速度与高精度C. 可靠性与可用性D. 具有记忆能力参考答案:A2:在计算机指令系统中,一条指令通常由_______组成。
A. 数据和字符B. 操作码和操作数C. 运算符和数据D. 被运算数和结果参考答案:B3:运算器主要由_______组成。
A. 算术逻辑单元B. 微处理器C. 控制器D. 存储器参考答案:A4:Windows操作系统是由______公司开发的。
A. 联想B. 微软C. 谷歌D. 金山参考答案:B5:多媒体信息不包括_______。
A. 文字、图形B. 音频、视频C. 光驱、声卡D. 影像、动画参考答案:C6:下列关于C语言程序的叙述中,不正确的是______。
A. C语言程序由一个或多个函数组成B. C语言程序总是从第一个函数开始执行C. C语言程序中必须含有main( )函数D. C语言程序中的语句必须以分号结束参考答案:B7:下列变量定义中合法的是_____。
A. int _a=.e1;B. double b=1+1e1.1;C. long x=2.5;D. float 2_and=1-e-3;参考答案:C8:下列可以正确表示字符常量的是______。
A. '\x41'B. \008C. aD. "a"参考答案:A9:以下选项中可以作为变量名的是_______。
A. 2abB. doubleC. <ctrl>D. apple参考答案:D10:设有定义:int a=2,b=6;,则表达式a*b/5的值是______。
A. 2B. 3C. 2.4D. 3.6参考答案:A11:下列运算符结合方式是自右向左的是______。
A. %B. <C. ++D. &&参考答案:C12:设有int m,n=10;,则执行语句m=n++;后m、n的值分别为_______。
第一部分:选择题(40分,20小题/套)概述1、下面关于C语言的叙述中,正确的是(D)A. 每行只能写一条语句B. 程序中必须包含有输入语句C. main函数必须位于文件的开头D. 每条语句最后必须有一个分号2、下面关于C语言的叙述中,错误的是(B)A. 若一条语句较长,也可分写在下一行上B. 构成C语言源程序的基本单位是表达式C. C语言源程序中大、小写字母是有区别的D. 一个C语言源程序可由一个或多个函数组成3、关于C语言数据类型的叙述,正确的是()A. 枚举类型不是基本类型B. 数组不是构造类型C. 变量必须先定义后使用D. 不允许使用空类型4、C程序中main函数的位置(C)A. 必须在最开始B. 必须在系统库函数后面C. 可以在自定义函数后面D. 必须在最后5、C语言的函数体由(B)括起来A. ( )B. { }C. [ ]D. /* */6、关于C语言的叙述中,不正确的是(C)A. C程序可由一个或多个函数组成B. C程序必须包含一个main()函数C. C程序的基本组成单位是函数D. 注释说明只能位于一条语句的后面7、一个程序的执行是从(C)A. 本程序的第一个函数开始,到最后一个函数结束B. 本程序的main函数开始,到main函数结束C. 本程序的main函数开始,到最后一个函数结束D. 本程序的第一个函数开始,到main函数结束8、结构化程序设计的三种基本结构是(C)A. 函数结构、分支结构、判断结构B. 函数结构、嵌套结构、平行结构C. 顺序结构、分支结构、循环结构D. 分支结构、循环结构、嵌套结构9、调试程序是指对程序进行(C)A. 编辑B. 编译C. 查错和排错D. 连接10、C语言中,复合语句的构成是将一系列语句置于(C)A. begin与end之间B. 一对圆括号“()”之间C. 一对花括号“{ }”之间D. 一对方括号“[ ]”之间11、构成C语言源程序的基本单位是(D)A. 语句B. 过程C. 表达式D. 函数语法基础12、在C语言中,正确的用户标识符是(B)A. 3fB. _forC. struct13、C语言的基本数据类型包括(A)A. 整型、实型、字符型B. 整型、实型、字符型、逻辑型C. 整型、字符型、逻辑型D. 整型、实型、逻辑型14、以下(D)是正确的常量A. E-5 C. ‘a12’ D. 32766L15、以下(D)是正确的变量名A. B. –p11 C. int D. p_1116、以下(C)是正确的字符常量A. “c”B. ‘//”C. ‘W’D. “\32a”17、以下(A)是不正确的字符串常量A. ‘abc’B. “12’12”C. “0”D. “ “18、C语言的整型数据在内存中的存储形式是(C)A. 原码B. 反码C. 补码D. ASCII码19、以下(B)是正确的浮点数( e后面的数必须为整数e前面必须要有数字A. e3B. .62 D. 12320、下列不属于C语言关键字的是(D)A. continueB. integerC. staticD. signed21、C语言的字符型数据在内存中的存储形式是(D)A. 原码B. 补码C. 反码D. ASCII22、在C语言中,变量所分配的内存空间大小是(A)A. 由变量的类型决定B. 由用户自己决定C. 任意的D. 均为两个字节23、若有定义:int a=2;则正确的赋值表达式是(A)A. a-=(a*3)B. double(-1)C. a*3D. a*4=324、语句x=(a=3,b=++a);运行后,x、a、b的值依次为()A. 3,3,4B. 4,4,3C. 4,4,4D. 3,4,325、语句a=(3/4)+3%2;运行后,a的值为(B)A. 0B. 1C. 2D. 326、以下四项中,符合C语言语法的语句是(C)注意分号A. int a+b=c;B. int a=12:b=12:c=12;C. int a=12,b=12,c=12;D. int a,b=12,float c=2127、若有定义:int x,a;则语句x=(a=3,a+1);运行后,x、a的值依次为()A. 3,3B. 4,4C. 4,3D. 3,428、若变量已正确定义并赋值,符合C语言语法的表达式是()A. a=8+b+c,a++B. a=3aC. int(12.3%4)D. a=a+1=c+b29、若有定义:int a,b;double x;则以下不符合C语言语法的表达式是()A. x%(-3)B. a+=-1C. a=b=2D. x=a+b30、若有定义:int x=2,y=3;float i;则以下符合C语言语法的表达式是(B)A. x=x*3=2B. x=(y==1)C. i=float(x) ( 形式错误:正确的是:i=(float)x 是将数据类型括号起来)D. i%(-3)31、若有定义:int x;则语句x=(2*3)+6%5;运行后,x的值是()A. 8B. 7C. 6D. 532、下面关于C语言变量的叙述中,错误的是(C)A. 可以用const关键字定义变量B. 在C程序中,SUM和sum是不同的变量C. 变量名必须由字母或下划线组成(可是是字母和数字组合)D. 变量的类型确定了变量的取值范围33、若有定义:int x=5,y=6;则表达式x=(y= =6)的值为()A. 5B. 1C. 6D. 034、下面叙述正确的是(B)A. 2/3与等价B. 与2/3等价C. ++5与6等价D. ‘A’与”A”等价35、下面叙述中,错误的是(A)A. C语言基本的算术运算符不包含模运算符”%”B. 算术运算符的优先级高于关系运算符C. 自加和自减运算符的结合方向是”自右向左”D. C语言规定在表达式求值时,按其中运算符的优先级先高后低的次序进行36、下面叙述正确的是(A)A. 强制类型转换运算的优先级高于算术运算B. 若a和b是整型变量,(a+b)++是合法的(自加自减运算只能用于简单变量,不能用于表达式或常量)C. ‘A’*’B’是不合法的D. “A”+”B”是合法的只能字符间运算37、若有定义:int i=1,j=5;则表达式(++j)*(i--)的值为(C)A. 1B. 0C. 6D. 7 (i先运算再减减,加了括号也一样38、设整型变量a为5,使b不为2的表达式是(C)A. b=(++a)/3B. b=6-(--a)C. b=a%2D. b=a/239、若有定义:int a=1,b=2,c=3;则语句++a||++b&&++c;运行后b的值为(C)A. 1B. 0C. 2D. 3(&&的优先级高于|| ,即先进行++b&&++c运算,~,<< ,>>,&,^(异或),| 优先级依次降低)40、若有定义:int i,j;则表达式(i=2,j=5,i++,i+j++)的值是(B)A. 7B. 8C. 9D. 10 (i++要算完)41、若有定义:int a,b;则表达式(a=2,b=5,a*2,b++,a+b)的值是(B)A. 7B. 8C. 9D. 1042、若有定义:int i=2,j=5;则表达式(i+1,j+1,(++i+(j--))的值为(A)A. 8B. 6C. 7D. 5 红字部分先算43、若已定义:int i=3,k;则语句k=(i--)+(i--);运行后k的值为(C)A. 4B. 5C. 6D. 7 ( i先运算再--44、C语言的运算符按运算对象的个数可以分为(C)A. 单目运算符一种B. 单目和双目运算符C. 单目、双目和三目运算符D. 单目、双目、三目和四目运算符45、若已定义:float m;拟从键盘输入这一数据给变量m,则应选用的语句是(D)A. scanf(“%5.2f”,&m);B. scanf(“%3.2f”,&m);C. scanf(“6.2f”,&m);D. scanf(“%6f”,&m);46、已知double a;使用scanf()函数输入一个数值给变量a,正确的函数调用是()A. scanf(“%l d”,&a);B. scanf(“%l f”,&a);C. scanf(“%c”,&a);D. scanf(“%u”,&a);47、已知char a;使用scanf()函数输入一个字符给变量a,不正确的函数调用是(B)A. scanf(“%d”,&a);B. scanf(“%l f”,&a);不可能是实数C. scanf(“%c”,&a);D. scanf(“%u”,&a);十进制无符号48、putchar()函数的功能是向终端输出(B)A. 多个字符B. 一个字符C. 一个实型变量值D. 一个整型变量表达式49、以下程序段运行后的输出结果是(C)int k=11;printf(“k=%d,k=%o,k=%x\n”,k,k,k);A. k=11,k=13,k=cB. k=11,k=12,k=13C. k=11,k=13,k=bD. k=11,k=13,k=a50、若有定义:int x=1234,y=123,z=12;则语句printf(“%4d+%3d+%2d”,x,y,z);运行后的输出结果为(D)A. 123412312B.C. 1234+1234+1234D. 1234+123+1251、已有如下定义和输入语句,int a;char c1,c2;scanf(“%d%c%c”,&a,&c1,&c2);若要求a、c1、c2的值分别为10、A和B,正确的数据输入是()A. 10ABB. 10 A BC. 10A BD. 10 AB52、以下程序段的运行结果是(A)int a=0,b=0,c=0;if(a&&++b) (因为a=0 又是与运算,故不进行&&后面的运算了)c++;printf(“%d,%d\n”,b,c);A. 0,0B. 1,2C. 2,2D. 1,053、以下程序的运行结果是()void main(){int a=65;c har c=’A’;printf(“%x,%d”,a ,c);}A. 65,aB. 41,aC. 65,65D. 41,6554、若已定义:int a=5;float b=63.72;以下语句中能输出正确值的是(B)A. printf(“%d%d”,a,b);B. printf(“%d%2f”,a,b);C. printf(“%2f%2f”,a,b);D. printf(“%2f%d”,a,b);55、运行以下程序段时编译出错,其原因是(A)char c1='8',c2='2008';printf("%c,%d\n",c1,c2);A. c2是字符变量,只能赋以字符常量,不能赋以字符串常量B. 字符串要用“2008“表示,而‘2008’不是字符串表示C. ‘2008’只能赋值给字符数组D. 字符变量不能用%d格式输出56、若已定义:int a=3,b=15,c;则语句c=a>b;运行后c的值为(B)A. 1B. 0C. tD. f57、在C语言中,判定逻辑值为“真“的最正确的叙述是(B)A. 1B. 非0的数C. 大于0的数D. 非0的整数58、若已定义:int a=-36,b=-30,c;则语句c=a<b;运行后c的值为(A)A. 1B. tC. 0D. f (有符号的比较,按负数进行比较)59、能正确表示数学关系式800>=y>=500的C语言表达式为(A)A. (y<=800)&&(y>=500)B. (y<=800)AND(y>=500)C. 800>=y>=500D. (y<=800)&(y>=500)60、若有定义:int x=3,y=4;则表达式!x||y的值为(A)(!,算术运算符,关系运算符,&&,|| ,赋值运算符优先级依次降低)注意:表达式的最后结果不是零就是一A. 1B. 0C. 3D. 461、若有定义:int i=7,j=8;则表达式i>=j||i<j的值为()A. 1B. 变量i的值C. 0D. 变量j的值62、若希望当a的值为奇数时,表达式的值为“真”,a的值为偶数时,表达式的值为”假”。
c语言基础测试题及答案2016版一、选择题(每题2分,共20分)1. 在C语言中,以下哪个选项是合法的字符常量?A. 'A'B. "A"C. 123D. A答案:A2. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A3. 下列哪个选项是C语言中的合法整数?A. 0x1FB. 01FC. 09FD. 08F答案:A4. 在C语言中,以下哪个选项是正确的注释?A. // 这是一条注释B. /* 这是一条注释 */C. // 这是一条注释/* 这是一条注释 */D. /* 这是一条注释/* 这是一条注释 */答案:A5. C语言中,以下哪个选项是合法的数组声明?A. int a[10];B. int a[2][3];C. int a[0];D. int a[];答案:A6. 在C语言中,以下哪个选项是合法的函数声明?A. int function(int x);B. int function(int);C. int function();D. int function(int, int);答案:A7. 下列哪个选项是C语言中的合法变量名?A. _myVarB. 2myVarC. my-VarD. my$Var答案:A8. 在C语言中,以下哪个选项是正确的字符串声明?A. char str[] = "Hello, World!";B. char str[] = 'Hello, World!';C. char str[] = "Hello, World!";D. char str = "Hello, World!";答案:A9. 下列哪个选项是C语言中的合法浮点数?A. 3.14159B. .14159C. 314159e-5D. 3.14.159答案:C10. 在C语言中,以下哪个选项是正确的文件包含指令?A. #include <stdio.h>B. #include "stdio.h"C. #include <stdio>D. #include "stdio"答案:A二、填空题(每题2分,共20分)1. 在C语言中,一个整型变量默认占用______个字节。
2016年c语言考试题及答案一、选择题(每题2分,共20分)1. 下列哪个选项不是C语言的基本数据类型?A. intB. floatC. charD. string答案:D2. C语言中,哪个关键字用于定义一个函数?A. functionB. defineC. voidD. def答案:C3. 在C语言中,哪个运算符用于取模运算?A. %B. /C. //D. *答案:A4. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. =D. ==5. 在C语言中,哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A6. C语言中,哪个函数用于将字符串转换为浮点数?A. atoiB. atofC. itoaD. sprintf答案:B7. 下列哪个选项是C语言中的数组声明?A. int a[10];B. int *a;C. int a=10;D. int a[];答案:A8. 在C语言中,哪个关键字用于定义一个指针?A. ptrB. pointerC. *D. ref答案:C9. C语言中,哪个函数用于输出格式化的字符串?B. scanfC. fprintfD. sprintf答案:A10. 在C语言中,哪个关键字用于声明一个变量?A. varB. declareC. letD. auto答案:D二、填空题(每题2分,共20分)1. C语言中,用于定义一个整型变量的关键字是____。
答案:int2. 在C语言中,用于定义一个字符型变量的关键字是____。
答案:char3. C语言中,用于定义一个浮点型变量的关键字是____。
答案:float4. C语言中,用于定义一个双精度浮点型变量的关键字是____。
答案:double5. C语言中,用于定义一个字符串的关键字是____。
答案:char6. 在C语言中,用于定义一个指针的符号是____。
《程序设计基础(C)》模拟试卷
一.试题一(40分,每小题4分)
按题目要求解答下列各小题
1.定义一个大小为6的数组,并且使数组的值都为0。
int a[6]={0}
2.写出执行如下程序段后的输出结果。
char a[]=“hello”,*p ;
p = a+2;
printf(“%c,%c”, p[0],a[1]+1);
l,f
3.假设x 是一个float变量,而不等式0≤x<1 需要作为下列if-else语句的条件,
应该使用什么样的逻辑表达式?把它填写在下面括号内。
if ( x>=0&&x<1) {
printf(“True\n”);
} else {
printf(“False\n”);
}
4.以下是一个计算10!的程序请在[]间填写正确的代码
#include”stdio.h”
main()
{ int n,t;
t=1;
for (n=1;n<=10;[ n++ ])
t =t*[ n ];
printf(“%d\n”,t);
}
5. 有以下结构体定义:
struct person
{
char name[9];
int age;
};
Struct person class={“Tom ”,17};
请写出输出变量class 中”Tom ”的输出语句。
printf (“%s ”,person name)
6. 求下面算术表达式的值
(1) x+a%3*(int)(x+y)%2/4
设x=2.5,a=7,y=4.7
2.500000
(2) (float)(a+b)/2+(int)x%(int)y
设a=2,b=3,x=3.5,y=2.5
3.500000
7. 写出表示如下运算的表达式(平方根函数为sqrt(x))。
2b a b
a -+
(a+ sqrt(b))/(a-b*b)
8. 定义一个可以保存5个字符的一维数组,并且使数组中每个元素的值都为1。
int a[5]={1}
9. 找出以下程序中的2处错误,并改正。
#include "stdio.h"
main()
{
int x,y ,t ; scanf("%d,%d", &x,&y);
if (x>y)
{
t=x;
x=y;
y=t;
}
printf("%d,%d\n",x,y);
}
10.举例说明运算符& 的作用。
取地址运算符& 单目自右至左结合
例如:int a=10;
int *p=&a;
printf("a=%d\n",*p);
在定义部分的int *p=&a,表示p的类型是int *,也就是指向int类型的指针printf语句中的*p,表示取出地址p中的值,也就是a的值,10。
二.试题二(24分,每小题6分)
阅读下列程序,写出运行结果。
1. 【程序1】
#include <stdio.h>
int main()
{ float k,m;
for(k= 1.5; k<26.0; k=k+8.0)
{if (k<=0) printf("data error!\n");
else if (k<3)
m=11;
else if (k<10)
m=(k-3)*2.0+11;
else m=(k-10)*3.0+11+14.7;
printf("fare=%.2f\n",m);
}
}
fare=11.00
fare=24.00
fare=48.20
fare=72.20
2. 【程序2】
#include<stdio.h>
main()
{ int i,j;
for(i=0;i<5;i++)
{
for(j=0;j<5-i;j++)
printf("%3d",j);
printf("\n");
}
}
0 1 2 3 4
0 1 2 3
0 1 2
0 1
3.【程序3】
#include "stdio.h"
main()
{
int a[5],i;
for(i=0;i<5;i++)
a[i]=9*(i+6*(i>2)) % 5;
for(i=4;i>=0; i--)
printf("%2d",a[i]);
}
0 1 3 4 0
4. 【程序4】
#include "stdio.h"
int fun(int x,int y)
{
int z;
x=x+y;
z=x-y;
return z;
}
main()
{
int a=3,b=4,x;
x=fun(a,b);
printf("%d,%d,%d\n",a,b,x);
x=fun(b,x);
printf("%d,%d,%d\n",a,b,x);
}
3,4,3
3,4,4
三.试题三(36分)
按要求编写程序。
1.输入一个正整数,输出平方根, 取两位小数。
#include <stdio.h>
#include <math.h>
int main()
{
int x;
printf("输入一个正整数:\n");
scanf("%d",&x);
if(x<0) printf("输入数据错误r!\n");
else printf("平方根:%.2f\n",sqrt(x));
return 0;
}
2.输入x计算并输出如下分数序列的和,2x/4,4x2/7,6x3/10,......,66x33/100。
3.编写一个程序输入一个百分制成绩,要求输出成绩等级A、B、C、D。
80分
以上为A,70~79分为B,60~69分为C,60分以下为D,要求对成绩输入正确性进行检查(成绩的正确值在0-100之间)。
4.输入20个实数到数组,要求编程输出其中最大值和最小值,并将这2个数对
换位置后输出整个数组。