《语言期末A卷(共5页).doc》由会员分享,可在线阅读,更多相关《语言期末A卷(共5页).doc(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上南京工业职业技术学院2007/2008 第一 学期 期末考试试卷闭卷【】课程: C语言程序设计 出卷人: 杨静丽 考试类型: 开卷【 】适用班级: 信息系07级 班级 学号 姓名得分一、选择题(每题2分,共50分)1、以下所列语句中,合法的语句是_B_ 。A)a=b=58; B)k=int(a+b); C) a=58,b=5; D) -i;2、若从终端输入以下数据,要给变量c赋以283.19,则正确的输入语句是 A 。A) scanf(%f,c); B) scanf(%8.4f,&c);C) scanf(%6.2f,&c); D) scanf(%8,&c); 283.
2、1900 表示回车3、若有以下程序段,其输出的结果是 B 。 int a=0,b=0,c=0; c=(a-=a-5),(a=b,b+3); printf(“%d,%d%dn”,a,b,c);A) 0,0,10 B) 0,0,5 C)-10,3,-10 D) 3,3,-104、设a、b和c都是int型变量,且a=3,b=4,c=5;则以下的表达式中,值为0的表达式是_D_ 。A) a&b B) a=b C) a|b+c&b-c D) !(a8?x=0:x+ D) x/=x+x 10、逻辑“异或”运算可描述为“a xor b”,其中a和b为参加运算的两个操作数,运算结果为当且仅当a、b两个操作数中
3、只有一个为真时才为真,其他情况下均为假。以下表达式中_D_可以正确表示逻辑“异或”运算。A)a|b B)(a&b)&!(a|b ) C) a&b D) (a|b ) &! (a&b) 11、设有声明int value=5;,则执行下列选项的赋值语句后, value的值不等于5的是_C_ 。A) value= value-0; B) value= value-0x30; C) value= value-49; D) value= value-06012、下面的for循环的循环体最多可执行_B_次。for(x=0,y=0;(y!=10)&(x7) n-; printf(“%dn”,n);A)10
4、B) 9 C)10 D) 9 8 8 9 8 9 7 8 7 7 615、以下程序段的输出结果是 A 。 main() int i; for (i=1;i=5;i+) if (i%2) printf(“*”); else continue; printf(“#”); printf(“$n”);A) *#*#*#$ B) #*#*#*$ C)*#*#$ D) #*#*$16、以下程序段的输出结果是 C 。int x=3;do printf(“%3d”,x-=2); while (!(-x);A) 1 B) 3 0 C) 1 -2 D) 死循环17、以下函数调用语句中,含有的实参个数是 B 。 f
5、unc(exp1,exp2),(exp3,exp4,exp5);A)1 B) 2 C) 4 D)518、以下程序的输出结果是 C 。 func(int a,int b) int c; c=a+b; return c;main() int x=6,y=7,z=8,r; r=func(x-,y+,x+y),z-); printf(“%dn”,r);A) 11 B) 20 C) 21 D) 3119、以下程序段给数组所有元素输入数据,应在下划线处填入的是 A 。 main() int a10,i=0; while (i10) scanf(“%d”, ); A)a+(i+) B)&ai+1 C) a+
6、i D) &a+i20、若已定义 char ch10; 则在下面表达式中不表示ch3的地址的是B_。A) ch+3 B) ch+ C) &ch0+3 D) &ch321、有字符数组s110和s210,则正确输出语句是_C_。A)puts(s1,s2) B)printf(%s,%s,s1 ,s2 );C)puts(s1);puts(s2); D)putchar(s1,s2);22、C语言中不合法的字符串常量是 D 。A) “121” B) y= C)”nn” D)”ABCDx6d”23、以下程序的输出结果是 C 。main()int n2=0,i,j,k=2; for (i=0;ik;i+) f
7、or (j=0;jk;j+) nj=ni+1;printf(“%dn”,nk); A) 不确定的值 B) 3 C)2 D)124、以下数组声明语句中正确的是_D_ 。A) int n, an; B) int a ; C) int a23=1,2,3; D) int a 3=1,2,3;25、当运行以下程序时输入三行,每行都是在第一列上开始,代表Enter键;abcdef则程序的输出结果是 C 。#include “stdio.h”#define N 6main() char cN; int i; for (i=0;iN;i+) ci=getchar(); for (i=0;i4改写成C语言的关
8、系表达式或逻辑表达式:(x=4)(x=-4) 。3、复合语句在语法上被认为是 一条语句 。空语句的形式是 ; 。4、在C语言中整数可用 十 进制数、 八 进制数和 十六 进制数三种数制表示。5、调用C语言对字符处理的库函数时,在#include命令行中应包含的头文件是”string.h” 。6、字符串”abn012”的长度是 9 。7、执行“printf(“%d,%d”,i,j,k,m);”后在屏幕上将输出_2_个整数。8、当 return_语句被执行时,程序的执行流程无条件地从一个函数跳转到另一个函数。9、设有语句“int a=2,b=3,c=2;a+=b*=(+b-c+);”,变量b的值是
9、_8_ 。10、C语言中形参的缺省存储类别是 auto 。11、以下程序的输出结果是 abc 。main() char s=abcdef; s3=0; printf(%sn,s);三、阅读程序题(每题4分,共20分)1、给出下面程序的运行结果: main() int i=0,sum=1; do sum+=i+; while (i5); printf(“%dn”,sum); 2、给出下面程序的运行结果: main( ) int arr10,i,k=0;for (i=0;i10;i+) arri=i;for (i=0;i4;i+) k+=arri+i;printf(“%dn”,k); 3、 有以下
10、程序 int sub(int n) return (n/10+n%10); main() int x,y; scanf(%d,&x); y=sub(sub(sub(x); printf(%dn,y); 若运行时输入:1234,程序的输出结果是 。4、以下程序的功能是计算:s=1+12+123+1234+12345。请填空。 main() int t=0,s=0,i; for( i=1; iamax) amax=x; if ( ) amin=x; scanf(“%f”,&x);printf(“namax=%fnamin=%fn”,amax,amin);四、编程题(15分)1、有一函数: x (x1) y= 2x-1 (1=x=10)写一程序,输入x值,输出y值。2、输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。专心-专注-专业