如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
期末测试卷1一、选择题(每小题2分,共30分)1.C语言源程序名的后缀是(A).exeB).CB)C).objB)D)a2+b)D).cp2.下面不合法的C语言标识符有(A)A3?BB)_4xC)3xy3.若x和y是double类型,则表达式x=1,y=x+3/2执行后的值为(DA)1B)2C)2.0D)2.54.以下关于long、int和short类型数据占用内存大小的叙述中正确的是(D)A)均占4个字节C)由用户自己定义B)根据数据的大小来决定所占内存的字节数D)由C语言编译系统决定)5.若变量均已正确定义并赋值,以下合法的C语言赋值语句是(AA)x=y==5;B)x=n%2.5;C)x+n=1;D)x=5=4+1;D)6.以下选项中,当x为大于1的奇数时,值为0的表达式(A)x%2==1B)x/2C)C)x%2!=0D)x%2==07.以下叙述中正确的是(A)break语句只能用于switch语句体中B)continue语句的作用是:使程序的执行流程跳出包含它的所有循环C)break语句只能用在循环体内和switch语句体内D)在循环体内使用break语句和continue语句的作用相同8.在一个完整的C语言源程序中,必须包含的函数是(A)main()B)scanf()C)printf()D)A)D)getchar()9.执行下列两个语句后,输出的结果为(charc1=97,c2=98;printf(“%c%d”,c1,c2)A)9798B)a97C)97bD)a98A)10.在C语言中,函数返回值的类型最终取决于(A)函数定义时在函数首部所说明的函数类型B)return语句中表达式值的类型C)调用函数时主函数所传递的实参类型D)函数定义时形参的类型11.关于C语言中的do?while循环,下列说法正确的是(BA.必须使用break才能跳出循环C.可以使用continue结束循环)B.循环体至少执行一次D.while后的条件满足时跳出循环)12.若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是(DA)函数的实参和其对应的形参共占同一存储单元B)形参只是形式上的存在,不占用具体存储单元C)同名的实参和形参占同一存储单元D)函数的形参和实参分别占用不同的存储单元13.若有定义:inta[2][3];,以下选项中对a数组元素正确引用的是(DA.a[2][1]B.a[2][3]C)C.a[0][3]D.a[1][1])14.以下叙述中正确的是(A)C语言程序将从源程序中第一个函数开始执行B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行C)C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束D)main可作为用户标识符,用以命名任意一个函数作为主函数15.以下为一维整型数组a的正确说明是(A)inta(10);C)intn;scanf("%d",&n);inta[n];D)B)intn=10,a[n];D)#defineSIZE10;inta[SIZE];二、填空题(每空2分,共20分)1.C语言的语句结束标志是(;)2.定义一个符号常量EOF,使其与-1等价,则正确的表示方式为(#defineEOF-1)3.在C语言中,输入操作是由库函数(scanf)完成的,输出操作是由库函数(printf)完成的4.定义a为共有16个元素的一维字符数组、同时定义p为指向a数组首地址的指针变量的语句为(char*p,a[15];p=a;)5.函数的实参为数组名时,形参与实参结合的传递方式为(地址传递)6.已定义:charc=‘’;inta=1,b;(此处c的初值为空格字符),执行b=!c&&a;后b的值为_______0________。7.设有如下程序段chars[20]=”Beijing”,*p;p=s;则*p=______B_________。8.C语言中,一个长度为n的字符串要占用n+1个字节的存储空间,多出来的一个用来存放________\n_______。9.当执行以下程序时,输入1234567890<回车>,则其中while循环体将执行____9_____次。#include<stdio.h>voidmain(){charch;While((ch=getchar())!=’0’)printf(“#”);return0;}三、判断题(每小题1分,共5分)1.自增运算符(++)或自减运算符(--)只能用于变量,不能用于常量或表达式。对)(2.函数的定义和函数的调用都可以嵌套。错)(3.do?while循环中,根据情况可以省略w