1、云南师范大学c语言期末试题2云南师范大学2009-2010学年下学期统一考试计算机技术基础(C语言)期末考试试卷考试方式(闭卷) 考试时量:90分钟 试卷编号(B卷)一、判断题:(每题1分,共10分)1. C语言中表达式3/2得到的结果是1.5。 A.对 B.错2.语句是C程序的基本构成单位。 A.对 B.错3.在C程序中 , 函数既可以嵌套定义 , 也可以嵌套调用。 A.对 B.错4.数组名代表数组的首地址。A.对 B.错5.循环结构中的break语句是使整个循环终止执行。A.对 B.错6.字符数组可以存放字符串,因此字符数组就是字符串。BA.对 B.错7.在if语句中,不可以没有else子
2、句。A.对 B.错8. 在程序中凡是以“#”号开始的语句行都是预处理命令行。AA.对 B.错9.设有数组定义: char a =hi!; 则数组a所占的空间为3。 A.对 B.错10. 宏定义中的宏名必须是大写字母。 b A.对 B.错二、单选题(每一小题的被选答案中只有一个正确答案,每题1分,共 30分)1C语言规定,必须用 作为主函数名。B AFunction Bmain Cinclude Dstdio2以下叙述中正确的是_。CAC 程序的基本组成单位是语句 BC 程序中的每一行只能写一条语句C简单C 语句必须以分号结束 DC 语句必须在一行内写完3下列正确的标识符是_。CA%y B6a
3、C_do Da+b4在下面几组数据类型中, 全为最常用的基本数据类型的是哪一组: 。A A整型 实型 字符型 B整型 数组 指针C数组 结构体 共用体 D指针 逻辑型 空类型 5C语言中不能用来表示整常数的进制是 。D) A十进制 B十六进制 C八进制 D二进制6表达式:(int)(double)9/2)-(9)%2的值是 。BA0 B3 C4 D57C语言中,运算对象必须是整型数的运算符是 。D A * B C% 和 D%8设x=1,y=2,m=4,n=3,则表达式xy?x:mn?y:n的值为: 。C A.1 B.2 C.3 D.49若有说明语句:char c= 64 ; 则变量C包含: 。
4、AA1个字符 B2个字符 C3个字符 D说明不合法,C值不确定10以下不能正确表示代数式的C 语言表达式是( )。DA2*a*b/c/d Ba*b/c/d*2 Ca/c/d*b*2 D2*a*b/c*d11任何一个C语言的可执行程序都是从_ _开始执行的。B A程序中的第一个函数 Bmain( )函数的入口处C程序中的第一条语句 D编译预处理语句12能正确表示x的取值范围在0,100或-10,-5内的表达式是 。BA)(x=-5)&(x=100)B)(x=-10)&(x=0)&(x=-10)&(x=0)&(x=100)D)(x=-5)&(x=100)13C语言函数的隐含存储类别是_ _。D A
5、static Bauto Cregister Dextern 14将字符串str2连接到字符串str1中应使用 。BAstrcpy(str1,str2) Bstrcat(str1,str2) Cstrcmp(str1,str2) Dstrcat(str2,str1) 15有以下程序 #include main() inta=1,b=0; printf(%d,b=a+b); printf(%d,a=2*b); 程序运行后的输出结果是 。DA0,0 B1,0 C3,2 D1,2 16设变量定义为“int a, b;”,执行语句scanf(a=%d, b=%d,&a, &b);时,输入_,则a和b的
6、值都是10。DA10 10 B10, 10 Ca=10 b=10 Da=10, b=1017不是给数组的第一个元素赋值的语句是 。DAint a2=1; B int a2=1*2; C int a2;scanf (“%d”,a); Da1=1;18若用数组名作为函数调用的实参,传递给形参的是 。A A数组的首地址 B数组第一个元素的值 C数组中全部元素的值 D 数组元素的个数19.循环语句中的for语句,其一般形式如下:for(表达式1;表达式2;表达式3) 语句其中表示循环条件的是 。BA表达式1 B表达式2 C表达式3 D语句20已知字符A的ASC代码值是65,字符变量c1的值是A,c2的
7、值是D。执行语句printf(%d,%d,c1,c2-2);后,输出结果是_ _。C AA,B BA,68 C65,66 D65,6821下面叙述中正确的是_B_。 A.全局变量在定义它的文件中的任何地方都是有效的 B.全局变量在程序的全部执行过程中一直占用内存单元 C.同一文件中的变量不能重名 D.使用全局变量有利于程序的模块化和可读性的提高22以下叙述中错误的是_ _。A A可以通过typedef增加新的类型 B可以用typedef将已存在的类型用一个新的名字来代表 C用typedef定义新的类型名后,原有类型名仍有效D用typedef可以为各种类型起别名,但不能为变量起别名23假定所有变
8、量均已正确说明,下列程序段运行后x的值是 。Ba=b=c=0;x=35;if(!a) x=-1;else if(b);if(c) x=3;else x=4;A34 B4 C35 D324以下程序的执行结果是_C_。 main() int num = 0; while( num = 2 ) num+; printf( %d,num ); A.0,1,2, B.1,2, C.1,2,3, D.1,2,3,4,25以下程序的输出结果是_。 a void fun(int a, int b, int c) a=456; b=567; c=678; main() int x=10, y=20, z=30;
9、 fun(x, y, z); printf(%d,%d,%dn, z, y, x);A30,20,10 B10,20,30 C456,567,678D678,567,4562614.下面函数调用语句中实参的个数为: 。Bfunc(exp1,exp2),(exp3,exp4,exp5)A1 B2 C4 D527有宏定义:#define E 2.718则编译预处理时将E替换成一个_D_。 A.单精度常量 B.单精度变量 C.双精度变量D.字符串28变量的指针,其含义是指该变量的 。AA地址 B值 C名 D一个标志29若有定义int a10,*p=a;,则*(p+5)表示_。 B A元素a5的地址
10、B元素a5的值C元素a6的地址 D元素a6的值30有如下程序段int *p,a=10,b=1 p=&a; a=*p+b; 执行该程序段后,a的值为 。C A 12 B 10 C 11 D 编译出错三、填空题:(每空2分,共20分)。 1在C语言中,程序运行期间,其值可以被改变的量叫【1】。2表示条件:x0或x100的C语言表达式是【1】。3已知:int i=3,j=4,m,n;m=+i;n=j+;问语句执行后m=【1】,n=【2】。4有定义float y=1.23456; 若希望在屏幕上输出1.23 ,则相应的C语言语句应写为printf( 【1】 , y); 。(2分)5下面程序的输出是【1
11、】。main()int arr10,i,k=O:for(i=0;i10;i+) arri=i;for(i=1;i=0;k-)swich(k)case 1: case 5:s+;break; case 3: case 4:break; case 0: case 2:s+=2;break;printf(s=%dn,s);7以下程序可计算10名学生1门课程的平均分,请填空。 float average( float array10 ) int i; float aver, sum = array0; for( i=1; i10; i+ ) 【1】; aver = sum /10; return aver; main() float score10, aver; int i; for( i=0; i=0|x100或x=0314 244%4.2f5126s=671 sum += arrayi或sum = sum+arrayi 或sum = arrayi +sum 2 &score i
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1