沈建理学院2011年C语言试题
- 格式:doc
- 大小:74.50 KB
- 文档页数:3
共6页 第1页 共6页 第2页
准考证号
专业班级
姓 名
注意事项:
1.请命题教师于考试前
7天将试题交本学院,
由各学院统一保管。
2.每道大题如有若干个小题,应注明每道小题的分数,例如:填空(每空1分共15分)。
3.在主观性试题的标准答案中,必须注明得分点的分值,分步给分。
4.书写时请在上、下、左、右的边缘处至少留出10毫米的空白,以免造成制卷的困难,并请注明页数。
5.用计算机打印试题,
并注意试题字体大小、色带的颜色深度(过浅制版不清)。
如有不符要求的试题,予以返回。
系(教研室)主任:
教学院长审批:
年 月 日 装
订
线`` 沈阳建筑大学学生期末考试试卷
题号 一 二 三 四 五 六 七 八 九 十 十一 总分
得分
jin
20 12 年 春 季学期
科目: C语言与程序设计(A卷) 适用年级、专业: 2011级信息与计算科学专业
(本题15分)选择题(每小题3分),每4个选择中只有一个是正确的,并把答案填在本题末尾的圆括号中.
1. 计算机只能识别和接受由 组成的机器指令。 ( )
A. 0和1 B. 0和2 C. 1和2 D. 0、1和2
2. 一个有效算法至少有 个输出。 ( )
A. 0 B. 1 C. 2 D. 3
3. 在C语言中,每个C语句最后的一个符号必须是 。 ( )
A. „ B. , C. ; D. :
4. 三种基本结构指的是 。 ( )
A. 顺序结构、选择结构和直到结构 B. 顺序结构、选择结构和分支结构
C. 顺序结构、选择结构和当型结构 D. 顺序结构、选择结构和循环结构
5. 一个C语言程序由一个或多个源程序 组成。 ( )
A. 文件 B. 库函数 C. 主函数 D.被调用函数
(本题15分)判断对错,每小题3分. 把“对”或“错”答案填在每题后面的圆括号中.
1. C语言的程序总是从main主函数开始执行的。 ( )
2. 在程序执行过程中,可以修改符号常量的值。但是,字面常量的值是不能修改的。
( )
3. C语言规定标识符只能由字母、数字和下划线组成,且第一个字符必须为字母或下划线。 ( )
4. 在C语言的循环体中,执行continue语句后,可以跳出执行的循环体,接着执行循环体后面的语句。 ( )
5. 在C语言中,goto语句可以改变程序的顺序执行过程,但是,几乎不使用该语句。
( )
(本题10分)填空题(每空2分)。
1. 在C语言中,一个函数包含两部分,其中的一部分叫函数体,而其中的另一部分是函数 。
2. 在选择语句“if(表达式) 语句; ”中的“表达式”可以是逻辑表达式、数值表达式或者是 表达式 。
3. C语言系统默认的字符数组的结束标志是 。
4. 如果一个函数只能被本文件中其他函数所调用,我们就称其为 函数。
5. 一个变量的地址称为该变量的 。
(本题10分)有3个整数a,b,c,由键盘输入。试编写一个程序,输出
其中最大的数。
(本题10分) 输出所有的“水仙花数”,所谓“水仙花数”是指一个3位正
整数,其各位数立方和等于该数本身。例如,153是一个水仙花数,因为
153=13+53+33
一、 得分
三、 得分 四、 得分
二、 得分
五、 得分
共6页 第3页 共6页 第4页
装
订
线``
(本题10分)试编写一个递归函数,用于计算2+4+6+„+2n的和。
(本题10分)试建立一个链表,每个结点包括姓名和C语言成绩。在建立链表时,请按照C语言成绩由低到高的顺序录入每个结点的值;但是,在输出时,要求按照C语言成绩从高到低的顺序输出每个结点的值,要求输出链表的值。
七、 得分
六、 得分
共6页 第5页 共6页 第6页
装
订
线``
(本题10分)读下面的程序,对程序的第7、15、17和20行进行注释,并写出程序的执行结果。如果从键盘输入的是:computer#
#include
#include
void main()
{
FILE *fp;
char ch;
fp=fopen("test.dat","w");
if(fp==NULL)
{
printf("cannot create test.dat file.\n");
exit(0);
}
printf("please input a string characters:\n");
ch=getchar();
while(ch!='#')
{
fputc(ch,fp);
ch=getchar();
}
fclose(fp);
}
(本题10分)读下面的程序,请写出程序的执行结果,并注释程序第7和第8
行的含义。
#include
#include
void main()
{
char str[3][20]={"HOLLAND","CHINA","RUSSIA"};
int k=0;
if(strcmp(str[1],str[0])>0)
k=1;
if(strcmp(str[2],str[k])>0)
k=2; printf("\nThe largest string is:\n%s",str[k]);
}
九、 得分 八、 得分