收藏 分销(赏)

c语言考题及答案.doc

上传人:w****g 文档编号:7209709 上传时间:2024-12-28 格式:DOC 页数:5 大小:39.54KB 下载积分:6 金币
下载 相关 举报
c语言考题及答案.doc_第1页
第1页 / 共5页
c语言考题及答案.doc_第2页
第2页 / 共5页


点击查看更多>>
资源描述
(完整版)c语言考题及答案 2011—2012第二学期C语言期末试卷 一、选择题:(每小题1分,共20分) 1、一个C程序的执行是从( A ). A。本程序的main函数开始,到main函数结束 B。本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C。本程序的main函数开始,到本程序文件的最后一个函数结束 D。本程序文件的第一个函数开始,到本程序main函数结束 2、 在 C 语言中,每个语句必须以( D )结束。 A。  回车符    B。  冒号    C.  逗号    D。  分号 3、C 语言规定:在一个源程序中,main函数的位置( C )。 A. 必须在最开始      B。 必须在系统调用的库函数的后面 C。 可以任意       D。  必须在最后 4、以下选项中,( D )是不正确的 C 语言字符型常量。 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. =  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) 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 ) 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 ) A.do-while的循环体至少无条件执行一次 B。while的循环控制条件比do—while的循环控制条件严格 C.do-while允许从外部转到循环体内 D。do—while的循环体不能是复合语句 13、下面有关for循环的正确描述是( D ) A.for循环只能用于循环次数已经确定的情况 B。for循环是先执行循环体语句,后判断表达式 C。在for循环中,不能用break语句跳出循环体 D。for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来 14、以下正确的描述是( B ) A.continue语句的作用是结束整个循环的执行 B.只能在循环体内和switch语句体内使用break语句 C。在循环体内使用break语句或continue语句的作用相同 D。从多层循环嵌套中退出时,只能使用goto语句 15、以下对C语言函数的有关描述中,正确的是( A )。 A。 调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参 B。 C函数既可以嵌套定义又可以递归调用 C。 函数必须有返回值,否则不能使用函数 D。 C程序中有调用关系的所有函数必须放在同一个源程序文件中 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 ; { double z ;     z=x+y ; return z ; } return z ; } 17、程序的三种基本结构是( B )。 A.顺序结构,循环结构,递归结构 B。顺序结构,循环结构,选择结构 C.选择结构,循环结构,递归结构 D.顺序结构,选择结构,递归结构 18、有以下程序片段,请问执行后的输出结果是( D ) 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 20、switch(表达式)语句中的“表达式”,允许的类型是( C ) A.float, int B.float, int, char C。 int, char D。 char, double 二、填空题(每小题2分,共24分) 1、每个源程序有且只有一个  main 函数,系统总是从该函数开始执行C语言程序。 2、C 语言源程序文件的扩展名是 。cpp 。 3、C语言中的实型变量分为两种类型,它们是 float 和 double 。 4、C控制语句有 9 种. 5、C语言本身不提供输入输出语句,其输入输出操作是由 函数 来实现的。 6、C语言共提供了三种用于实现循环结构的流程控制语句,它们是 while 、do while 和for 。 7、函数调用时,若形式参数和实际参数均为变量名时,传递方式为 值 ; 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、学生成绩的字每等级和分数范围如下: 字母等级 分数范圈 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; 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"); } } 2、输入字母,如果是大写,转换为小写输出,反之转换为大写输出。 #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); } 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() { int num=0; while (num<=2) { printf(”%d ",num); num++;} } 0 1 2 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++) printf(“*”); } **** 五、编写程序(每小题15分,共30分) 1、输入三角形的三边长a,b,c,输出其面积area。提示:area= ,p=(a+b+c)/2 #include<stdio。h〉 #include<math.h> int main() { float a,b,c,area,p; 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++) printf("%d*%d=%d\t",j,i,i*j); if(i=j) printf(”\n");} return 0; }
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服