(2021.06.07)C语言程序设计A课程期末复习与考试要求(文本)
王宇:怎样才能学好程序语言?现在各种程序语言都很多,什么c语言啊 ,c++啊java ,c#啊,各种语言都很多 我们要从什么开始学习,怎么才能学好这些语言呢?以及以后的那个就业需要的知识。希望老师以及高手给予帮助!??
徐孝凯:要学好一门语言,它是学习计算机任何专业的基础.要使用计算机,就必须学会计算机能够理解的语言,以便执行相应的程序或命令.
黄乐:徐老师,课件视频只有一可以正常播放,其它都没反应。
徐孝凯:请咨询电大在线的网站!
吴耀:C语言很难,我们得好好学习
徐孝凯:回复:C语言――对的,要学习和上机操作相结合.
谢祚洲:我是新手,先来报到
徐孝凯:通过学习,很快会变为老手!
殷自胜:这门课考试是以什么形式进行?机试?笔试?
徐孝凯:笔试!
往届试卷供参考
中央广播电视大学
C语言程序设计A课程试卷(2)
题 号 | 一 | 二 | 三 | 四 | 五 | 总 分 |
得 分 | ||||||
2010.1.13底考
一、单选题(每小题2分,共20分)
1. 由C语言源程序文件编译而成的目标文件的默认扩展名为( )。
A. cpp B. c C. exe D. obj
2.设x和y均为逻辑值,则x || y为假的条件是x和y( )。
A. 均为真 B. 其中一个为真
C. 均为假 D. 其中一个为假
3. 枚举类型中的每个枚举常量的值都是一个( )。
A. 整数 B. 浮点数 C. 字符 D. 记录
4. 循环语句“for(i=0; i<=n; i++) S;”中循环体S被执行的次数为( )。
A. 1 B. n-1 C. n D. n+1
5. 假定有语句为“int a[4][5]={{1,3,5},{2,8}};”,则a[1][1]的值为( )。
A. 3 B. 5 C. 8 D. 10
6. 在下面的选项中,不能作为函数的返回值类型的是( )。
A. void B. node C. int D. long
7. 假定x的值为5,y的值为6,则表达式x++*--y的值为( )。
A. 25 B. 30 C. 36 D. 42
8. 用calloc函数创建具有10个整型元素的动态存储空间的正确调用是( )。
A. calloc(10,sizeof(char)) B. calloc(10)
C. calloc(10,sizeof(int)) D. calloc(20, sizeof(int))
9. 假定有语句“int b[10], *pb;”,则不正确的赋值为( )。
A. pb=b B.c语言struct头文件 pb=b[5] C. pb=b+2 D. pb=&b[0]
10. 标准输入设备的文件流标识符是( )。
A. stderr B. stdin C. stdout D. stdio
二、填空题(每小题2分,共26分)
1. 在一个C语言程序文件中,若要包含另外一个头文件或程序文件,则应使用的预处理命令为__________。
2. 用于从键盘上为变量输入值的标准输入函数的函数名为________。
3. 假定一个枚举类型的定义为“enum RA{ab,ac,ad,ae};”,则ad的值为________。
4.int类型的长度为________。
5. 执行“int x=45,y=8;printf("%d",x/y);”语句序列后得到的输出结果为________。
6. 把表达式x=x+y转换成复合赋值表达式为__________。
7. 假定x的值为5,则执行“a=(x>=6? 3: 8);”语句后a的值为________。
8. 假定一维字符指针数组的定义为“char* a[5];”,则该数组占用的存储空间的字节数为________。
9. 假定二维数组的定义为“double a[M][N];”,则数组元素的行下标取值范围在_________之间。
10. 空字符串的长度为________。
11. 在所有函数定义之外定义的变量,若没有被初始化则系统隐含对它所赋的初值为________。
12. 若p指向x,则________与x的表示是等价的。
13. 直接访问表达式(*fp).score所对应的间接访问表达式为____________。
三、写出下列每个程序运行后的输出结果(每小题6分,共30分)
1. #include<stdio.h>
void main() {
int i,s=0;
for(i=1;i<6;i++) s+=i*i;
printf(“s=%d\n”,s);
}
2. #include<stdio.h>
#define N 6
void main()
{
int i,a[N]={2,5,8,10,15,21};
for(i=0; i<N; i++)
if(a[i]%5==0) printf("%d ",a[i]);
printf("\n");
}
3. #include<stdio.h>
#include<string.h>
void main() {
int i;
unsigned int len=0;
char* a[5]={"student","worker","cadre","soldier","n123"};
for(i=0; i<5; i++)
if(strlen(a[i])>len) len=strlen(a[i]);
printf("len=%d\n",len);
}
4. #include<stdio.h>
void main()
{
int a,b;
for(a=2,b=3; a<15;) {
printf("%d %d ",a,b);
a=a+b;
b=a+b;
}
}
5. #include<stdio.h>
void LE(int* a, int* b) {
int x=*a;
*a=*b; *b=x;
}
void main() {
int x=15, y=26;
LE(&x,&y);
printf("%d %d\n",x,y);
}
四、写出下列每个函数的功能(每小题6分,共12分)
1. #include<stdio.h>
int SA(int a, int b) {
if(a>b) return 1;
else if(a==b) return 0;
else return -1;
}
函数功能:
2. void Output(struct IntNode *f) //f为单链表的表头指针
{
if(!f) return;
while(f) {
printf("%d ",f->data);
f=f->next;
}
printf("\n");
}
假定struct IntNode的类型定义为:
struct IntNode {int data; struct IntNode* next;};
函数功能:
五、按题目要求编写函数(每小题6分,共12分)
1. 编写一个函数,函数原型为“int fun4(char* ptr);”,请采用while循环求出由字符指针ptr所指向的字符串中包含的小写英文字母的个数,并把这个值作为函数值返回。
2. 编写一个主函数,计算并输出表达式1+22+32+...+102的值。
中央广播电视大学
C语言程序设计A课程试卷答案及评分标准(2)
(供参考)
一、单选题(每小题2分,共20分)
1. D 2. C 3. A 4. D 5. C
6. B 7. A 8. C 9. B 10. B
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论