C语言考试题及答案由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“c语言考试题及答案”。
C语言考试题
一、单项选择题(每题2分,共40分)
1、一个算法应该具有“确定性”等五个特性,下面对另外4个特性的描述中错误的是(B)
A、有零个或多个输入B、有零个或多个输出C、有穷性D、可行性
2、C语言中最简单的数据类型包括(B)
A、整型、实型、逻辑型B、整型、实型、字符型
C、整型、字符型、逻辑型D、整型、实型、逻辑型、字符型
3、设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是(D)
A、6.500000B、6
C、5.500000D、6.0000004、x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是(B)
A、INPUT x、y、z;B、scanf(“%d%d%d”,&x,&y,&z);
C、scanf(“%d%d%d”,x,y,z);D、read(“%d%d%d”,&x,&y,&z);
5、设 intx=1, y=1;表达式(!x||y--)的值是(B)。
A、0B、1C、2D、-
16、对两个字符数组a和b进行初始化char a[]=“ABCDEF”;char b[ ]={'A','B','C','D','E','F'};则以下叙述正确的是(D)。
A、a与b数组完全相同B、a与b长度相同
C、a和b中都存放字符串D、a数组比b数组长度长
7、为了避免在嵌套的条件语句if――else中产生二义性,c语言规定:else子句总是与(B)配对。
A、缩排位置相同的ifB、其之前最近的ifC、其之后最近的ifD、同一行上的if8、下面不正确的字符串常量是(A)
A、'abc'B、“12'12”C、“0”D、“”
9、以下错误的if语句是(C)。
A、if(x>y)z=x;
B、if(x= =y)z=0;
C、if(x!=y)printf(“%d”,x)else printf(“%d”,y);
D、if(x
10、若有说明:inta[3][4];则对a数组元素的非法引用是(D)。
A、a[0][2*1]B、a[1][3]C、a[4-2][0]D、a[0][4]
11、程序char c[5]={‘a’,’b’,’ ’,’c’c,’ ’};printf(“%s”,c);}的运行结果是(D)。
A、'a''b'B、abC、ab cD、ab12、一个C程序的执行是从(A)。
A、本程序的main函数开始,到main函数结束
B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
C、本程序的main函数开始,到本程序文件的最后一个函数结束
D、本程序文件的第一个函数开始,到本程序main函数结束
13、若变量已正确定义,以下非法的表达式是(B)
A、a/=b+cB、a%(4.0)C、a=1/2*(x=y=20,x*3)D、a=b=c14、判断字符串a是否大于b,应当使用(D)。
A、if(a>b)B、if(strcmp(a,b))C、if(strcmp(b,a)>0)D、if(strcmp(a,b)>0)
15、以下关于运算符优先顺序的描述中正确的是(C)。
A、关系运算符
B、逻辑与运算符
C、赋值运算符
D、算术运算符
16、使用语句scanf(“a=%f,b=%d”,&a,&b);输入数据时,正确的数据输入是:(A)
A、a=2.2,b=3B、a=2.2 b=3C、2.2 3D、2.2,317、表示关系12
A、(12
18、语句for(a=0,b=0;b!=100&&a
A、4B、6C、5D、119、设有如下定义:struct jan{int a;float b;}c2,*p;若有p=&c2;则对c2中的成员a的正确引用是:(B)
A、(*p).c2.aB、(*p).aC、p->c2.aD、p.c2.a20、下列程序的输出结果是(C)。
main()
{ int a=7,b=5;
printf(“%dn”,b=b/a);
}
A、5B、1C、0D、不确定值
二、填空题(每题2分,共30分)
1、一个C源程序中至少应包含一个main函数。
2、a是整型变量,则执行表达式a=25/3%3后a的值为。
23、C语言中的数组必须先定义,然后使用。
4、如果需要从被调用函数返回一个函数值,被调用函数必须包含return语句。
5、下面程序的运行结果是。
#include
main()
{ int i,x,y;
i=x=y=0;
do {++i;
if(i%2!=0){x=x+i;i++;}
y=y+i++;
} while(i
printf(“x=%d,y=%dn”,x,y);
}
运行结果是:x=1,y=206、引用C语言标准库函数,一般要用文件包含预处理命令将其头文件包含进来。
7、在C语言程序中,符号常量的定义要使用宏定义预处理命令。
8、逻辑运算符!是自右至左结合性。
9、在一个C源程序中,注释部分二侧的分界符为。/*和*/
10、C语言标识符由字母、数字和下划线来构造。
11、若int x=5;while(x>0)printf(“%d”,x--);的循环执行次数为5。
12、若有说明和语句:int a=5,b=6,y=6;b-=a;y=a++则b和y的值分别是1、20。
13、C程序设计的三种基本结构是顺序结构、选择结构、循环结构。
14、数组是表示类型相同的数据,而结构体则是若干类型不同数据项的集合。
15、设x,y,z均为int型变量,请写出描述“x或y中有一个小于z”的表达式。x
三、判断题(每题1分 共10分)
1、C语言程序总是从main()函数开始执行。(T)
2、执行程序段int a=-1,b=4,k;k=(++a
3、C语言程序由函数组成,它的主函数必须在其它函数之前,函数内可以嵌套定义函数。(F)
4、用C语言实现的算法可以没有输出但必须要有输入。(F)
5、C语言本身有输入输出语句。(F)
6、若有int a[3][5]={2,2},{2,6},{2,6,2}},则数组a共有7个元素。(F)
7、int a=24;printf(“%o ”, a);输出结果是30。(T)
8、C语言允许函数值类型缺省定义,此时该函数值隐含的类型是整形。(T)
9、在C语言中,字符串常量是用双引号括起来的一串字符。(T)
10、若有int a[5],*p=a;则p+2表示第2个元素的地址。(F)
四、编程题(每题5分,共20分)
1、计算并输出200-400之间不能被3整除的整数的和
#include
void main()
{int i,sum=0;
for(i=200;i
}
2、输入5个数,求和并输出。要求编写求和的函数。
#include
void main()
{
int b(int x[],int n);int sum=0;int a[5]={1,2,3,4,5};sum=b(a,5);
printf(“sum=%dn”,sum);
}
int b(int x[],int n)
{
int i,sum=0;for(i=0;i
return sum;
}
3、输入3个学生4门课的成绩{(60,70,65,75),(75,80,75,90),(95,75,90,65)},计算每个
学生的总分和平均成绩并输出,结果保留一位小数
#include
void main()
{int a[3][4]={{60,70,65,75},{75,80,75,90},{95,75,90,65}};int i,j;
float average,sum=0.0;
printf(“三个学生的总分和平均成绩依次为:n”);
for(i=0;i
}
4、起泡法(选择法)对十个数排序
#include
void main()
{
} int i,j,t;int a[10];printf(“请输入10个数:n”);for(i=0;ia[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;} for(i=0;i