|
西南交《高级语言程序设计A》在线作业二
奥鹏作业答案
奥鹏西南交通大学作业
一、单选题:
1.[单选题]sizeof(float)是 (满分:)
A. 一个双精度型表达式
B. 一个整型表达式
C. 一种函数调用
D. 一个不合法的表达式
正确答案:——B——
2.[单选题]C语言中运算对象必须是整型的运算符是() (满分:)
A. %
B. /
C. =
D. <=
正确答案:——A——
3.[单选题]请选出以下语句的输出结果 printf("%d\n",strlen("\t\"\065\xff\n")); (满分:)
A. 5
B. 14
C. 8
D. 输出项不合法,无正常输出
正确答案:——A——
4.[单选题]有如下程序: longfib(intn) {if(n>2)return(fib(n-1)+fib(n-2)); elsereturn(2); } main() {printf("%d\n",fib(3));} 该程序的输出结果是 (满分:)
A. 2
B. 4
C. 6
D. 8
正确答案:————
5.[单选题]下面用scanf语句获得从键盘输入的值,正确的语句是:() (满分:)
A. inta[12];scanf(“%d”,&a[1])
B. chara[12];scanf(“%s”,&a)
C. inta[12];scanf(“%d”,a[1])
D. inta;scanf(“%d”,a);
正确答案:————
6.[单选题]若有宏定义:#definePI3.14#defineS(r)PI*r*r则主函数中语句s2=S(r+3);宏替换后的结果为() (满分:)
A. s2=PI*r+3*r+3
B. s2=3.14*(r+3)*(r+3)
C. s2=3.14*r+3*r+3
D. s2=PI*r*r
正确答案:————
7.[单选题]在16位C编译系统上,若定义longa;,则能给a赋40000的正确语句是 (满分:)
A. a=20000+20000;
B. a=4000*10;
C. a=30000+10000;
D. a=4000L*10L
正确答案:————
8.[单选题]能正确表达逻辑关系"a≥5"且"a≤10"的C语言表达式是() (满分:)
A. a>=5ora<=10
B. a>=5|a<=10
C. a>=5&&a<=10
D. a>=5||a<=10
正确答案:————
9.[单选题]返回值为void的函数,其含义为() (满分:)
A. 调用函数之后,被调用的函数没有返回值
B. 调用函数之后,被调用的函数不返回
C. 调用函数之后,被调用的函数的返回值为任意的类型
D. 该类函数不允许被调用
正确答案:————
10.[单选题]下列程序的输出结果是 intb=2; intfunc(int*a) {b+=*a;return(b);} main() {inta=2,res=2; res+=func(&a); printf("%d\n",res); } (满分:)
A. 4
B. 6
C. 8
D. 10
正确答案:————
11.[单选题]函数Func的功能是()intFunc(char*ptr){char*p;p=ptr;while(*p++);return(p-ptr-1);} (满分:)
A. 比较两个字串的大小
B. 求字符串的长度
C. 将串ptr复制到p中
D. 以上三种说法都不对
正确答案:————
12.[单选题]以下说法中错误的是() (满分:) 奥鹏作业答案
A. a*=1;这个式子等价于a=a*1
B. a/=b+c;这个式子和a=a/b+c等价
C. a/=b-c;这个式子等价于a=a/(b-c)
D. a*=b;这个式子等价于a=a*b
正确答案:————
13.[单选题]以下程序的输出结果是 voidreverse(inta[],intn) {inti,t; for(i=0;i<n/2;i++) {t=a[i];a[i]=a[n-1-i];a[n-1-i]=t;} } main() {intb[10]={1,2,3,4,5,6,7,8,9,10};inti,s=0; reverse(b,8); for(i=6;i<10;i++)s+=b[i]; printf("%d\n",s); (满分:)
A. 22
B. 10
C. 34
D. 30
正确答案:————
14.[单选题]有以下程序: #include unionpw {inti; charch[2];}a; main() {a.ch[0]=13;a.ch[1]=0;printf("%d\n",a.i);} 程序的输出结果是 (满分:)
A. 13
B. 14
C. 208
D. 209
正确答案:————
15.[单选题]在16位IBM-PC机上使用C语言,若有如下定义 structdata {inti; charch; doublef; }b; 则结构变量b占用内存的字节数是 (满分:)
A. 1
B. 2
C. 7
D. 11
正确答案:————
16.[单选题]若有以下程序 #include inta[]={2,4,6,8}; main() {inti; int*p=a; for(i=0;i<4;i++)a[i]=*p; printf("%d\n",a[2]); } 上面程序输出结果是 (满分:)
A. 6
B. 8
C. 4
D. 2
正确答案:————
17.[单选题]以下叙述中不正确的是 (满分:)
A. 在不同的函数中可以使用相同的名字的变量
B. 函数中的形式参数是局部变量
C. 在一个函数内定义的变量只在本函数范围内有效
D. 在一个函数内的复合语句中定义的变量在本函数范围内有效
正确答案:————
18.[单选题]以下不正确的叙述是 (满分:)
A. 在C程序中,逗号运算符的优先级最低
B. 在C程序中,APH和aph是两个不同的变量
C. 若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变
D. 当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值
正确答案:————
19.[单选题]下面程序段的运行结果是 char*format="%s,a=%d,b=%d\n"; inta=11,b=10; a+=b; printf(format,"a+=b",a,b); (满分:)
A. for,"a+=b",ab
B. format,"a+=b"
C. a+=b,a=21,b=10
D. 以上结果都不对
正确答案:————
20.[单选题]C语言表示逻辑假的方法是() (满分:)
A. FALSE
B. 0
C. 1
D. NULL
正确答案:————
21.[单选题]若有以下说明语句,且0<=i<=10,则()是对数组元素的错误引用。inta[]={1,2,3,4,5,6,7,8,9,0},*p,i;p=a; (满分:)
A. *(a+i)
B. p+i
C. a
D. *(&a)
正确答案:————
22.[单选题]有定义staticinta[]={1,2,3,4},*p;执行语句p=a+2;后,表达式*p的值为() (满分:)
A. 4
B. 1
C. 2
D. 3
正确答案:————
23.[单选题]执行以下程序后,a,b的值分别为 main() {inta,b,k=4,m=6,*p1=&k,*p2=&m; a=p1==&m; b=(*p1)/(*p2)+7; printf("a=%d\n",a); printf("b=%d\n",b); } (满分:)
A. -1,5
B. 1,6
C. 0,7
D. 4,10
正确答案:————
24.[单选题]若有如下说明chara[10]={‘a’,’b’,’c’,’d’,’e’,’f’,’g’,’h’,’i’,’j’},*p=a;则输出表达式*(p+8),即printf("%c"",*(p+8));得到() (满分:)
A. g
B. h
C. i
D. j
正确答案:————
25.[单选题]阅读以下程序及对程序功能的描述,其中正确的描述是 #include main() { FILE*in,*out; charch,infile[10],outfile[10]; printf("Entertheinfilename:\n"); scanf("%s",infile); printf("Entertheoutfilename:\n"); scanf("%s",outfile); if((in=fopen(infile,"r"))==NUL (满分:)
A. 程序完成将磁盘文件的信息在屏幕上显示的功能
B. 程序完成将两个磁盘文件合二为一的功能
C. 程序完成将一个磁盘文件复制到另一个磁盘文件中
D. 程序完成将两个磁盘文件合并并在屏幕上输出
正确答案:————
二、多选题:
26.[多选题]以下说法不正确的是______。 (满分:)
A. 定义函数时,形参的类型说明可以放在函数体内
B. return后边的值不能为表达式
C. 如果函数值的类型与返回值表达式的类型不一致,以函数值类型为准
D. 如果形参与实参的类型不一致,以实参类型为准
正确答案:————
27.[多选题]以下对一维数组a进行初始化,错误的语句是______。 (满分:)
A. inta[10]=(0,0,0,0,0);
B. inta[10]={
C. inta[10]={0
D. inta[2]={10,9,8
正确答案:————
28.[多选题]以下对C语言函数的有关描述中,错误的是:______。 (满分:)
A. 调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参
B. 函数既可以嵌套定义又可以递归调用
C. 函数必须有返回值,否则不能使用函数
D. 程序中有调用关系的所有函数必须放在同一个源程序文件中
正确答案:————
29.[多选题]关于文件的打开方式描述正确的是:______。 (满分:)
A. r:打开只读文件
B. a+:打开或建立用于更新数据的文件,数据追加到文件尾
C. a:打开或建立一个把数据追加到文件尾的文件
D. r+:打开用于更新数据的文件
正确答案:————
30.[多选题]对函数的正确使用方法描述 (满分:)
A. A、用数组做函数参数时,必须在主调函数和被调函数中分别定义数组
B. B、实参数组元素和形参数组元素类型可以不一致
C. C、形参数组长度可以不指定
D. D、形参数组长度可以大于实参数组长度
正确答案:————
31.[多选题]不与while(x)语句中的x等价的是_____。 (满分:)
A. x==0
B. x==1
C. x!=1
D. x!=0
正确答案:————
32.[多选题]C语言中函数返回值的类型与下列哪项无关? (满分:)
A. 定义函数时所指定的函数类型
B. 调用函数时临时
C. 调用该函数的主函数类型
D. return语句中的表达式类型
正确答案:————
33.[多选题]对静态变量的正确描述 (满分:)
A. 静态局部变量在静态存储区内分配单元()
B. 静态外部变量可以赋初值,也可以不赋初值
C. 静态外部变量的作用与外部变量相同
D. 静态局部变量在函数调用结束时,仍保存其值,不会随着消失。
正确答案:————
34.[多选题]关于实参和形参的说法正确的是______。 (满分:)
A. 在定义函数中指定的形参,在未出现函数调用时,它们并不占内存中的存储单元
B. 实参可以是变量、常量或表达式
C. 实参与形参的类型应相同或赋值兼容
D. 实参变量对形参变量的数据传递是“值传递”
正确答案:————
35.[多选题]以下正确的C语言标识符是_____。 (满分:)
A. ABC
B. abc
C. a_bc
D. ab.c
正确答案:————
36.[多选题]下列关于#include命令的叙述中,正确的是______。 (满分:)
A. 一个#include命令中只能指定一个被包含文件
B. 一个#include命令中可以指定多个被包含文件
C. 一个被包含文件中又可以包含另一个被包含文件
D. #include命令中,文件名可以用双引号或尖括号括起来
正确答案:————
37.[多选题]函数调用可以______。 (满分:)
A. 出现在一个表达式中
B. 出现在执行语句中
C. 作为一个函数的实参
D. 作为一个函数的形参
正确答案:————
38.[多选题]关于静态局部变量的说明正确的是______。 (满分:)
A. 静态局部变量存储在静态存储区
B. 静态局部变量是在编译时赋初值的,即只赋一次值,在程序运行时它已有初值
C. 若在定义局部变量时不赋初值,则编译时自动赋初值为0或空字符
D. 虽然静态局部变量在函数调用结束后仍然存在,但其他函数是不能引用它的
正确答案:————
39.[多选题]已知:intx,a,b;下列选项中正确的if语句是______。 (满分:)
A. if(a=b)x++;
B. if(a=<b)x++;
C. if(a-b)x++;
D. if(x)x++;
正确答案:————
40.[多选题]设有如下定义:int(*ptr)();则以下叙述中不正确的是______。 (满分:)
A. ptr是指向一维数组的指针变量
B. ptr是指向int型数据的指针变量
C. ptr是指向函数的指针,该函数返回一个int型数据
D. ptr是一个函数名,该函数的返回值是指向int型数据的指针
正确答案:————
三、判断题:
41.[判断题]C程序的执行总是从第一个定义的函数开始 (满分:)
A. 错误
B. 正确
正确答案:————
42.[判断题]模运算符要求两侧均应为整型数据。() (满分:)
A. 错误
B. 正确
正确答案:————
43.[判断题]若打开文件的方式为“w”而该文件已经存在,则文件中原有数据被清除。 (满分:)
A. 错误
B. 正确
正确答案:————
44.[判断题]语句intpt中的*pt是指针变量名。 (满分:)
A. 错误
B. 正确
正确答案:————
45.[判断题]数据结构指的是数据的组织形式,数组就是一种数据结构() (满分:)
A. 错误
B. 正确
正确答案:————
46.[判断题]静态外部变量既可以在文本文件中引用,也可以在其它文件引用 (满分:)
A. 错误
B. 正确
正确答案:————
47.[判断题]使用getchar函数可以不添加#include<stdio.h>命令。() (满分:)
A. 错误
B. 正确
正确答案:————
48.[判断题]对于double类型数组,不可以直接用数组名对数组进行整体输入或输出。 (满分:)
A. 错误
B. 正确
正确答案:————
49.[判断题]C语言编译系统在给出逻辑运算结果时,以数值1代表真,以0代表假,但在判断一个量是否为“真”时,以0代表假,以非0代表真。() (满分:)
A. 错误
B. 正确
正确答案:————
50.[判断题]switch语句中,各个case和default的出现次序不影响执行结果。() (满分:)
A. 错误
B. 正确
正确答案:————
奥鹏作业答案
奥鹏西南交通大学作业
|
|