南开《C语言程序设计》期末考核参考答案.docx
- 文档编号:7143978
- 上传时间:2023-01-21
- 格式:DOCX
- 页数:12
- 大小:18.15KB
南开《C语言程序设计》期末考核参考答案.docx
《南开《C语言程序设计》期末考核参考答案.docx》由会员分享,可在线阅读,更多相关《南开《C语言程序设计》期末考核参考答案.docx(12页珍藏版)》请在冰豆网上搜索。
南开《C语言程序设计》期末考核参考答案
南开大学
《C语言程序设计》期末考核
2020年参考答案
一页试读
1.putchar函数可以向终端输出一个:
【选项】:
A整型变量表达式值
B实型变量值
C字符串
D字符或字符型变量值
【答案】:
D字符或字符型变量值|
2.以下对C语言中共用体类型数据的叙述正确的是()
【选项】:
A可以对共用体变量名直接赋值
B一个共用体变量中可以同时存放其所有成员
C一个共用体变量中不能同时存放其所有成员
D共用体类型定义中不能出现结构体类型的成员
【答案】:
C一个共用体变量中不能同时存放其所有成员|
3.在C语言中,char型数据在内存中的存储形式是()
【选项】:
A补码
B反码
C原码
DASCII码
【答案】:
DASCII码|
4.从用户使用的角度看,函数有两种,它们是()
【选项】:
A库函数和用户自定义函数
B库函数和主函数
C用户自定义函数和主函数
D主函数和子函数
【答案】:
A库函数和用户自定义函数|
5.若调用fputc函数输出字符成功,则其返回值是()
【选项】:
AEOF
B1
C0
D输出的字符
【答案】:
D输出的字符|
6.变量的指针,其含义是指该变量的()
【选项】:
A地址
B值
C名字
D标识
【答案】:
A地址|
7.main()
{intx=2,y=-1,z=2;
if(xy)
if(y0)z=0;
elsez+=1;
printf("%d\n",z);}以上程序的输出结果为()。
【选项】:
A3
B2
C1
D0
【答案】:
B2|
8.#includestdio.h
main(){
union{
longa;intb;charc;
}
m;
printf("%d\n",sizeof(m));
}以上程序的运行结果是()。
【选项】:
A2
B4
C6
D8
【答案】:
B4|
9.设有以下说明语句structstu{inta;
floatb;
}stutype;
则以下叙述不正确的是()
【选项】:
Astutype是用户定义的结构体类型名
Ba和b都是结构体成员名
Cstruct是结构体类型的关键字
Dstructstu是用户定义的结构体类型
【答案】:
Astutype是用户定义的结构体类型名|
10.若有以下定义语句:
inta[10]={1,2,3,4,5,6,7,8,9,10};
则下列哪个是对该数组元素的正确引用()
【选项】:
Aa[10]
Ba[a[3]-5]
Ca[a[9]]
Da[a[4]+4]
【答案】:
Da[a[4]+4]|
11.以下正确的叙述是()
【选项】:
A在C语言中,每行只能写一条语句
B若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数
C在C程序中,无论整数还是实数,都能被准确无误的表示
D在C程序中,%是只能用于整数运算的运算符
【答案】:
D在C程序中,%是只能用于整数运算的运算符|
12.关于return语句,下列说法正确的是()。
【选项】:
A不能在主函数中出现
B必须在每个函数中出现
C可以在同一个函数中出现多次
D只能在除主函数之外的函数中再出现一次
【答案】:
C可以在同一个函数中出现多次|
13.判断字符串a是否大于b,应当使用()
【选项】:
Aif(ab)
Bif(strcmp(a,b))
Cif(strcmp(b,a)0)
Dif(strcmp(a,b)0)
【答案】:
Dif(strcmp(a,b)0)|
14.下面程序段intk=2;
while(k==0){printf(“%d”,k);
k--;
}则下面描述中正确的是()。
【选项】:
Awhile循环执行10次
B循环是无限循环
C循环体语句一次也不执行
D循环体语句执行一次
【答案】:
C循环体语句一次也不执行|
15.已有定义inta=-2;
和输出语句:
printf("%8lx",a);
以下正确的叙述是:
【选项】:
A整型变量的输出格式符只有%d一种
B%x是格式符的一种,它可以适用于任何一种类型的数据
C%x是格式符的一种,其变量的值按十六进制输出,但%8lx是错误的
D%8lx不是错误的格式符,其中数字8规定了输出字段的宽度
【答案】:
D%8lx不是错误的格式符,其中数字8规定了输出字段的宽度|
16.#include“stdio.h”voidmain(){intsum=0,a=1;
while(a=10){sum=sum+a;
a++;
}printf(“sum=%d\n”,sum);
}以上程序段的运行结果是()
【选项】:
Asum=0
Bsum=55
Csum=10
Dsum=11
【答案】:
Bsum=55|
17.若执行fopen函数时发生错误,则函数的返回值是()
【选项】:
A地址值
Bnull
C1
DEOF
【答案】:
Bnull|
18.C语言结构体类型变量在程序执行期间()。
【选项】:
A所有成员一直驻留在内存中
B只有一个成员驻留在内存中
C部分成员驻留在内存中
D没有成员驻留在内存中
【答案】:
A所有成员一直驻留在内存中|
19.以下对一维整型数组a的正确说明是()
【选项】:
Ainta(10);
Bintn=10,a[n];
Cintn;
DdefineSIZE10inta[SIZE];
【答案】:
DdefineSIZE10inta[SIZE];
|
20.structperson{charname[9];
intage;
};
structpersonclass[10]={"John",17,"Paul",19,"Mary"18,"adam",16};
根据上面的定义,能打印出字母M的语句是()。
【选项】:
Aprintf("%c\n",class[3].name);
Bprintf("%c\n",class[3].name[1]);
Cprintf("%c\n",class[2].name[1]);
Dprintf("%c\n",class[2].name[0])
【答案】:
Dprintf("%c\n",class[2].name[0])|
21.x=-2;
y=-1;
if(x!
=0)if(x0)y=1;
elsey=0;
该程序段的输出结果为()。
【选项】:
A1
B0
C-1
D不确定
【答案】:
B0|
22.若以a+方式打开一个已存在的文件,则以下叙述正确的是()。
【选项】:
A文件打开时,原有文件内容不被删除,位置指针移到文件末尾,可作添加和读操作。
B文件打开时,原有文件内容被删除,位置指针移到文件开头,可作重新写和读操作。
C文件打开时,原有文件内容被删除,只可作写操作。
D以上各种说法皆不下确。
【答案】:
A文件打开时,原有文件内容不被删除,位置指针移到文件末尾,可作添加和读操作。
|
23.判断字符串a是否大于b,应当使用()
【选项】:
Aif(ab)
Bif(strcmp(a,b))
Cif(strcmp(b,a)0)
Dif(strcmp(a,b)0)
【答案】:
Dif(strcmp(a,b)0)|
24.main(){intx,y,z;
scanf(“%d%d%d”,&x,&y,&z);
printf(“x+y+z=%d\n”,x+y+z);
}输入数据的形式是25,13,10回车,则程序的输出结果是()
【选项】:
Ax+y+z=48
Bx+y+z=35
Cx+z=35
D不确定值
【答案】:
Ax+y+z=48|
25.for(i=2;
i==0;
)printf(“%d”,i--);
以上程序段的循环次数是()
【选项】:
A2次
B无限次
C0次
D1次
【答案】:
C0次|
26.被main函数调用的函数只能是库函数。
()
【选项】:
A错误
B正确
【答案】:
A错误|
27.字符常数和字符串常数的存储是相同的,都是以字符的ASCII码值进行存放。
()
【选项】:
A错误
B正确
【答案】:
A错误|
28.按现代风格设计的C程序中,main中对函数声明的信息与定义此函数时第一行的信息完全相同。
()
【选项】:
A错误
B正确
【答案】:
B正确|
29.在VisualC中,整型数据在内存中占2个字节。
()
【选项】:
A错误
B正确
【答案】:
A错误|
30.C语言采用解释方式将源程序转换为二进制的目标代码。
()
【选项】:
A错误
B正确
【答案】:
A错误|
31.C语言中没有依存于硬件的I/O语句。
()
【选项】:
A错误
B正确
【答案】:
B正确|
32.C语言中的任何类型数据都可进行四则运算。
()
【选项】:
A错误
B正确
【答案】:
A错误|
33.C语言中的标识符以字母或下划线开头,可跟任何字符。
()
【选项】:
A错误
B正确
【答案】:
A错误|
34.在TurboC++中,字符型数据在内存中占1个字节。
()
【选项】:
A错误
B正确
【答案】:
B正确|
35.PI可作为标识符使用。
()
【选项】:
A错误
B正确
【答案】:
B正确|
36.下面函数的功能是将字符变量的值插入已经按ASCII码值从小到大排好序的字符串中。
请完善该程序。
voidfun(char*w,charx,int*n){inti,p=0;
while(xw[p])##;
for(i=*n;
i=p;
i--)##;
w[p]=x;
##;
}
【选项】:
【答案】:
p++w[i+1]=w[i]++*n
37.以下程序是计算学生的年龄。
已知第一位最小的学生年龄为10岁,其余学生的年龄一个比一个大2岁,求第5个学生的年龄。
请完善该程序。
#includestdio.h
age(intn)
{intc;if(##)c=10;
elsec=##;
return(c);}
main()
{intn=5;
printf("age:
%d\n",##);
}
【选项】:
【答案】:
38.请写出下面程序的输出结果。
#includestdio.h
fun(intn,int*s)
{intf1,f2;
if(n==1||n==2)*s=1;
else{fun(n-1,&f1);
fun(n-2,&f2);
*s=f1+f2;}}
main()
{intx;fun(6,&x);
printf("%d\n",x);}
【选项】:
【答案】:
39.请写出下面程序的输出结果。
main(){inti,j,x=0;
for(i=0;i2;i++)
{x++;for(j=0;j-3;j++)
{if(j%2)continue;
x++;
}x++;
}printf("x=%d\n",x);}
【选项】:
【答案】:
40.请写出下面程序的输出结果。
#includestdio.hmain()
{inta[]={1,2,3,4,5};intx,y,*p;
p=&a[0];
x=*(p+2);y=*(p+4);
printf("%d,%d,%d\n",*p,x,y);
}
【选项】:
【答案】:
41.请写出下面程序的输出结果。
#includestdio.h
char*pp[2][3]={"abc","defgh","ijkl","mnopqr","stuvw","xyz"};
main()
{printf("%c\n",***(pp+1));
printf("%c\n",**pp[0]);
printf("%c\n",(*(*(pp+1)+1))[4]);
printf("%c\n",*(pp[1][2]+2));
printf("%s\n",**(pp+1));
}
【选项】:
【答案】:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言程序设计 南开 语言程序设计 期末 考核 参考答案
![提示](https://static.bdocx.com/images/bang_tan.gif)