2008 ~2009 学年第 2 学期期末考试。
c语言程序设计》试题(a)
适用班级:软件)
一、 填空题:(每空1分,共10分)
1. c语言中,字符串常量用括起来,字符串用___字符数组 __存储且以_ \0作为结束标志,字符串"ab23b\0"的长度是__5___
2. 表达式 (5>10) 的值为___0 __
3. 若有定义:char c=′′;则变量c中包含的字符个数为_1_ 。
4. 设x为float类型,y为int类型,则表达式x+y的结果为__float类型。
5. 若有定义char str=china”;则strlen(str)=_5 __数组str的长度是___6 __
6. c语言中,表示关系式x≥y≥z的表达式为__x>=y&&y>=z___
二、 选择题:(请将答案填入下面的答题**内。每题2分,共20分)
1. 程序具有如下功能:从键盘读入字符串(如“abc 123”和“china”),并存放在字符数组a中,然后输出。下面哪两个语句可以实现该输入输出功能( )
a. gets(a); printf(“%s”,a);
b. scanf(“%s”,&a);printf(“%c”,&a);
c. scanf(“%c”,a); printf(“%s”,a
d. scanf(“%s”,&a); puts(a);
2. 下列关于c语言用户标识符的叙述中正确的是()。
a.用户标识符中不可以出现中划线,但可以出现下划线。
b.用户标识符中可以出现下划线和中划线。
c.用户标识符可以出现下划线,但不可以放在用户标识符的。
开头。d.用户标识符中可以出现下划线和数字,它们都可以放在用。
户标识符的开头。
3. 设有:int x=11; 则表达式(x++*1/3)的值是()
a.4 b. 3 c. 11 d. 12
4. 若有定义int a=8,b=5,c; 执行语句c=a/b+0.4后,c的值是()。
a.1.4 b. 1c. 2.0 d. 2
5. 合法的数组定义是( )
a=a[5]=;
c. int a=
则以下叙述中正确的是()。
a. 循环控制表达式的值为0
b. 循环控制表达式不合法。
c. 循环控制表达式的值为1
d. 以上说法都不对。
7. 以下对c语言函数的有关描述中,正确的是()
a.c函数既可以嵌套定义,又可以递归调用。
b.函数必须有返回值,否则不能使用函数。
c.在c语言中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参。
d.c程序中有调用关系的所有函数必须放在同一个源程序文件。
中。8. 以下叙述中不正确的是()
a. 函数中的自动变量可以赋初值,每调用一次,赋一次初值。
b. 在调用函数时,实参和对应的形参在类型上需一致。
c. 静态存储变量如果没有赋初值,系统会自动初始化为0。
d. 静态存储变量每调用一次,赋一次初值。
9. 已知 int x=5,y=6,z=7; 则以下语句执行后,x、y、z的值为( )
if(x>y) z=x; x=y; y=z;
a. 5 6 7 b. 6 5 5
c. 5 6 5 d. 6 7 7
10. 在c语言中,下面()不是字符型常量。
a.’ab. ‘nc. ‘0x41’ d. “c”(字符常量用单引号括起来)
三、 判断题:(请将答案填入下面的答题**内。每题1分,共10分)
1. 用户自定义标识符不能与关键字相同。
2. c源程序必须经过编译、连接,才能得到可执行文件。
3. scanf()的格式中不能使用精度,例如scanf(“%9.2f”,&a);是错误的。
4. scanf(%d%d”,&a,&b); 输入的两个数据可以空格、tab、回车作为分隔符。
5. 在printf语句中使用f格式符输出实数时,并非全部数字都是有效数字。单精度实数的有效位数一般为7位。
6. 在左右花括号之间的一组语句,作为一个整体可以说是一个语句,称为复合语句或语句块。
7. 两个整型数相除,结果为实型。
8. 在switch语句中,case后面必须是常量表达式。其类型可以与switch后面表达式的类型不同。
9. continue语句的作用是结束循环,跳出循环体。
10. 函数调用时,实参和形参在个数、类型、顺序上不必一一对应。
四、 程序填空题:(共10分)
1. 程序功能:输出一个4位整数的后2位数值。例如,对于4位整数1324,应该输出24。(3分)
#include<>
main()
int value, m;
printf(“enter an integer<1000~9999>:”
scanf(“%d”,&value) ;从键盘读入value的值*/
m= value%100 ;
printf(“%d%d”, value,m);
2. 程序功能:键盘输入数组所有的元素,输出各元素的值。(3分)
main( )
int i=0;
float a[10];
while(i<10)
3. 程序功能:输出2个数中的最大值,将程序填写完整,并写出运行结果。(4分)
int max(int , int);
main()
int x,y;
scanf(“ d%d ”,x,&y
printf(“%d”,max(x,y));
int max(int a, int b)
int m=a;
if(b>a)
m=breturn m
五、 程序分析题:(每题5分,共25分)
1. 程序功能:接收键盘输入的整数,判断奇偶性,并输出结果。分析程序是否正确,如果有错,请改正。
#include<>
main( )
int x;
scanf(“%f”, x);
switch(x%2)
2. 写出下列程序的运行结果。
#include <>
main( )
char ch[20];
scanf(“%s”, ch);
printf(“%s”, ch);
putchar(‘a’);
输入:this is a test.(回车)
thisa3. 阅读程序,写出其基本功能和运行结果(□表示空格)
#include<>
#include<>
main( )
char str1[80], str2[80];
int m, n;
printf(“enter a text line:”);
gets(str1);
str2[0]=str1[0];
for(m=1,n=1;str1[m]!=0’;m++)
str2[n]=’0’;
puts(str2);
假设通过键盘输入:one□□□world□□□one□□□dream
从键盘接受一个字符串,去掉多余空格后,输出结果:one world one dream
4. 写出程序运行结果。
fun(int x)
if(x/2>0)
fun(x/2);
printf(“%d”,x);
main()
fun(6);
5. 程序功能:从键盘输入4个整数,计算并输出其平均值。分析程序是否正确,如果有误,请改正。
#include <>
main( )
int a,b,c,float **;
printf(“input a,b,c,d”);
scanf(“%d%d%d%d”,&a,&b,&c,&d);
**=(a+b+c+d)/4.0;
printf(“**=%f””,**);
六、 编程题(共25分)
1. 输入一个百分制成绩,输出成绩等级a,b,c,d,e,其中90-100分为a,80-89分为b,70-79分为c,60-69分为d,60分以下为e。对不合理的成绩,应输出出错信息。(10分)
#include <>
main()
float x;
scanf(“%f”,&x);
if(x<0||x>100);
printf(“error score!”)
elseswitch(x/10)
case 10:
case 9:printf(“grade:a”);break;
case 8:
printf(“grade: b”);break;
case 7:
printf(“grade: c”);break;
case 6:
printf(“grade: d”);break;
default:
printf(“grade: e”);
2. 通过调用自定义函数求2个整数的最大公约数和最小公倍数。要求:需要编写3个函数,即最大公约数函数、最小公倍数函数、main()函数。(15分)
#include<>
int yue(int x, int y);
int bei(int x, int y);
期末试卷A
重庆经贸职业学院2011 2012学年度1学期。期末试卷 a 答案。一 填空题 每空1分,共10分 1 一个完整的尺寸应由尺寸界线 尺寸线和尺寸数字三个要素构成。2 a4图纸的幅面尺寸是 297x210 3 俯视图是从上到下的投影识图。4 根据投射方向与轴测投影面夹角的不同,轴测图可分为正等侧图和斜...
期末试卷A
重庆经贸职业学院2011 2012学年度1学期。机械制图 期末试卷 a 出卷人 李东亚校对人 陈要牍考试时间 120分钟 使用班级 机电一体化1班。一 填空题 每空1分,共10分 1 一个完整的尺寸应由和三个要素构成。2 a4图纸的幅面尺寸是。3 俯视图是从到的投影识图。4 根据投射方向与轴测投影面...
g 信号与系统期末试卷2019 期末试卷
华南理工大学2005 2006学年度信号与系统试卷。班别学号姓名成绩。一 选择题 每小题3分,8题共24分 1所表征的系统不具有下列哪一特性 a.因果性 b.时变性。c.线性 d.稳定性。2己知一lti系统的和输入如图所示 h n2 nn设y n 为系统输出,则y 3 等于 a.0 b.1c.2.d...