1、 “C 语言程序设计”模拟试题十五一、填空与选择1.C 语言从源程序的书写到上机运行输出结果要经过_四个步骤。2.C 语言的表达式与语句的区别在于 _.3.C 语句_ (有、没有)输入、输出语句。4.结构化程序的编写有_三种程序结构。5.C 语言中,变量的存储类别共有四种,即时 _和寄存器型。6.表达式 10/3*9/2的值是_.7.设有“int x=2,y” 说明,则逗号表达式“y=x+5,x+y”的值是_.8.设有“int x=1”,则“x0?2*x+1: 0”表达式的值是_.9.变量 Y 满足以下两条件中的任意一个: 能被 4 整除,但不能被 100 整除;能被400 整除。请用逻辑表达
2、式表示所给条件。_10.C 语言调用函数中,参数的虚实结合是 _A.传值 B.传址 C.不分11. 逻辑运算符“&、| 、!” 中是短路运算符号是_12. C 语言是由_ 基本单位组成的。A.过程 B.语句 C.函数 D.程序13.有如下语句: X+Y*Z39 & X*Z|Y*Z 是什么表达式 _A.算术表达式 B.逻辑表达式 C.关系表达式 D.字符表达式14.若进入 TC 集成环境后,运行( RUN)源程序系统提示包含文件(Include )或库文件(Lib) 无法定义时,应修改 TC 菜单中的哪一项中的哪个子菜单项?A.FileChange B. FileDirectoryC. Opti
3、onDirectories D.TC 系统出故障了,应重新安装 TC 环境。15.下面几种说法中哪个是正确的?_A.else 语句需与它前面的 if 语句配对使用;B.else 语句需与前面最接近它的 if 语句配对使用;C.else 语句需与前面最接近它的,且没有和其它 else 语句配对的 if 语句配对;D.以上都正确。转贴于:自考_考试大 16.定义结构体的关键字是_A. union B. enum C.struct D.typedef17.定义联合体的关键字是_18.链表的首指针能根据程序的需要进行移动读取链表中的某项内容,即链表可以没有首指针吗?A.当然可以 B.不可以 C.无所谓
4、 D.最好不要移动首指针19.定义一个数组 a 是一个具有 3 个元素的指针数组,它的定义语句格式是_A. (*a)3B. *a2C. *a3D.以上写法都不对。20.有说明语句:char a =“this is a book”。请问该数组到底占了几个字节? _A.11 B.12 C.14 D.1521.设整型变量 a 为 5,使 b 不为 2 的表达式是_A. b=a/2 B. b=6-( a) C. b=a%2 D.b=a3?2:122.设整型变量 n 的值为 2,执行语句“n+=n-=n*n”后,n 的值是_A.0 B.2 C.-4 D. 423.设 A,B 均为整型变量,下列表达式中不
5、是赋值表达式的是_A. A=b+3,b+5,b B. A=4*5; C. A=+A-B D.a=b=524.执行语句“x=(a=3,b=a)”后,x,a ,b 的值依次为 _A. 3, 3, 2 B. 3,2,2 C.3,2,3 D.2,3,225.下列对数组操作不正确的语句是_A. int a5;B.char b =h,e,l,l,o;C. int a =2,3,4,5;D. char b3 =1,2, 3,4,5,6;26.设 A 为存放短整型的一维数组,如果 A 的首地址为 P,那么 A 中第 I 个元素的地址为_A. P+I*2B. P+(I-1)*2C. P+(I-1)D. P+I2
6、7.如果 X=5,执行语句 X*=X+=X*3 后,则 X 的值为_A.100 B. 400 C. 450 D. 90028.下列常量中哪个是不合法的_A.2e32.6 B. 0.2e-5 C. “basic” D. 0x4b0029.下列标识符错误的是_A. x1y B._123 C. 2ab D. _ab30. c 语言中 int 型数-8 在内存中的存储形式为_A.1111111111111000 B. 1000000000001000C. 0000000000001000 D. 1111111111110111 二、读程序1.写出下列程序段的输出结果:main ()int x=5;in
7、t y=10;printf(“%dn”,x+ );printf(“%dn”,+y ); 2.写出下列程序的输出结果:main ()int x,y,z;x=y=z=-1;printf(“x=%dty=%dtz=%dn”,x,y,z);+y&+x|+z;printf(“x=%dty=%dtz=%dn”,x,y,z);x=y=z=-1;+x|y+&z ;printf(“x=%dty=%dtz=%dn”,x,y,z);3.下面程序的输出结果是什么?#include “stdio.h”main () int x=3;switch(x) case 1:case 2:printf (“x3n” );defa
8、ult:printf (“x unknown”); 4.标记出变量 p、q、 a、b、c、x、y 和 c1 的作用范围和变量性质(局部、全局)int p=1,q=5 ;float f1(int a)int b,c;char ch; 局部变量 ch 在此范围内有效char c1;char f2(int x,int y)int i,j;5.根据源程序,写出相应的数学表达式#include “stdio.h”main ()int x,y;scanf(“%d”,&x);if (x*pb)p=pa,pa=pb,pb=p;if (*pa*pc )p=pa,pa=pc ,pc=p;if (*pb*pc)p=pb,pb=pc,pc=p;printf(“%d b=amn; c=m;d=n; printf(“a%f%f=%f”c,d,acd,); 2.N 个学生,每个学生的信息包括学号、性别,从键盘上输入 N 个学生的信息,要求输出学号、性别等信息。struct abc char a20;char b; main ()struct abc stud110;int a;for(a=0;a10;a+ )scanf(“%s”,a);