09级C语言期中试卷
- 格式:doc
- 大小:85.00 KB
- 文档页数:9
福州大学《 C语言程序设计》期中模拟试卷2009 —2010 学年第二学期考试日期:2010 年 4月日专业:班级:考生学号:考生姓名:一、选择题(每小题2分,共40分)1.以下叙述中正确的是()。
A)C语言比其他语言高级 B)C语言可以不用编译就能被计算机识别执行C)C是近英语的自然语言和数学语言为语言的表达形式 D)C语言出现最晚,具有其他语言的一切优点2.以下叙述中不正确的是()。
A)一个C源程序可由一个或多个函数组成 B)一个C源程序必须包含一个main函数C)函数是C程序的基本组成单位 D)分号是C语句之间的分隔符,不是语句的一部分3.算法具有五个特性,以下不属于算法特性的是()。
A)有穷性 B)简洁性 C)可行性 D)确定性4.以下()组中的标识符都是合法的用户标识符。
A)3ab,A_10,st B)class,λ1,grade C)printf,INT,char1 D)b3,a,unsigned5.C语言中的基本数据类型包括()。
A)整型、实型(浮点型)、逻辑型 B)整型、实型(浮点型)、字符型C)整型、字符型、逻辑型 D)字符型、实型(浮点型)、逻辑型6.以下选项中,均是合法整型常量的选项是()。
A)123,Oxffff,0123 B)Oxabc,018,0x123 C)Ola,123, 012,Oxef D)Ox22b,3e5,0167.若有定义:float a=3.0,b=4.0,c=5.0;则表达式1/2*(a+b+c)的值为()。
A)6.0 B)6 C)0.0 D)无答案8.若有定义和语句:int s,p;s=p=5;p=s++;则执行语句后 p的值是()。
A)0 B)5 C)7 D)69.以下选项中,与k=n++完全等价的表达式(即执行后k,n及表达式的值完全相同)是()。
A) k=n, n=n+l B)n=n+1,k=n C)k=++n D)k+=n+110.以下程序的输出结果是()。
C语言期中考试试卷答案玉林师范学院期中课程考试试卷(2009——2010学年度第二学期)命题教师:洪月华命题教师所在系:数计系试卷类型:考试课程名称:高级语言程序设计考试专业:计算机科学与技术考试年级:2009级一、单项选择题(每题2分,共24分,把正确答案填入表格中)1、以下描述不正确的是( A )。
A 、C 程序中一个字符占两个字节。
B 、C 程序由函数组成。
C 、C 语言本身没有输入输出语句。
D 、主函数main 是程序的入口。
2、有int k1,k2;double k3;scanf("%d%lf%d", &k1, &k3 , &k2),则输入的三个数据之间作为间隔的字符不正确的是( C )。
A 、一个或多个空格。
B、回车。
C、逗号。
D 、Tab 。
3、以下运算符中优先级最高的是( D )。
A 、=B 、*=C 、&&D 、(类型名)4、设x,y,z 都是int 型变量,且x=3,y=5,z=9,则以下表达式中,值为10的是:(B )。
A 、(x+y)/zB 、(x+y,z+1)C 、x+y+zD 、x*y/z 5、下列选项中,哪一个是C 语言的合法的常量( B )。
A 、1.341eB 、2/5C 、‘xq ’D 、2.0%56、从键盘输入A ,以下程序的运行结果是:( D )。
#include main(){ char grade;scanf("%c",&grade); switch(grade){ case 'A':printf(">=90"); case 'B':case 'C': printf(">=60");break; case 'D': printf("<60"); default:printf("error"); } }A. >=90B. >=60C. errorD. >=90>=607、以下程序的输出结果是( A )。
桂林电子科技大学信息科技学院试卷2008-2009 学年第 2 学期 课号 课程名称:C 语言程序设计(闭卷) 适用班级(或年级、专业) 通信、电子(本试卷包括第一卷和第二卷,答卷时间总共120分钟)第一卷说明:(1) 第一卷全部为选择题,每题可供选择的答案中,只有一个正确答案。
(2) 答本卷的题目时,要在标准答题纸上编写对应的栏目中,用铅笔在正确答案图黑,在试题上直接勾划者不得分。
(3) 本卷共70分,其中第1~26题每题2分,第27~32题每题3分。
第一部分:基础知识(20题,共40分)1 以下叙述中正确的是A )C 语言的源程序不必通过编译就可以直接运行B )C 语言中的每条可执行语句最终都将被转换成二进制的机器指令 C )C 源程序经编译形成的二进制代码可以直接运行D )C 语言中的函数不可以单独进行编译 2 以下选项中合法的用户标识符是A) long B) _2Test C) 3Dmax D) A.dat3 已知大写字母A 的ASCII 码值是65,小写字母a 的ASCII 码是97,则用八进制表示的字符常量'\101'是A) 字符A B) 字符a C) 字符e D) 非法的常量 4 以下非法的赋值语句是A) n=(i=2,++i); B) j++; C) ++(i+1); D) x=j>0; 5 设a 和b 均为double 型变量,且a=5.5、b=2.5,则表达式(int)a+b/b 的值是 A) 6.500000 B) 6 C) 5.500000 D) 6.0000006 已知i 、j 、k 为int 型变量,若从键盘输入:1,2,3<回车>,使i 的值为1、j 的值为2、k 的值为3,以下选项中正确的输入语句是A) scanf("%2d%2d%2d ",&i,&j,&k); B) scanf("%d %d %d ",&i,&j,&k); C) scanf("%d,%d,%d ",&i,&j,&k); D) scanf("i=%d,j=%d,k=%d ",&i,&j,&k);7设有定义:float a=2,b=4,h=3;,以下C 语言表达式与代数式 计算结果不相符的是A) (a+b) *h/2 B) (1/2)*(a+b)*h C) (a+b)*h*1/2 D) h/2*(a+b)h b a )(218与数学式子123-x nx对应的C 语言表达式是A) 3*x^n(2*x-1) B) 3*x**n(2*x-1)C) 3*pow(x,n)*(1/(2*x-1)) D) 3*pow(n,x)/(2*x-1)9 设有定义:long x=-123456L ;,则以下能够正确输出变量x 值的语句是A) printf("x=%d\n ",x); B) printf("x=%1d\n ",x); C) printf("x=%8dL\n ",x); D) printf("x=%LD\n ",x); 10 若有以下程序:main(){ int k=2,i=2,m;m=(k+=i*=k); printf("%d,%d\n ",m,i); }执行后的输出结果是A) 8,6 B) 8,3 C) 6,4 D) 7,4 11 已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2的值是A) 6 B) 0 C) 2 D) 1 12 以下选项中,与k=n++完全等价的表达式是A) k=n,n=n+1 B) n=n+1,k=n C) k=++n D) k+=n+1 13 下列关于单目运算符++、--的叙述中正确的是A) 它们的运算对象可以是任何变量和常量B) 它们的运算对象可以是char 型变量和int 型变量,但不能是float 型变量 C) 它们的运算对象可以是int 型变量,但不能是double 型变量和float 型变量 D) 它们的运算对象可以是char 型变量、int 型变量和float 型变量 14 若有以下程序段(n 所赋的是八进制数)int m=32767,n=032767; printf("%d,%o\n ",m,n); 执行后输出结果是A) 32767,32767 B) 32767,032767 C) 32767,77777 D) 32767,077777 15 C 语言中用于结构化程序设计的三种基本结构是A) 顺序结构、选择结构、循环结构 B) if 、switch 、break C) for 、while 、do-while D) if 、for 、continue16 有一函数,0x 0x 0x 101y <=>-=⎪⎩⎪⎨⎧,以下程序段中不能根据x值正确计算出y值的是A) if(x>0) y=1; B) y=0;else if(x==0) y=0; if(x>0) y=1;else y=-1; else if(x<0) y=-1;C) y=0; D) if(x>=0)if(x>=0) if(x>0) y=1; if(x>0) y=1; else y=0; else y=-1; else y=-1;int m=0,n=0; char c='a';scanf("%d%c%d",&m,&c,&n);printf("%d,%c,%d\n",m,c,n);若从键盘上输入:10A10<回车>,则输出结果是:A) 10,A,10 B) 10,a,10 C) 10,a,0 D) 10,A,018 有以下程序main(){ int a=1,b=2,m=0,n=0,k;k=(n=b>a)||(m=a<b);printf("%d,%d\n",k,m);}程序运行后的输出结果是A) 0,0 B) 0,1 C) 1,0 D) 1,119 有定义语句:int x,y;,若要通过scanf("%d,%d",&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,错误的是A) 11 12<回车> B) 11, 12<回车> C) 11,12<回车> D) 11,<回车>12<回车>20 设有如下程序段:int x=2002,y=2003;printf("%d\n",(x,y));则以下叙述中正确的是A) 输出语句中格式说明符的个数少于输出项的个数,不能正确输出B) 运行时产生出错信息C) 输出值为2002D) 输出值为2003二第二部分:简单程序(12题,21-26题每题2分,27-32题每题3分,共30分)21 有以下程序main(){ int i;for(i=0;i<3;i++)switch(i){ case 1:printf("%d",i);case 2:printf("%d",i);default:printf("%d",i);}}执行后输出结果是A) 011122 B) 012 C) 012020 D) 120{ int i=1,j=1,k=2;if((j++||k++)&&i++) printf("%d,%d,%d\n",i,j,k);}执行后输出结果是A) 1,1,2 B) 2,2,1 C) 2,2,2 D) 2,2,323 有以下程序main(){ char a,b,c,*d;a='\'; b='\xbc';c='\0xab'; d="\017";printf("%c%c%c%c\n",a,b,c,*d);}编译时出现错误,以下叙述中正确的是A) 程序中只有a='\';语句不正确 B) b='\xbc';语句不正确C) d="\017";语句不正确 D) a='\';和c='\0xab';语句都不正确24 以下程序段中与语句k=a>b?(b>c?1:0):0; 功能等价的是A) if((a>b)&&(b>c)) k=1; B) if((a>b)||(b>c)) k=1;else k=0; else k=0;C) if(a<=b) k=0; D) if(a>b) k=1;else if(b<=c) k=1; else if(b>c) k=1;else k=0;25 有以下程序main(){ int a=5,b=4,c=3,d=2;if(a>b>c)printf("%d\n",d);else if((c-1>=d)==1)printf("%d\n",d+1);elseprintf("%d\n",d+2);}执行后输出结果是A) 2 B) 3 C) 4 D) 编译时有错,无结果26 有以下程序main(){ int i=10,j=1;printf("%d,%d\n",i--,++j); }执行后输出结果是A) 9,2 B) 10,2 C) 9,1 D) 10,1{ int i=0,s=0;do{ if(i%2) { i++; continue; }i++;s+=i;} while(i<7);printf("%d\n",s);}执行后输出结果是A) 16 B) 12 C) 28 D) 2128 有以下程序main(){ int x=0,y=5,z=3;while(z-->0&&++x<5) y=y-1;printf("%d,%d,%d\n",x,y,z);}程序执行后的输出结果是A) 3,2,0 B) 3,2,-1 C) 4,3,-1 D) 5,-2,-529 有以下程序main(){ int i,s=0;for(i=1;i<10;i+=2) s+=i+1;printf("%d\n",s);}程序执行后的输出结果是A) 自然数1~9的累加和 B) 自然数1~10的累加和C) 自然数1~9中的奇数之和 D) 自然数1~10中的偶数之和30 有以下程序main(){ int i,n=0;for(i=2;i<5;i++){ do{ if(i%3) continue;n++;}while(!i);n++;}printf("n=%d\n",n);}程序执行后的输出结果是A) n=5 B) n=2 C) n=3 D) n=431 要求以下程序的功能是计算:10131211++++= s main (){ int n; float s; s=1.0;for(n=10;n>1;n--) s=s+1/n; printf("%6.4f\n ",s); }程序运行后输出结果错误,导致错误结果的程序行是A) s=1.0; B) for(n=10;n>1;n--) C) s=s+1/n; D) printf("%6.4f/n ",s); 32 有以下程序段int n=0,p;do { scanf("%d ",&p); n++; } while(p!=12345 && n<3); 此处do —while 循环的结束条件是A) p 的值不等于12345并且n 的值小于3 B) p 的值等于12345并且n 的值大于等于3 C) p 的值不等于12345或者n 的值小于3 D) p 的值等于12345或者n 的值大于等于3第二卷说明:(1) 第二卷含5大题,均属填空题,总共有10个空栏,在阅读和理解原题程序的基础上,在空栏处填入适当的字符、语句,以构成一个正确的C 语言程序。
桂林电子科技大学信息科技学院09级C程序设计期中测试卷一、选择题(20题,共40分)1.一个C程序总是从开始执行。
A. 程序的第一个语句B. 主函数C. 子程序D. 主程序2.下列标识符中,合法的用户标识符为。
A. P#AdB. 12aC. charD. _int3.下面4组常量,合法的一组C语言常量是。
A. 0B. 10C. 0.01D. 0.10x10 10L "\"" 3E+02E+9 E1 "\' ""\""'a'"a"'t''tt'''''\0''\t' 0124.执行下列程序片段时输出结果是。
unsigned int a=65535;printf(“%d”,a);A)65535 B)-1 C)-32767 D)15.若有定义(说明)int a[3][4]; 则对数组a的元素的引用非法的是。
A. a[2][2*1]B. a[1][3]C. a[4-2][0]D. a[0][4]6.以下不能对二维数组a进行正确初始化的语句是。
A. int a[2][3] ={0};B. int a[][3] ={{1,2},{0}};C. int a[2][3] ={{1,2},{3,4},{5,6}};D. int a[][3] ={1,2,3,4,5,6};7.已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当从第一列开始输入数据时,正确的输入方式是。
int a1,a2; char c1,c2;scanf(“%d%d”,&a1,&a2);scanf(“%c%c”,&c1,&c2);A)1020AB↙B)10 20↙AB↙C)10 20 AB↙D)10 20AB↙8.下列表达式中,不满足“当x的值为偶数时值为真,为奇数时值为假”的要求。
中国民航大学 2009-2010 学年第二学期 《C 语言程序设计》期中考试试卷 课程编号: 03402513 试卷类型: A 卷 考试形式:笔试 考试日期: 注意事项: 1.请将试卷最后一页的答题纸撕下,将答案填写在其中; 2.交卷时请确认答题纸是否按要求写好姓名等信息并与试题一起上交; 3.不准携带任何书籍、资料、纸张等。
4.草稿纸用试卷的背面。
一、单项选择题( 1 空 1 分,共 20 分) 1 、C 语言程序的基本结构是(【1】 ) 。
【1】 A) 函数 B) 语句 C) 字符 D) 程序行 2、一个 C 程序的执行是(【2】 ) 。
【2】 A) 从本程序的主函数开始,到本程序的主函数结束 B) 从本程序的第一个函数开始,到本程序的最后一个函数结束 C) 从本程序的主函数开始,到本程序的最后一个函数结束 D)从本程序的第一个函数开始,到本程序的主函数结束 3、下列四个叙述中,错误的是 (【3】) 。
【3】 A) 一个 C 源程序必须有且只能有一个主函数 B) 一个 C 源程序可以含一个或多个子函数 C) 在 C 源程序中注释说明必须位于语句之后 D) C 源程序的基本结构是函数 4 、下面不属于 C 语言保留字的是(【4】 ) 。
【4】 A) short B) ELSE C) extern D) for5、下列四个叙述中,正确的是 (【5】) 。
【5】 A) 库函数也是 C 语言本身的组成部分B) C 语言中的输入输出操作是由相应语句完成的C) 库函数是 C 编译系统提供的功能函数 题号 一 二 三 四 五 六 总分 得分 ――――――――――――――――――――――――――装订线――――――――――――――――――――――――――――――-D) 标题文件(头文件)可以在程序的函数内部调用6、下列四组数据类型中, C语言允许的一组是(【6】) 。
【6】 A) 整型、实型、逻辑型B) 整型、实型、字符型 C) 整型、双精度型、布尔型D) 整型、实型、复型7、在C语言中不同数据类型的的长度是(【7】)。
《C语言程序设计》期中考试试卷课程编号:03402513试卷类型: A卷考试形式:笔试考试日期:注意事项:1.请将试卷最后一页的答题纸撕下,将答案填写在其中;2.交卷时请确认答题纸是否按要求写好姓名等信息并与试题一起上交;3.不准携带任何书籍、资料、纸张等。
4.草稿纸用试卷的背面。
一、单项选择题(1空1分,共20分)1、C语言程序的基本结构是(【1】) 。
【1】 A) 函数 B) 语句 C) 字符 D) 程序行2、一个C程序的执行是(【2】) 。
【2】A) 从本程序的主函数开始,到本程序的主函数结束B)从本程序的第一个函数开始,到本程序的最后一个函数结束C) 从本程序的主函数开始,到本程序的最后一个函数结束D)从本程序的第一个函数开始,到本程序的主函数结束3、下列四个叙述中,错误的是(【3】) 。
【3】 A) 一个C源程序必须有且只能有一个主函数B) 一个C源程序可以含一个或多个子函数C) 在C源程序中注释说明必须位于语句之后D) C源程序的基本结构是函数4、下面不属于C语言保留字的是(【4】) 。
【4】 A) short B) ELSE C) extern D) for5、下列四个叙述中,正确的是(【5】) 。
【5】 A) 库函数也是C语言本身的组成部分B) C语言中的输入输出操作是由相应语句完成的C) 库函数是C编译系统提供的功能函数D) 标题文件(头文件)可以在程序的函数内部调用6、下列四组数据类型中,C语言允许的一组是(【6】)。
【6】 A) 整型、实型、逻辑型 B) 整型、实型、字符型C) 整型、双精度型、布尔型 D) 整型、实型、复型7、在C语言中不同数据类型的的长度是(【7】)。
【7】 A) 固定的 B) 由用户自己定义的C) 任意的 D) 与机器字长有关8、下列四组(八进制或十六进制)常数中,正确的一组是(【8】)。
【8】 A) 016 0xbf 18 B) 0abc 017 0xaC) 010 -0x11 0x16 D) 0A12 7FF -1239、下列四组转义字符中,合法的一组是(【9】)。
桂林电子科技大学试卷2009-2010 学年第 2 学期课号0921306等课程名称C语言程序设计A (A卷; 闭卷)适用班级(或年级、专业)7院09级考试时间120 分钟班级学号姓名第一部分:基础知识(20题,共20分)1、表达式18/4*2/8值的数据类型为()A)int B)float C)double D)不确定2、在C语言中,int, char和short int三种类型变量所占用的内存大小是()。
A)均为2个字节 B)由用户自己定义 C)由所用机器的字长决定 D)是任意的3、C语言中函数返回值的类型是()A)return语句中的表达式类型 B)调用函数的类型C)总是int型 D)定义函数时所指定的函数类型4、凡是在函数中未指定存储类别的变量,其隐含的存储类别是()A)自动B)静态C)外部D)寄存器5、以下不正确的描述是()A)break语句只能用于循环语句和switch语句B)在switch语句中,break语句的作用也可用continue语句来替代C)在循环语句中,使用continue语句是为了结束本次循环,而不是终止循环的执行D)在循环语句中,使用break语句是为了使流程跳出循环体,提前结束循环6、以下说法正确的是()A)输入项可以为一实型常量,如scanf("%f",3.5);B)只有格式控制,没有输入项,也能进行正确输入,如scanf("a=%d,b=%d”);C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf (“%4.2f",&f);D)当输入数据时,必须指明变量的地址,如scan f(“%f",&f);7、己知各变量的类型说明如下:int i=8,k,a,b;unsigned long w=55;double x=1.42,y=5.2;则以下符合c语言语法的表达式是()A)a+=a-=(b=4)*(a=3) B)a=a*3=2C)x%(-3) D)y=float(i)8、已知ch是字符型变量,下面不正确的赋值语句是()A)ch=‟a+b‟; B) ch=‟\0‟; C)ch=‟7‟+‟9‟; D)ch=5+99、有输入语句:scanf("a=%d,b=%d,c=%d",&a,&b,&c),为使变量a的值为1,b为3,c为2,从键盘输入数据的正确形式应当是______。
《 C语言》课程期中考试试卷一. 在A B C D四个选项中,选择一个正确的答案填入括号内( )1、用char定义的变量在IBM PC机中能表示的数的范围是:A) 0 ~+255 B) 0 ~+65535C) -128 ~+127 D) 只能存字符,不能存数( )2、设有int k=2; 则执行printf(“%d”,k++);的输出为:A) 0 B) 1 C) 2 D) 3()3、在while(!x)中,!x与______等价。
A) x==0 B) x!=0 C) x==1 D) x!=1()4、设有声明int value=‟5‟;,则执行下列选项的赋值语句后,value的值不等于5的是_____。
A.) value=value - ‟0‟; B) value=value - 0x30;C) value=value - 49; D) value=value - ‟\060‟;()5、如int k=7;float x=2.5,y=4.7; 则表达式 x+k%3*(int)(x+y)%2/4 运算后的值是:A) 0 B) 2 C) 2.5 D) 2.75( ) 6、若有int a,b;则语句:printf("%d",(a=2)&&(b=-2);的输出结果是:A)无输出 B)结果不确定 C)-1 D)1( ) 7、设有int a=2; 则执行printf("%d",5>a>1);的输出为:A)0 B)1 C)2 D)3( ) 8、执行语句c=(a=2,a+1,b=a++);后, a,b,c的值依次为:A)2,3,4 B)3,3,3 C)4,5,4 D)3,2,2( )9、以下程序的输出结果是A)2 0 B)3 1 C)3 2 1 D)2 1 0main( ){ int n=4;while(n--)printf("%d ",--n);}( )10、给出以下定义:char x[ ]="abcdef";char y[ ]={'a','b','c','d','e','f'};则正确的叙述为A) 数组x和数组y等价 B) 数组x和数组y的长度相同C) 数组x的长度大于数组y的长度 D) 数组x的长度小于数组y的长度( )11、若对一个函数调用在前, 定义在后,C语言将视其返回值为__________类型。
C语言程序设计模拟试卷(09级)1.2.4.5.9.11.12.13.15.19.20.22 24 25 26 28 29 30一、单选题(、共30小题,每小题1分,共30分)1、设a、b和c都是int型变量,且a=3,b=4,c=5,则下面的表达式中,值为0的表达式是( )。
A. a < =bB. !((a〈b)&&!c||1)C. 'a'&&'b'D. a||b+c&&b-c2、设有语句char a='\72';则变量a( )。
A. 包含1个字符B. 包含2个字符C. 包含3个字符D. 说明不合法3、有以下程序:void main( ){ ;;;}程序运行后的结果是( ):A.编译时有警告错误B.编译时有语法错误C.编译没有错误,但是运行时出错D.程序正常运行,但是无任何输出4、x为int型变量,执行以下语句后,x的值为( )。
x=10;x+=x-=x-x;A.10B.20C.30D.405、若有输入语句"scanf("%d,%d,%d" ,&x,&y,&z) ;",欲使x的值为10,y的值为20,z的值为30,则正确的输入应为( ):A. 10 , 20 ,30〈回车〉B. 10 20 30〈回车〉C. 10,20,30〈回车〉D. 10〈回车〉20〈回车〉30〈回车〉6、以下不正确的if语句是( )。
A. if (a<b) t=a ;B. if (a !=b && b) ;C. if (a=b) printf("equal" ) ;D. if (a>b) && (b>c) printf("max=%d",a);7、关于if后面一对圆括号中的表达式,叙述正确的是( )。
天津工业大学200 9 ~201 0 学年第 2 学期高级语言程序设计(C语言) 试卷(A卷答案)学院班级学号姓名注意事项:1、本试卷共12 页,满分为100 分,考试时间为110 分钟。
2、标准答题卡使用2B铅笔涂写;文字题答题时请使用蓝、黑钢笔或圆珠笔,不得使用红颜色墨水笔。
一、单项选择题:(每题 1 分,共40 分)一、单项选择题:(每题 1 分,共40 分)(说明:请将正确答案按照题干上【】内的序号涂写“标准答题卡”)1.根据C语言的规定,为变量取名时,不能使用的符号是【1】。
A) 数字字符B) 大写字母C) 下划线D) 减号2.一个C语言程序的执行是【2】。
A) 从第一个函数开始,到最后一个函数结束B) 从main()函数开始,到最后一个函数结束C) 从main()函数开始,到main()函数结束D) 从第一个语句开始,到最后一个语句结束3.执行下列程序段后,输出结果是【3】。
int m=013;printf("%d,%o,%x\n",m,m,m);A) 19,23,13 B) 11,13,b C) 13,15,d D) 13,13,134.表达式sizeof(double)的值是【4】。
A) 1 B) 2 C) 4 D) 85.设有变量定义语句char ch; 则能够正确地为变量ch输入数据的是【5】。
A) scanf("%c",&ch); B) getchar(ch);C) scanf("%c",ch); D) putchar(ch);6.设变量a是int型、f是float型、d是double型、c是char型,则表达式c+a-f/d的数据类型是【6】。
A) char型B) int型C) float型D) double型7.有变量定义语句int k=4,m; 执行语句m=k--; 后,变量m、k的值是【7】。
A) m=3,k=3 B) m=4, k=3 C) m=3,k=4 D) m=4,k=48.设int i=2,j=1,k=3,则表达式i&&(i+j)&k|i+j的值是【8】。
同济大学课程考核试卷(A卷)2009-2010学年第一学期命题教师签名:审核教师签名:课号:课名:C++语言考试考查:考查此卷选为:期中考试()、期终考试(V)、重考()试卷年级 __________ 专业__________________ 学号____________ 姓名______________ 得分 __________一、选择填空(30分)1)按照标识符的要求,下列符号中不属于标识符组成部分的是()。
八、大小写字母B、数字C、下划线D、〜! @#$%"&*2)若有定义:char c; int x; float y;double z;则表达式x+c-(int)z/y值的类型为()。
八、char B、int C、float D、double3)有下列定义:chars[10],*p,sl[] = { "xyz" };以下语句中正确的是()。
八、s = “abcdefgh” ; B、p = “abcdefgh” ;C、s = si;D、p=&s; cin » p;4)以下数组定义中正确的是()。
A、int n=5; int a[n];B、int b[3] [] = {l, 2, 3};C、int c[3][4]:{0};D、int d[][] = {2,4,6,8};5)己知int a⑸,b⑶;当逻辑表达式语句!a&&b++;b| |a—| |a+b;执行完毕后,a和b的值分别为()。
A、4,4B、4,3C、5,4D、5,36)设有定义语句:int x(20), y(10), *p, **pp; 当执行完语句:p=&x;pp=&p;p=&y;后,**PP的值为()。
A、20B、10C、变量x的地址值D、变量y的地址值7)对于int (*p)();的描述,()是正确的。
A、定义一个指向某int型函数的指针变量p。
2009年6月闭卷考试考试时间:120分钟考试类别〖8〗考生注意:①本试卷包括第一卷和第二卷,考试时间共120分钟.②第一卷全部为选择题,每题下都有四个备选答案,但只有一个是正确的或是最佳的答案. 第一卷答案必须填涂在标准化答题卡上,标记在试题卷上的答案一律无效.每题只能填涂一个答案,多涂本题无效.考生答第一卷的题目时务必使用2B铅笔按正确的填涂方法在答题卡上相应题号的方格涂黑,如果改动答案,可用橡皮擦干净后再另涂新的答案.③第二卷均为填空题,在阅读和理解力原题程序的基础上,在第二卷答案卡上相应的空栏处填入适当的字符,语句.考生答第二卷的题目时,要用钢笔或圆珠笔书写,用铅笔答题无效.在试题卷上直接答题无效.④请考生在标准答题卡和第二卷答题卡上准确填涂或填写准考证号码.⑤请考生遵照上述要求,否则将会影响正确成绩.第一卷本卷共70分,其中第1~26题每题2分,第27~32题每题3分。
第一部分:基础知识1.对于声明int a[10],*p:,下两选项中合法的赋值语句是——D·=100; B.p=a[6]; C.p=a[3]+3; D.p=a+2;2. 以下叙述正确的是——B。
A.C语言程序中,main函数必须位于程序的最前面B.C语言程序中大、小写字母是有区别的C.C语言程序的每行只能写一条语句D.编译c程序时,可以发现注释行中的错误3. 若x,j,j和k都是int型变量。
则执行下列语句后,x的值为——C。
x=(i=4,j=16,k=32):A.4 B.16 C.32 D.524. 对于程序段int *p,a=5;p=&a;,下列各选项中全部表示地址的是——·A.a,p,&a B.*p,p,&a C.&* a,&a,*p D·&a,&*p,p5. 对于定义:int a[3][5],能正确引用数组元素的语句是——B。
A.a[3,2] B.a[2][3]C.a(3)(2) D.a[1+2][2]6. 判断char型变量ch是否为大写字母的正确表达式是——C·A.’A’<=ch<=’Z’B.(ch>=‘A’)OR(ch<= Z’)C.(ch>=’A’)&&(ch<=‘Z’)D.(‘A’<=ch)AND(‘Z’>=ch)7. 对于声明int i,j=2,*p=&j;.能完成i=j功能的语句(B )A. i=**p;B. i=*p;C. i=&j;D. *p=*&j;8.若希望当int a; a的值为奇数时,表达式的值为“真”, a的值为偶数时,表达式的值为“假”。
C语言程序设计期中测试(参考)C 语言程序设计期中测试题姓名_______ 学号________一、选择题:(单选, 1分/题, 共20分)1. 设有 int x=11; 则表达式 (x++ * 1/3) 的值是A) 3 B) 4 C) 11 D) 122. 下列变量定义中合法的是A) double _a=1-.le-1; B) int b=1+5e2.5; C) long do=3e5; D) float2_and=1-e-3;3. 设 int x=1, y=1; 表达式( !x||y-- )的值是A) 0 B) 1 C) 2 D) –14. 若变量已正确定义并赋值,下面符合C语言语法的表达式是A) a:=b++ B) b=2++ C) int 18.5%3 D) a+=c+b5. C语言中运算对象必须是整型的运算符是A) <= B) / C) = D) %=6. 设有说明语句:char a=’\72’; 则变量aA) 说明不合法 B) 包含2个字符 C) 包含3个字符 D) 包含1个字符7. 以下所列的C语言常量中,错误的是A) 0xFF B )1.2e0.5 C ) 2L D ) '\t'8. 下列选项中,可作为C语言变量名是A) y-3 B ) 4_x C ) include D ) x1..9. 若int a=3; 则执行完表达式a+=a-=a*a后,a的值是A)-3 B )9 C )-12 D )610. 在C语言中,合法的长整型常数是A) 12L B) x496271 C) 324562& D) 216D11. 以下选项中合法的字符常量是A)"B" B) '\182' C) 68 D) ‘\’’12. 以下合法的赋值语句是A) x=y=100 B) d--; C) x+y; D) 3+=x;13. 设正x、y均为整型变量,且x=10 y=3,则以下语句的输出结果是printf("%d,%d\n",x--,--y);A) 10,3 B) 9,3 C) 9,2 D)10,214. 以下选项中,非法的字符常量是A) '\t' B) '\17' C)"n" D) '\xaa'15. 以下选项中合法的实型常数是A) 5E2.0 B) E-3 C) .2E0 D) 1.3E16. 已知大写字母A的ASCII码是65,小写字母a的ASCII码是97,则用八进制表示的字符常量'\101'是A) 字符A B) 字符a C) 字符e D) 非法的常量17. 以下选项中,与k=n++完全等价的表达式是_______。
一、选择题:【1】在 C 语言中,用户能使用的正确标识符是。
A) 5f B) _for C) struct D) _f.5答案: B分析:标识符只能由字母、数字、下划线组成,且第一个字母必须是字母或下划线;大小写敏感;不能使用关键字;最长 32 个字符。
【2】以下那个是正确的 C 语言常量。
A) 0678 B) '\0101' C) 1.2E3.5 D) 123L答案: D【3】以下对 C 语言源程序有关常识正确的描述是。
A) main 函数必须位于文件的开头B) 每个语句必须单独一行C) 标识符中大小写字母没有区别D) 宏定义#define 部分不一定要放在程序的最开头位置答案: D【4】以下 for 循环的执行次数是。
for(x=0,y=0;(y=123)&&(x<4);x++)A)是无限循环 B)循环次数不定 C) 执行 4 次 D)执行 3 次答案: C分析:若要判断(y=123)&&(x<4)假,因为 y=123 永远为真,所以只需要判断 x<4 为假即可。
【5】对 for(表达式 1;;表达式 3)可理解为。
A) for(表达式 1;0;表达式 3)B) for(表达式 1;1;表达式 3)C) for(表达式 1; 表达式 1;表达式 3)D) for(表达式 1; 表达式 3;表达式 3)答案: B【6】设有程序段int k=10;while(k=0) k=k-1;则下面描述中正确的是。
A) while 循环执行 10 次 B)循环是无限循环C)循环体语句一次也不执行 D)循环体语句执行一次答案: C分析:因为 k=0 为假,所以程序不执行其后的语句。
【7】C 语言中 while 和 do-while 循环的主要区别是。
A) do-while 的循环体至少无条件执行一次B) while 的循环控制条件比 do-while 的循环控制条件严格C) do-while 允许从外部转到循环体内D) do-while 的循环体不能是复合语句答案: A【8】设有: int a=1,b=2,c=3,d=4,m=2,n=2; 执行(m=a>b)&&(n=c>d) 后 n 的值为。
《C语言程序设计基础》试卷及答案《C程序设计基础与实验》期中、期末试卷及答案目录2009 - 2010学年第二学期期中考试试卷 (1)2009 - 2010 学年第二学期期中考试答案 (8)2008 - 2009学年第二学期期中考试试卷 (9)2008 - 2009学年第二学期期中考试答案 (18)2007 - 2008学年第二学期期中考试试卷 (20)2007 - 2008学年第二学期期中考试答案 (27)2009 - 2010 学年第二学期期末考试试卷 (29)2009 - 2010 学年第二学期期末考试答案 (37)2008 - 2009学年第二学期期末考试试卷 (39)2008 - 2009学年第二学期期末考试答案 (48)2007-2008学年第二学期期末考试试卷 (50)2007-2008学年第二学期期末考试答案 (58)2009 - 2010学年第二学期期中考试试卷《C语言程序设计基础及实验》开课单位:计算分院;考试形式:闭卷;考试时间:_2010__年_ 4 _月;一、单选题2、表达式:(int)((double)9/2)-(9)%2的值是(2)。
A、0B、3C、4D、53、若已知int x=20,下列关系表达式条件的值是(3)。
printf("%d ",0<x<20);printf("%d\n",0<x&&x<20);A、0 0B、1 0C、0 1D、1 14、当变量c的值不为2、4、6时,值也为“真”的表达式是(4)。
A、(c==2)‖(c==4)‖(c==6)B、(c>=2&&c<=6)‖(c!=3)‖(c!=5)C、(c>=2&&c<=6)&&!(c%2)D、(c>=2&&c<=6)&&(c%2!=1)5、下列程序段输出的结果是(5)。
桂林电子科技大学信息科技学院09级C程序设计期中测试卷一、选择题(20题,共40分)1.一个C程序总是从开始执行。
A. 程序的第一个语句B. 主函数C. 子程序D. 主程序2.下列标识符中,合法的用户标识符为。
A. P#AdB. 12aC. charD. _int3.下面4组常量,合法的一组C语言常量是。
A. 0B. 10C. 0.01D. 0.10x10 10L "\"" 3E+02E+9 E1 "\' ""\""'a'"a"'t''tt'''''\0''\t' 0124.执行下列程序片段时输出结果是。
unsigned int a=65535;printf(“%d”,a);A)65535 B)-1 C)-32767 D)15.若有定义(说明)int a[3][4]; 则对数组a的元素的引用非法的是。
A. a[2][2*1]B. a[1][3]C. a[4-2][0]D. a[0][4]6.以下不能对二维数组a进行正确初始化的语句是。
A. int a[2][3] ={0};B. int a[][3] ={{1,2},{0}};C. int a[2][3] ={{1,2},{3,4},{5,6}};D. int a[][3] ={1,2,3,4,5,6};7.已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当从第一列开始输入数据时,正确的输入方式是。
int a1,a2; char c1,c2;scanf(“%d%d”,&a1,&a2);scanf(“%c%c”,&c1,&c2);A)1020AB↙B)10 20↙AB↙C)10 20 AB↙D)10 20AB↙8.下列表达式中,不满足“当x的值为偶数时值为真,为奇数时值为假”的要求。
A)x%2==0 B)!x%2!=0 C)(x/2*2-x)==0 D)!(x%2)9.对下述程序,是正确的判断。
main ( ){ int x,y;scanf(“%d,%d”,&x,&y);if (x>y)x=y;y=x;elsex++;y++;printf(“%d,%d”,x,y);}A)有语法错误,不能通过编译B)若输入3和4,则输出4和5 C)若输入4和3,则输出3和4 D)若输入4和3,则输出4和5 10.若a、b为int型变量,则执行下列语句后的b值是。
a=15;b=15;do{ b-=a;a++;}while(b--<0);A. 0B. -15C. -16D. -111.若a,b均为int型常量,且a=100,则关于循环语句for(b=100;a!=b;++a,++b) printf("------"); 的正确说法是。
A.循环体只执行一次B.死循环C.循环体一次也不执行D.输出--------12.下述程序的输出结果是。
main ( ){ int x=-1,y=4,k;k=x++<=0 && !(y--<=0);printf(“%d,%d,%d”,k,x,y);}A)0,0,3 B)0,1,2 C)1,0,3D)1,1,213.运行下面程序后,其输出结果是。
main(){ int i=1;while(i<19)if(i++%5!=3) continue;else printf("%d",i);printf("\n",i);}A. 257911131517B. 369121518C. 491419D. 38131719 14.运行下面的程序,其正确输出是。
#include<stdio.h>main(){ int i;for(i=1;i<=6;i++){ if(i%2){ printf("#");continue;}printf("*");}printf("\n");}A. ***###B. ###***C. #*#*#*D. *#*#*#15、下列程序运行后的输出结果是。
#include <stdio.h>#define MAX 10void main(){ int i,sum,a[]={1,2,3,4,5,6,7,8,9,10};sum=1;for(i=0;i<MAX;i++)sum-=a[i];printf(“sum=%d\n”,sum);}A. sum=55B. sum= -54C. sum= -55D. sum=5416、下面的程序运行后,其输出结果是____。
#include<stdio.h>main(){ int y=18,i=0,j,a[8]do{ a[i]=y%2;i++; y=y/2;}while(y>=1);for(j=i-1;j>0;j--)printf("%d",a[j]);}A.1000B.1001C.1010D.1100 17.下列程序运行后的结果是。
#include<stdio.h>main(){ int x=1,y=0,a=0,b=0;switch(x){ case 1:switch(y){ case 0:a++;break;case 1:b++;break;}case 2:a++;b++;break;}printf("a=%d,b=%d\n",a,b);}A. a=2,b=1B. a=1,b=1C. a=1,b=0D. a=2,b=218.下面程序的输出结果是。
main ( ){ int x=9;for (; x>0; x--) {if (x%3==0) {printf(“%d”,--x);continue ;}}}A)741 B)852 C)963 D)875421 19.下面程序的输出结果是。
main ( ){ char c=‟A‟;int k=0;do {switch (c++) {case …A‟ : k++ ; break ;case …B‟ : k-- ;case …C‟ : k+=2 ; break ;case …D‟ : k%=2 ; continue ;case …E‟ : k*=10 ; break ;default : k/=3 ;}k++;} while (c<‟G‟) ;printf (“k=%d”,k) ;}A)k=3 B)k=4 C)k=2 D)k=0 20.运行下面程序后,其输出结果是。
#include <stdio.h>main(){ int i; int n=2;while(++n<20){ i=1;while(++i<n){ if(n%i==0) break;if(i==n-1) printf("%d\t",n);}}printf("\n");}A. 2 5 7 9 13 17 19B. 3 5 7 11 13 17 19C. 2 3 5 7 11 13 17 19D. 3 5 7 11 13 17 20二、填空题(10题,共30分)1.当a=1,b=3,c=5,d=4时,执行完下面一段程序后x的值是2。
if (a<b)if (c<d) x=1;elseif (a<c)if (b<d) x=2;else x=3;else x=6;else x=7;2.下面程序的输出结果是k=0,m=5。
main ( ){ int k=0,m=0,i,j;for (i=0; i<2; i++) {for (j=0; j<3; j++)k++ ;k-=j ;}m = i+j ;printf(“k=%d,m=%d”,k,m) ;}A)k=0,m=3 B)k=0,m=5 C)k=1,m=3 D)k=1,m=5 3.下列程序的输出结果是8。
#include<stdio.h>main(){ int a=24,b=16,c,w;while(b) { w=a%b; a=b; b=w; }c=a;printf("%d\n",c);}4.若运行以下程序时,输入2473↙,则程序的运行结果是668977。
main ( ){ int c;while ((c=getchar( )) ! =‟\n‟)switch (c-…2‟) {case 0 :case 1 : putchar (c+4) ;case 2 : putchar (c+4) ; break ;case 3 : putchar (c+3) ;default : putchar (c+2) ; break ;}printf(“\n”);}5.写出下面程序运行的结果8。
main ( ){ int a,b;for (a=1,b=1 ; a<=100 ; a++) {if (b>=20) break;if (b%3==1) { b+=3 ; continue ; }b-=5;}printf(“%d\n”,a);}6、阅读以下程序,写出程序的运行结果。
#include <stdio.h> 1 0 0 0 0main() 0 1 0 0 0{ int a[6][6],i,j; 0 0 1 0 0for(i=1;i<6;i++) 0 0 0 1 0for(j=1;j<6;j++) a[i][j]=(i/j)*(j/i); 0 0 0 0 1for(i=1;i<6;i++){ for(j=1;j<6;j++) printf("%2d",a[i][j]);printf("\n\n");}}7、运行下面程序,其输出结果是__abcdefgabcd____。
#include <stdio.h>main(){ static char s[30]="abcdefg";static char t[ ]="abcd";int i=0,j=0;while(s[i]!='\0')i++;while(t[j]!='\0'){s[i+j]=t[j];j++;}s[i+j]='\0';printf("%s\n",s);}8. 字符串s的长度为14。