赞
踩
19秋学期(1709、1803、1809、1903、1909)《C语言程序设计》在线作业-0002
试卷总分:100 得分:0
一、 单选题 (共 40 道试题,共 80 分)
1.设以下变量均为int类型,则值不等于7的表达式是( )
A.(x= y= 6, x+y,x+1)
B.(x= y= 6,x+y,y+1)
C.(x= 6,x+1,y= 6,x+y)
D.(y=6,y+l,x = y,x+1)
2.下面4个选项中,均是不合法的用户标识符的选项是( )
A.A P_0 do
B.float a0 _A
C.b-a 123 int
D._123 temp INT
3.当说明一个结构体变量时系统分配给它的内存是( )
A.各成员所需内存的总和
B.结构中第一个成员所需内存量
C.成员中占内存量最大者所需的容量
D.结构中最后一个成员所需内存量
4.若以”a+”方式打开一个已存在的文件,则以下叙述正确的是( )。
A.文件打开时,原有文件内容不被删除,位置指针移到文件末尾,可作添加和读操作。
B.文件打开时,原有文件内容被删除,位置指针移到文件开头,可作重新写和读操作。
C.文件打开时,原有文件内容被删除,只可作写操作。
D.以上各种说法皆不下确。
5.设有以下说明语句 struct stu {int a;float b;}stutype; 则以下叙述不正确的是( )
A.stutype 是用户定义的结构体类型名
B.a 和 b 都是结构体成员名
C.struct 是结构体类型的关键字
D.struct stu 是用户定义的结构体类型
6.x=-2; y=-1; if(x!=0) if(x>0) y=1; else y=0; 该程序段的输出结果为( )。
A.1
B.0
C.-1
D.不确定
7.printf函数中用到格式符%5s ,其中数字5表示输出的字符串占用5列。如果字符串长度大于5,则输出按方式( )
A.从左起输出该字串,右补空格
B.按原字符长从左向右全部输出
C.右对齐输出该字串,左补空格
D.输出错误信息
8.设有如下程序 # include main() { char ch1='A',ch2='a'; printf("%c\n",(ch1,ch2)); } 则下列叙述正确的为( )
A.程序的输出结果为大写字母A
B.程序的输出结果为小写字母a
C.运行时产生错误信息
D.格式说明符的个数少于输出项的个数,编译出错
9.在C语言中,char型数据在内存中的存储形式是( )
A.补码
B.反码
C.原码
D.ASCII码
10.下面程序段 int k=2; while (k==0) {printf(“%d”,k);k--;} 则下面描述中正确的是()。
A.while 循环执行 10 次
B.循环是无限循环
C.循环体语句一次也不执行
D.循环体语句执行一次
11.#include main() {union { long a; int b; char c;}m; printf("%d\n",sizeof(m));} 以上程序的运行结果是( )。
A.2
B.4
C.6
D.8
12.以下对C语言中共用体类型数据的叙述正确的是( )
A.可以对共用体变量名直接赋值
B.一个共用体变量中可以同时存放其所有成员
C.一个共用体变量中不能同时存放其所有成员
D.共用体类型定义中不能出现结构体类型的成员
13.在C语言中,要求运算数必须是整型的运算符是( )。
A./
B.&&
C.!=
D.%
14.main( ) {int n=4; while(n)printf("%d ",--n); } 以上程序的输出结果是( )。
A.2 0
B.3 1
C.3 2 1 0
D.2 1 0
15.若有以下定义语句:int a[10]={1,2,3,4,5,6,7,8,9,10}; 则下列哪个是对该数组元素的正确引用( )
A.a[10]
B.a[a[3]-5]
C.a[a[9]]
D.a[a[4]+4]
16.下列哪个是字符写函数( )。
A.fgetc
B.fputc
C.fgets
D.fwrite
17.若已有定义int x;下列说明指针变量p指向x的正确语句是( )
A.int p=&x;
B.int *p=&x;
C.int p=x;
D.int *p=x;
18.以下对一维整型数组 a 的正确说明是( )
A.int a(10) ;
B.int n=10,a[n];
C.int n;
D.define SIZE 10 int a[SIZE];
19.若执行fopen函数时发生错误,则函数的返回值是( )
A.地址值
B.null
C.1
D.EOF
20.以下不正确的语句为( )
A.if(x>y);
B.if(x>y){x++;y++;}
C.if(x=y)&&(x!=0)x+=y;
D.if(x!=y) scanf("%d",&x); else scanf("%d",&y);
21.关于return语句,下列说法正确的是( )。
A.不能在主函数中出现
B.必须在每个函数中出现
C.可以在同一个函数中出现多次
D.只能在除主函数之外的函数中再出现一次
22.一个源程序文件由一个或多个什么组成( )
A.语句
B.函数
C.程序块
D.子程序
23.在C语言中,int、char和short三种类型的数据在内存中所占用的字节数( )。
A.由用户自己定义
B.均为2个字节
C.是任意的
D.由所用机器的机器字长决定
24.从用户使用的角度看,函数有两种,它们是( )
A.库函数和用户自定义函数
B.库函数和主函数
C.用户自定义函数和主函数
D.主函数和子函数
25.以下符合C语言语法的赋值表达式是( )
A.d=9+e+f=d+9
B.d=9+e,f=d+9
C.d=9十e,e++,d十9
D.d=9十e++=d十7
26.main() {struct date {int year,month,day;}today; printf("%d\n",sizeof(struct date));} 以上程序的运行结果是( )
A.6
B.8
C.10
D.12
27.#include “stdio.h” void main() { int sum=0,a=1; while(a<=10) {sum=sum+a; a++; } printf(“sum=%d\n”,sum); } 以上程序段的运行结果是( )
A.sum=0
B.sum=55
C.sum=10
D.sum=11
28.数组名作为实参传递给形参时,数组名被处理为( )
A.该数组的长度
B.该数组的元素个数
C.该数组的首地址
D.该数组中各元素的值
29.以下叙述中错误的是:
A.变量的作用域取决于变量定义语句出现的位置
B.同一程序中,全局变量的作用域一定比局部变量的作用域大
C.局部变量的作用域是在定义它的函数体内
D.全局变量的作用域是从定义位置开始至源文件结束
30.若已有定义int x=2; int *p=&x;则*p的值为( )
A.2
B.&x
C.*x
D.&p
31.已知字母A的ASCII码为十进制数65,且定义c2为字符型变量,则执行语句c2='A'+'6'-'3';后,c2中的值为( )
A.D
B.68
C.不确定的值
D.C
32.变量的指针,其含义是指该变量的( )
A.地址
B.值
C.名字
D.标识
33.下面正确的字符常量是( )
A."c"
B."\\"
C.'W'
D.''(中间没有空格)
34.x=-1; do { x=x*x; } while (x); 以上程序段( )
A.是死循环
B.循环执行2次
C.循环执行1次
D.有语法错误
35.以下不正确的叙述是( )
A.在C程序中,逗号运算符的优先级最低
B.在C程序中,APH和aph是两个不同的变量
C.若a和b类型相同,在执行了赋值表达式a=b后b中的值将放人a中,而b中的值不变。
D.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值。
36.main() { int x,y,z; scanf (“%d%d%d”,&x,&y,&z); printf(“x+y+z=%d\n”,x+y+z); } 输入数据的形式是25,13,10,则程序的输出结果是( )
A.x+y+z=48
B.x+y+z=35
C.x+z=35
D.不确定值
37.已知学生记录描述为 struct student {int no; char name[20]; char sex; struct {int year; int month; int day;}birth;}; struct student s; 设变量s中的“生日”应该是“1984年11月11日”,下列对“生日”的正确赋值方式是( )。
A.year=1984; month=11; day=11;
B.birth.year=1984; birth.month=11; birth.day=11;
C.s.year=1984; s.month=11; s.day=11;
D.s.birth.year=1984; s.birth.month=11; s.birth.day=11;
38.已知p,p1为指针变量,a为数组名,i为整型变量,下列赋值语句中不正确的是( )
A.p=&i
B.p=p1
C.p=&a[i]
D.p=10
39.已知各变量的类型说明如下: int i=8,k,a,b; unsigned long w=5; double x=1.42,y=5.2; 则以下符合C语言语法的表达式是:
A.a十=a一=(b= 4)*(a=3)
B.a=a*3=2
C.x%(一3)
D.y=f1oat(i)
40.C语言结构体类型变量在程序执行期间( )。
A.所有成员一直驻留在内存中
B.只有一个成员驻留在内存中
C.部分成员驻留在内存中
D.没有成员驻留在内存中
二、 判断题 (共 10 道试题,共 20 分)
1.被main函数调用的函数只能是库函数。( )
A.错误
B.正确
2.PI可作为标识符使用。( )
A.错误
B.正确
3.在Turbo C++中,存储字符串常数时所占内存空间是不固定。( )
A.错误
B.正确
4.在C语言中,字母的大小写不被区分。( )
A.错误
B.正确
5.在C源程序中,/*与*/之间的注释信息也被编译,但对程序运行运果不发生影响。( )
A.错误
B.正确
6.C语言采用解释方式将源程序转换为二进制的目标代码。( )
A.错误
B.正确
7.对C语言中用到的任何一个变量都要规定其类型。( )
A.错误
B.正确
8.字符常数和字符串常数的存储是相同的,都是以字符的ASCII码值进行存放。( )
A.错误
B.正确
9.用C语言可直接进行位运算和取地址等运算,因此C语言是一种低级语言。( )
A.错误
B.正确
10.C语言中的任何类型数据都可进行四则运算。( )
A.错误
B.正确
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。