C语言期末考试题(共6页).doc
精选优质文档-倾情为你奉上C语言程序设计期末试卷一、单项选择题(10x2=20)1、以下叙述正确的是( ) A)C语言的源程序不必通过编译就可以直接运行。B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令。C)C语言源程序经编译形成的二进制代码可以直接运行。D)C语言中的函数不可以单独进行编译。2、一个C语言的源程序中( )A)必须有一个主函数 B)可能有多个主函数C)必须有除主函数外其它函数D)可以没有主函数3、以下不能定义为用户标识符的是( )A)scanfB)VoidC)_3comD)int4、若以下选项中的变量已正确定义,则正确的赋值语句是( )A)x1=26.8%3;B)1+2=x2;C)x3=0x12;D)x4=1+2=3;5、设有定义:float a=2,b=4,h=3;以下C语言表达式中与代数式的计算结果不相符的是( )A)(a+b)*h/2B)(1/2)*(a+b)*hC)(a+b)*h*1/2D)h/2*(a+b)6、C语言中用于结构化程序设计的3种基本结构是( )A)顺序结构、选择结构、循环结构B)if、switch、breakC)for、while、do-whileD)if、for、continue7在while(!x)语句中的!x与下面条件表达式等价的是( )A) x!=0 B) x=1 C) x!=1 D) x=08、有以下程序:#include <stdio.h>void main()int i=1,j=1,k=2;if( (j+|k+)&&i+ )printf(“%d,%d,%dn”,i,j,k);执行后的输出结果是( )A)1,1,2B)2,2,1C)2,2,2D)2,2,39、有以下程序:#include <stdio.h>void main() int i,s=0;for(i=1;i<10;i+=2) s+=i+1;printf(“%dn”,s);程序执行后的输出结果是( )A)自然数19的累加和B)自然数110的累加和C)自然数19中奇数之和D)自然数110中偶数之和10、有以下函数定义:void fun(int n,double x)若以下选项中的变量都已经正确定义并赋值,则对函数fun的正确调用语句是( )A)fun(int y,double m); B)k=fun(10,12.5);C)fun(x,n); D)void fun(n,x);二、填空题(10x2=20)11、C语言描述“x和y都大于或等于z”的表达式是: 。12、函数定义时涉及的基本要素是: 、 、 。13、C语言可以用来实现循环的结构化语句是: 、 、 。14、判断整型变量a即是5又是7的整数倍的C语言表达式是: 。15、 若x和n都是int型变量,且x和n的初值都是6,则计算表达式x+=n+后,x的值为: ,n的值为: 。三、写出下列程序的运行结果(3x5 = 15)16、程序1#include <stdio.h>void main() int a=12,b=12;printf(“%d,%dn”,-a,+b); 程序执行后的输出结果是: 17、程序2#include <stdio.h>void main() int a=5,b=4,c=3,d=2;if(a>b>c) printf(“%dn”,d);else if(c-1>=d)=1) printf(“%dn”,d+1);elseprintf(“%dn”,d+2);程序执行后的输出结果是: 18、程序3#include <stdio.h>void main() int x=0,y=5,z=3;while(z->0&&+x<5)y=y-1;printf(“%d,%d,%dn”,x,y,z);程序执行后的输出结果是: 四、编程题(3x15 = 45)19、编写一个程序。实现输入一个小写字母,程序输出它对应的大写字母。(提示:小写字母的ASCII码值比大些字母大32)20、编写一个程序,计算100+101+102+300的值。21、已知学生成绩(100分为满分)与等级的对应关系为:成绩(grade)等级90<=grade<=100A80<=grade<90B70<=grade<80C60<=grade<70Dgrade<60E请你编写一个程序,要求:输入学生成绩,输出学生成绩对应的等级。(提示:使用switch.case语句)期末试题答案1、B2、A3、D4、C5、B6、A7、D8、C9、D10、C11、 x>=z && y>=z12、函数名、形式参数、函数体13、 while 、 do-while 、for14、a%5=0 && a%7=015、12,716、11,1317、318、3,2,-119、程序代码如下:#include <stdio.h>void main()char ch;scanf("%c",&ch);printf("%cn",ch-32);20、程序代码如下:#include <stdio.h>void main()int i,sum=0;for (i=100;i<=300;i+)sum+=i;printf("sum=%dn",sum);21、程序代码如下:#include <stdio.h>void main()int grade;scanf("%d",&grade);switch(grade/10)case 10:case 9:printf("An");break;case 8:printf("Bn");break;case 7:printf("Cn");break;case 6:printf("Dn");break;default:printf("En");break;期末试题答案 备用卷1、B 2、A3、D4、D5、B6、A7、A8、B9、B10、A11、整型、实型、字符型12、313、2,114、9,015、return16、double17、718、219、2,1,120、程序代码:#include <stdio.h>void main()int a,b,c;float pinjun;scanf("%d%d%d",&a,&b,&c);pinjun = (a+b+c)/3.0;printf("%.2fn",pinjun);21、程序代码:#include <stdio.h>void main()int a;scanf("%d",&a);if(a<0)a=-a;printf("%dn",a);22、程序代码:#include <stdio.h>void main()float x,y;scanf("%f",&x);if(x<=0)y=3*x+5;else if(x>0 && x<=1)y=x+5;elsey=-2*x+8;printf("%.2fn",y);专心-专注-专业