《C语言程序设计》试卷及答案。答案总结在文末。
目录
一、单选题
1. 一个 C 程序由若干个 C 函数组成,各个函数在文件中的位置为( )。
A.任意
B.第一个函数必须是主函数,其他函数任意
C.必须按照顺序排列
D.其他函数必须在前,主函数必须在最后
2.下列4组选项中,均不是C语言关键字的选项是( )。
A. define iF type B. getc char printf
C. include case scanf D. while go pow
3. 以下叙述不正确的是( )。
A.一个 c 源程序必须包含一个 main 函数
B.一个 c 源程序可由一个或多个函数组成
C.c 程序的基本组成单位是函数
D.在 c 程序中,注释说明只能位于一条语句的后面
4. 以下能正确定义整型变量a、b和c并赋初值5的语句是( )。
A. int a=b=c=5; B. int a,b,c=5;
C. int a=5,b=5,c=5; D. a=b=c=5;
5. 下面字符常量正确的是( )。
A.“c” B. “\\ ”
C.‘n’ D.‘ab’
6.putchar()函数可以向终端输出一个( )。
A. 字符或字符变量的值 B. 字符串
C. 实型变量 D. 整型变量的值
7.以下叙述正确的是( )。
A. 赋值语句中的“=”是表示左边变量等于右边表达式
B. 赋值语句是由赋值表达式加上分号构成的
C. 赋值语句中左边的变量值不一定等于右边表达式的值
D. x+=y;不是赋值语句
8.C语言用( )表示逻辑“真”值。
A. true B. t或y C. 非零整数值 D.整数0
9.若有以下语句,则( )是正确的描述。
char s1[ ]="China";
char s2[ ]={'C','h','i','n','a'};
A.s1数组和s2数组的长度相同 B.s1数组长度小于s2数组长度
C.s1数组长度大于s2数组长度 D.s1数组等价于s2数组
10.C语言中,while和do-while循环的主要区别是( )。
A. do-while的循环体至少无条件执行一次
B. while的循环控制条件比do-while的循环控制条件严格
C. do-while允许从外部转到循环体内
D. do-while的循环体不能是复合语句
11.下面程序段中,语句“k++;”执行的次数为( )。
for(k=0,m=4;m;m-=2)
for(n=1;n<4;n++)
k++;
A. 16 B.6 C. 12 D. 8
12.以下一维数组a的定义正确的是( )。
A.int a(10); B.int n=10,a[n];
C.int n; D.#define SIZE 10
scanf("%d",&n); int a[SIZE];
int a[n];
13.对以下说明语句的正确理解是( )。
int a[10]={1,2,3,4,5};
A.将5个初值依次赋给a[1]至a[5]。
B.将5个初值依次赋给a[0]至a[4]。
C.将5个初值依次赋给a[6]至a[10]。
D.因为数组长度与初值的个数不相同,所以此语句不正确。
14.不能把字符串"China"赋给数组b的语句是( )。
A.char b[10]={'C','h','i','n','a','\0'};
B.char b[10],b="China";
C.char b[10]; strcpy(b,"China");
D.char b[10]="China";
15.C语言规定函数的返回值的类型是由( )。
A.return语句中的表达式类型决定
B.调用该函数时的主调函数类型所决定
C.调用该函数时系统临时决定
D.在定义该函数时所指定的函数类型决定
二、判断题
1.C语言的源程序是由函数组成的。( )
2.分号是C语句之间的分隔符,不是语句的一部分。( )
3.C语言中,运算对象必须是整型数据的运算符是 %。( )
4.C语言编译时不检查语法。( )
5. break语句只能用于switch语句体中。( )
6.C语言中,Area与area是不同的标识符。( )
7.do-while语句构成的循环只能用break语句退出。( )
8.两个字符串中的字符个数相同时才能进行字符串大小的比较。 ( )
9.对for( 表达式1 ; ;表达式3)可理解为for(表达式1 ;0 ;表达式3) 。( )
10.if(x>y); 是正确的if语句。 ( )
三、填空题
1.开发C语言程序的步骤可以分成四步,即 、 、
、 。
2.转义字符“\n”的功能是______,转义字符“\r”的功能是_______。
3.运算符“%”两侧运算对象的数据类型必须都是________,运算符“++”和“--”的运算对象只能是_________。
4.while语句执行的特点是________,如果表达式的值一开始就为 时,则循环体一次也不执行。
5.C语言程序中定义一个函数由两部分组成,即 和 。
6.无返回值的函数应定义为 类型。函数可以嵌套调用,不可以嵌套 。
7.有参函数中,在定义函数时函数名后面括号中的变量名称为 ;在主调函数中调用一个函数时,函数名后面括号中的参数称为 。在调用时,将 的值传给 。
8.—般而言,一个C语言程序的执行是从 开始,到 结束。
四、程序阅读题
1.#include "stdio.h"
main()
{
printf("I love China!\n");
printf("We are students.\n");
}
#include<stdio.h>
main()
{
int a=2,b=3;
float x=3.9,y=2.3;
float r;
r=(float)(a+b)/.2+(int)x % (int)y;
printf("%f\n",r);
}
3.#include <stdio.h>
main()
{ int a=1,b=0;
Switch(a)
{ case 1:switch(b)
{ case 0:printf("郑州职业技术学院");
case 1:printf("软件工程系"); }
case 2:printf("软件技术");break;
case 3:printf("专业\n");
}
4.#include <stdio.h>
main()
{ int a[ ]={1,2,3,4},i,s=0,j=1;
for(i=3;i>=0;i--)
{
s=s+a[i]*j;
j=j*10;
}
printf("s=%d\n",s);
}
五、编程题
1.输入学生百分制成绩,输出相应等级。
cj<60 不及格
60≤cj<80 一般
80≤cj<90 良好
90≤cj 优秀
2.打印九九乘法表。
答案
一、单选题
1 A | 2 A | 3 D | 4 C | 5 C |
6 A | 7 B | 8 C | 9 C | 10 A |
11 B | 12 D | 13 B | 14 B | 15 D |
二、判断题
1√ | 2× | 3√ | 4× | 5× |
6√ | 7× | 8× | 9× | 10√ |
三、填空题
1 编辑、编译、连接、运行
2 回车换行、回车
3 整型、变量
4 先判断后执行、假
5 函数首部/函数说明,函数体
6 void、定义
7 形式参数、 实际参数 、 实际参数 、形式参数
8 main(或主函数),main(或主函数)
四、程序阅读题
1 程序运行结果为: I love China!
We are students.
2 程序运行结果为: 26.000000
3 程序运行结果为: 郑州职业技术学院软件工程系软件技术
4 程序运行结果为: s=1234
五、编程题
1 答案不唯一,完成即可。
#include <stdio.h>
main()
{
int mark,n;
printf("please input a score: ");
scanf("%d",&mark);
if(mark<0||mark>100)
{
printf("the score is error!\n");
exit(0); /* end */
}
n=mark/10;
switch(n)
{
case 10:
case 9:printf("the result is 优秀\n");break;
case 8:printf("the result is 良好\n");break;
case 7:
case 6:printf("the result is 一般\n");break;
default:printf("the result is 不及格\n");
}
}
2 答案不唯一,完成即可。
#include <stdio.h>
main( )
{ int i,j;
for(i=1;i<=9;i++)
{ for(j=1;j<=i;j++)
printf("%d×%d=%-3d",i,j,i*j);
printf("\n");}
}