c语言考题及答案1
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
printf(“*”); }
**** 五、编写程序(每小题15分,共30分) 1、输入三角形的三边长a,b,c,输出其面积area。提示:area= ( p a) * ( p b) * ( p c) , p=(a+b+c)/2 #include<stdio.h> #include<math.h> int main() { float a,b,c,area,p;
A. 'a' B. '\x41' C. '\101' D. "a"
5、若x、i、j和k都是int型变量,则计算下面表达式后,x的值是( C )。 x=(i=4,j=16,
k=32)
A. 4 B. 16 C.32 D.52
6、在以下一组运算符中,优先级最低的运算符是( D )。
A. * B. != C. + D. =
8、C语言变量的存储类别有自动变量auto、 static 、 extern 和寄存器变量register。
9、、设int i,j;
for(i=5;i>0;i--)
for(j=0;j<4;j++) {…}
则循环体执行次数是__20__。
三、程序填空(每小题2分,共14分)
1、学生成绩的字每等级和分数范围如下:
int i;
for (i=1;;i++);
printf(“%d”,i++);
A.1 B.2 C.3 D.陷入死循环,无输出结果
19、有以下程序段:
int i,j;
for(i=0;i<5;++i)
for(j=0;j<5;++j)
printf(“*”);
则执行以上的程序片段后,输出‘*’个数是( C ) A.15 B.10 C.25 D.20
}
}
2、输入字母,如果是大写,转换为小Leabharlann Baidu输出,反之转换为大写输出。
#include <stdio.h>
main( )
{
char ch;
scanf("%c",&ch);
if(ch>='a'&&ch<='z')
ch=ch-32;
else if(ch>='A'&&ch<='A')
ch=ch+32;
putchar(ch);
字母等级
分数范圈
A
90~100
B
80~89
C
70~79
D
60~69
E
0~59
其它字母
输入错误
输入字母等级之后,输出相应的分数范围。
#include <stdio.h>
main()
{
char score;
scanf("%c",&score);
switch(score)
{
case 'A': printf("A:90~100\n"); break;
D.从多层循环嵌套中退出时,只能使用goto语句
15、以下对C语言函数的有关描述中,正确的是( A )。
A. 调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参
B. C函数既可以嵌套定义又可以递归调用
C. 函数必须有返回值,否则不能使用函数
D. C程序中有调用关系的所有函数必须放在同一个源程序文件中
C.在for循环中,不能用break语句跳出循环体
D.for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来
14、以下正确的描述是( B )
A.continue语句的作用是结束整个循环的执行
B.只能在循环体内和switch语句体内使用break语句
C.在循环体内使用break语句或continue语句的作用相同
3、C语言中的实型变量分为两种类型,它们是 float 和 double 。
4、C控制语句有 9 种。
5、C语言本身不提供输入输出语句,其输入输出操作是由 函数 来实现的。
6、C语言共提供了三种用于实现循环结构的流程控制语句,它们是 while 、do while 和
for 。
7、函数调用时,若形式参数和实际参数均为变量名时,传递方式为 值 ;
case 'B': printf("B:80~89\n");break;
case 'C': printf("C:70~79\n");break;
case 'D': printf("D:60~69\n");break;
case 'E': printf("E:0~59\n");break;
default: printf("输入错误\n");
{ double z ;
z=x+y ; return z ; }
return z ; }
17、程序的三种基本结构是( B )。
A.顺序结构,循环结构,递归结构 B.顺序结构,循环结构,选择结构
C.选择结构,循环结构,递归结构 D.顺序结构,选择结构,递归结构
18、有以下程序片段,请问执行后的输出结果是( D )
scanf("%f,%f,%f",&a,&b,&c); p=(a+b+c)/2; area=sqrt((p-a)*(p-b)*(p-c)); printf("the area is %5.2f\n",area); return 0; }
2、输出九九乘法表 #include<stdio.h> int main() { int i,j; for(i=1;i<=9;i++) {for(j=1;j<=i;j++)
int num=0; while (num<=2) { printf("%d ",num); num++;} } 012 2、#include<stdio.h> int x; void cude() { x=x*x*x; } void main() { x=5; cude(); printf("%d\n",x); } 125 3、main() { int i; for(i=1;i<=4;i++)
A.do-while的循环体至少无条件执行一次
B.while的循环控制条件比do-while的循环控制条件严格
C.do-while允许从外部转到循环体内
D.do-while的循环体不能是复合语句
13、下面有关for循环的正确描述是( D )
A.for循环只能用于循环次数已经确定的情况
B.for循环是先执行循环体语句,后判断表达式
20、switch(表达式)语句中的“表达式”,允许的类型是( C )
A.float, int
B.float, int, char
C. int, char
D. char, double
二、填空题(每小题2分,共24分)
1、每个源程序有且只有一个 main 函数,系统总是从该函数开始执行C语言程序。
2、C 语言源程序文件的扩展名是 .cpp 。
printf("%d*%d=%d\t",j,i,i*j); if(i=j)
printf("\n");} return 0; }
2、 在 C 语言中,每个语句必须以( D )结束。
A. 回车符 B. 冒号 C. 逗号 D. 分号
3、C 语言规定:在一个源程序中,main函数的位置( C )。
A. 必须在最开始 B. 必须在系统调用的库函数的后面
C. 可以任意
D. 必须在最后
4、以下选项中,( D )是不正确的 C 语言字符型常量。
A.1 2 B.1 2
C.1,2 D.12
11、main()
{ int i = 10, j = 1;
printf("%d,%d\n",i- -, ++j);
}执行后输出结果是( B )
A. 9,2 B. 10,2 C. 9,1 D. 10,1
12、C语言中while和do-while循环的主要区别是( A )
16、以下正确的函数定义是( D ) 。
A.double fun(int x, int y)
B.double fun(int x,y)
{ z=x+y ; return z ; }
{ int z ; return z ;}
C.fun (x,y)
D.double fun (int x, int y)
{ int x, y ; double z ;
2011-2012 第二学期 C 语言期末试卷
一、选择题:(每小题1分,共20分)
1、一个C程序的执行是从( A )。
A.本程序的main函数开始,到main函数结束
B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
C.本程序的main函数开始,到本程序文件的最后一个函数结束
D.本程序文件的第一个函数开始,到本程序main函数结束
C. (x>=y>=z) D. (x>=y) || (y>=z)
9、若变量已正确说明为int类型,要给a、b、c输入数据,以下正确的输入语句是( D )
A.read(a,b,c) B.scanf(“%d%d%d”,a,b,c); C.scnaf(“%D%D%D”,&a,&b,&C); D.scanf(“%d%d%d”, &a,&b,&c); 10、执行语句scanf("%d,%d",&m,&n);使m和n的值分别为1和2,正确输入是( C )
}
3、输出1—100间偶数的和
#include <stdio.h> main( ) {
int i,sum; scanf("%d,%d",&i,&sum); for(i=2;i<=100; i++ )
sum=sum+i; printf("%d",sum); return 0;
} 四、写出程序运行结果(每小题4分,共12分) 1、#include<stdio.h> void main() {
7、了避免嵌套的if-else语句的二义性,C语言规定else总是
与( C )组成配对关系。
A. 缩排位置相同的if B. 在其之前未配对的if
C. 在其之前尚未配对的最近的if D. 同一行上的if
8、为表示关系x≥y≥z,应使用C语言表达式( A )
A. (x>=y)&&(y>=z) B. (x>=y)AND(y>=z)
**** 五、编写程序(每小题15分,共30分) 1、输入三角形的三边长a,b,c,输出其面积area。提示:area= ( p a) * ( p b) * ( p c) , p=(a+b+c)/2 #include<stdio.h> #include<math.h> int main() { float a,b,c,area,p;
A. 'a' B. '\x41' C. '\101' D. "a"
5、若x、i、j和k都是int型变量,则计算下面表达式后,x的值是( C )。 x=(i=4,j=16,
k=32)
A. 4 B. 16 C.32 D.52
6、在以下一组运算符中,优先级最低的运算符是( D )。
A. * B. != C. + D. =
8、C语言变量的存储类别有自动变量auto、 static 、 extern 和寄存器变量register。
9、、设int i,j;
for(i=5;i>0;i--)
for(j=0;j<4;j++) {…}
则循环体执行次数是__20__。
三、程序填空(每小题2分,共14分)
1、学生成绩的字每等级和分数范围如下:
int i;
for (i=1;;i++);
printf(“%d”,i++);
A.1 B.2 C.3 D.陷入死循环,无输出结果
19、有以下程序段:
int i,j;
for(i=0;i<5;++i)
for(j=0;j<5;++j)
printf(“*”);
则执行以上的程序片段后,输出‘*’个数是( C ) A.15 B.10 C.25 D.20
}
}
2、输入字母,如果是大写,转换为小Leabharlann Baidu输出,反之转换为大写输出。
#include <stdio.h>
main( )
{
char ch;
scanf("%c",&ch);
if(ch>='a'&&ch<='z')
ch=ch-32;
else if(ch>='A'&&ch<='A')
ch=ch+32;
putchar(ch);
字母等级
分数范圈
A
90~100
B
80~89
C
70~79
D
60~69
E
0~59
其它字母
输入错误
输入字母等级之后,输出相应的分数范围。
#include <stdio.h>
main()
{
char score;
scanf("%c",&score);
switch(score)
{
case 'A': printf("A:90~100\n"); break;
D.从多层循环嵌套中退出时,只能使用goto语句
15、以下对C语言函数的有关描述中,正确的是( A )。
A. 调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参
B. C函数既可以嵌套定义又可以递归调用
C. 函数必须有返回值,否则不能使用函数
D. C程序中有调用关系的所有函数必须放在同一个源程序文件中
C.在for循环中,不能用break语句跳出循环体
D.for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来
14、以下正确的描述是( B )
A.continue语句的作用是结束整个循环的执行
B.只能在循环体内和switch语句体内使用break语句
C.在循环体内使用break语句或continue语句的作用相同
3、C语言中的实型变量分为两种类型,它们是 float 和 double 。
4、C控制语句有 9 种。
5、C语言本身不提供输入输出语句,其输入输出操作是由 函数 来实现的。
6、C语言共提供了三种用于实现循环结构的流程控制语句,它们是 while 、do while 和
for 。
7、函数调用时,若形式参数和实际参数均为变量名时,传递方式为 值 ;
case 'B': printf("B:80~89\n");break;
case 'C': printf("C:70~79\n");break;
case 'D': printf("D:60~69\n");break;
case 'E': printf("E:0~59\n");break;
default: printf("输入错误\n");
{ double z ;
z=x+y ; return z ; }
return z ; }
17、程序的三种基本结构是( B )。
A.顺序结构,循环结构,递归结构 B.顺序结构,循环结构,选择结构
C.选择结构,循环结构,递归结构 D.顺序结构,选择结构,递归结构
18、有以下程序片段,请问执行后的输出结果是( D )
scanf("%f,%f,%f",&a,&b,&c); p=(a+b+c)/2; area=sqrt((p-a)*(p-b)*(p-c)); printf("the area is %5.2f\n",area); return 0; }
2、输出九九乘法表 #include<stdio.h> int main() { int i,j; for(i=1;i<=9;i++) {for(j=1;j<=i;j++)
int num=0; while (num<=2) { printf("%d ",num); num++;} } 012 2、#include<stdio.h> int x; void cude() { x=x*x*x; } void main() { x=5; cude(); printf("%d\n",x); } 125 3、main() { int i; for(i=1;i<=4;i++)
A.do-while的循环体至少无条件执行一次
B.while的循环控制条件比do-while的循环控制条件严格
C.do-while允许从外部转到循环体内
D.do-while的循环体不能是复合语句
13、下面有关for循环的正确描述是( D )
A.for循环只能用于循环次数已经确定的情况
B.for循环是先执行循环体语句,后判断表达式
20、switch(表达式)语句中的“表达式”,允许的类型是( C )
A.float, int
B.float, int, char
C. int, char
D. char, double
二、填空题(每小题2分,共24分)
1、每个源程序有且只有一个 main 函数,系统总是从该函数开始执行C语言程序。
2、C 语言源程序文件的扩展名是 .cpp 。
printf("%d*%d=%d\t",j,i,i*j); if(i=j)
printf("\n");} return 0; }
2、 在 C 语言中,每个语句必须以( D )结束。
A. 回车符 B. 冒号 C. 逗号 D. 分号
3、C 语言规定:在一个源程序中,main函数的位置( C )。
A. 必须在最开始 B. 必须在系统调用的库函数的后面
C. 可以任意
D. 必须在最后
4、以下选项中,( D )是不正确的 C 语言字符型常量。
A.1 2 B.1 2
C.1,2 D.12
11、main()
{ int i = 10, j = 1;
printf("%d,%d\n",i- -, ++j);
}执行后输出结果是( B )
A. 9,2 B. 10,2 C. 9,1 D. 10,1
12、C语言中while和do-while循环的主要区别是( A )
16、以下正确的函数定义是( D ) 。
A.double fun(int x, int y)
B.double fun(int x,y)
{ z=x+y ; return z ; }
{ int z ; return z ;}
C.fun (x,y)
D.double fun (int x, int y)
{ int x, y ; double z ;
2011-2012 第二学期 C 语言期末试卷
一、选择题:(每小题1分,共20分)
1、一个C程序的执行是从( A )。
A.本程序的main函数开始,到main函数结束
B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
C.本程序的main函数开始,到本程序文件的最后一个函数结束
D.本程序文件的第一个函数开始,到本程序main函数结束
C. (x>=y>=z) D. (x>=y) || (y>=z)
9、若变量已正确说明为int类型,要给a、b、c输入数据,以下正确的输入语句是( D )
A.read(a,b,c) B.scanf(“%d%d%d”,a,b,c); C.scnaf(“%D%D%D”,&a,&b,&C); D.scanf(“%d%d%d”, &a,&b,&c); 10、执行语句scanf("%d,%d",&m,&n);使m和n的值分别为1和2,正确输入是( C )
}
3、输出1—100间偶数的和
#include <stdio.h> main( ) {
int i,sum; scanf("%d,%d",&i,&sum); for(i=2;i<=100; i++ )
sum=sum+i; printf("%d",sum); return 0;
} 四、写出程序运行结果(每小题4分,共12分) 1、#include<stdio.h> void main() {
7、了避免嵌套的if-else语句的二义性,C语言规定else总是
与( C )组成配对关系。
A. 缩排位置相同的if B. 在其之前未配对的if
C. 在其之前尚未配对的最近的if D. 同一行上的if
8、为表示关系x≥y≥z,应使用C语言表达式( A )
A. (x>=y)&&(y>=z) B. (x>=y)AND(y>=z)