2010级C语言期末考试试卷(A卷)
- 格式:doc
- 大小:113.00 KB
- 文档页数:9
天津工业大学2010~2011学年第 1 学期高级语言程序设计(C语言) 试卷(A卷)学院班级学号姓名注意事项:1、本试卷共12 页,满分为100 分,考试时间为110 分钟。
2、标准答题卡使用2B铅笔涂写;文字题答题时请使用蓝、黑钢笔或圆珠笔,不得使用红颜色墨水笔。
一、单项选择题:(每题 1 分,共40 分)(说明:请将正确答案按照题干上【】内的序号涂写“标准答题卡”)1.以下标识符中,合法的变量名是【1】。
A) g_1 B) 3d C) u-d D) a&b2.以下叙述正确的是【2】。
A)在C程序中,main()函数必须位于程序的最前面B) C程序的每行中只能写一条语句C) C语言本身没有输入输出语句D)在C程序中,注释说明只能位于一条语句的后面3.若k,g均为int型变量,则以下语句的输出为【3】。
int k,g;k=017;g=111;printf("%d, ",k);printf("%x\n",g);A) 15,6f B) f,6f C) f,111 D) 15,1114.表达式sizeof(double)是【4】。
A) 一个双精度型表达式B) 一个整型表达式C) 一种函数调用D) 一个不合法的表达式5.设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)后n的值为【5】。
A) 1 B) 2C) 3 D) 46.设有说明:char w; int x; float y; 则表达式w*x+y/4.0值的数据类型为【6】。
A) float型B) int型C) double型D) char型7.设有变量定义语句char ch; 则能够正确地为变量ch输入数据的是【7】。
A) getchar(ch); B) putchar(ch);C) scanf("%c",ch); D) scanf("%c",&ch);8.设int i=0,j=2,k=3;则表达式i&&(i+k)&k|j+i的值是【8】。
一.选择题(每题1分,共10分)1、类CStudent的拷贝构造函数的声明语句为。
A.CStudent &CStudent (const CStudent other)B.CStudent CStudent(const CStudent other)C.CStudent (CStudent *other)D.CStudent (const CStudent &other)2、类的友元函数能访问该类的。
A.私有成员B.保护成员C.所有成员D.公有成员3、下面关于静态数据成员的描述中,正确的是。
A.静态数据成员可以直接用类名调用B.静态数据成员可以在类体内进行初始化C.静态数据成员不能受private控制符的作用D.类的不同对象有不同的静态数据成员值4、当使用fstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为__A.ios::in B.ios::out C.fstream::in | fstream::out D.没有指定打开方式5、若char p[20]=”hello world”;则输出该字符串正确的语句是__ __。
A.cout<<p[20]; B.cout<<&p; C.cout.<< *p; D.cout << p;6、在派生类中重新定义虚函数时,除了方面,其他方面都必须与基类中相应的虚函数保持一致。
A.参数个数和类型 B.函数体 C.函数名称 D.返回类型7、类模板定义如下:t emplate <class T, int low, int high>c lass Array {….};对该类模板实例化正确的是。
A.Array<float, 0, 20> x; B.Array<int, int, int> x; C.template<int, 0, 20> x; D.Array<int, 0, int> x;A.公有成员 B.9、假定AB为一个类,则执行 AB a(2), b[3], *p; 语句时共调用该类构造函数的次数为。
北京理工大学珠海学院2009 ~ 2010学年第二学期《C语言程序设计(B)》期末试卷(A)适用年级专业:2009级机械电子工程、车辆工程、机械与自动化试卷说明:闭卷,考试时间120分钟注意:请将答案填写在答题纸上一、选择题(每题1分,共20分)1. C语言程序的执行,总是起始于_____。
A.程序中的第一条可执行语句B.main函数C.程序中的第一个函数D.包含文件中的第一个函数2. C 语言程序中可以对程序进行注释,注释部分必须用符号_____括起来。
A.‘{‘ 和’}’B.‘[‘和’]’C.“/*”和”*/”D.“*/”和”/*”3. 以下不能定义为用户标识符是。
A. MainB. _0C. _intD.sizeof4. 在C语言中,字符型数据在内存中以形式存放。
A.原码B.BCD码C.反码D.ASCII码5. 下列运算符中,要求运算对象必须是整数的是。
A. /B.*C. %D.!6. 多重if_else语句嵌套使用时,寻找与else配套的if方法是。
A. 上面最近的的ifB. 其上最近的没有其他else配对的ifC. 下面最近的ifD. 同行上的if7. 下述表达式中,可以正确表示x≤0或x≥1的关系。
A.(x>=1) | | (x<=0)B.x>=1 | x<=0C.x>=1 && x<=0D.(x>=1) && (x<=0)8. 有以下程序void main(){ char a='a',b;printf("%c,",++a);printf("%c\n",b=a++);}后的输出结果是A. b,bB. b,cC. a,bD. a,c9. 逗号表达式(a=3*5,a*4),a+15的值是。
A.15B.60C.30D.不确定10. 有如下程序void main(){ int i,sum;for(i=1;i<=3;sum++)sum+=i;printf(“%d\n”,sum);}该程序的执行结果是。
1、下列叙述中,不正确的是()。
A、一个C源程序必须有且只有一个主函数B、一个C源程序可以包含零个或若干个子函数C、在C源程序中,注释说明必须位于语句之后D、C源程序的基本结构是函数2、下列叙述中,不正确的是()。
A.分号是C语句的必要组成部分B. C语句的注释可以写在语句的后面C.函数是C程序的基本单位D.主函数的名字不一定有main表示3、以下不是C语言的特点是()。
A、C语言简洁紧凑B、C语言可以直接对硬件进行操作C、C语言的可移植性好D、C语言编程容易4、构成C语言的基本单位是()。
A、过程B、函数C、子程序D、命令5、一个C程序的执行是从()。
A、main函数开始,直到main函数结束B、main函数开始,直到最后一个函数结束C、从第一个函数开始,直到最后一个函数结束D、第一条语句开始,直到最后一条语句结束6、在C语言中,main函数的位置A、必须作为第一个函数B、必须作为最后一个函数C、可以任意D、必须放在它所调用的函数之后7、C程序是由()构成的。
A、一个主程序与若干个子程序B、一个或多个函数C、若干过程D、若干子程序8、以下叙述不正确的是()。
A.在C程序中,注释说明只能位于一条语句的后面B.注释说明被计算机编译系统忽略C.注释说明必须括在“/*”和“*/”之间,注释符必须配对使用D.注释符“/”和“*”之间不能有空格9、下列符号串中,属于C语言合法标识符的是。
A. ex-1B. ifC. _cookD. 951a10、当把以下四个表达式用作if语句的控制表达式时,有一个选项与其他三个选项含义不同,这个选项是()。
A、K%2B、K%2= =1C、(K%2)! =0D、!K%2= =111、对于一个完整的可运行的C源程序,下列哪一个说法是正确的?A、C 语言程序总是从第一个定义的函数开始执行。
B、在C语言程序中,要调用的函数必须在main()函数中定义。
C、C语言程序总是从main()函数开始执行。
..中国矿业大学(北京)《C 语言与程序设计》试卷( A 卷)得分:_____一、选择题(1-10每题1分,11-30每题1.5分,共30分) 1. 下列选项中,可以作为用户标识符的是CA) int B) 8_cat C) _a_0 D) a+b2. 以下定义语句,有错误的是:CA) char a=’x ’; B) char a=’\0’; C) char a=’mn ’; D) char a=’9’;3. 设有定义:int x=2; 以下表达式中值不为6的是:DA) x *= x+1 B) x++, 2*x C) x *= (1+x) D) 2*x, x += 24. 有以下定义:int a; long b; double x, y; 则以下选项中正确的表达式是:BA) a%(x-y) B) a = x!=y C) (a*y)%b D) y = x+y = x5. 以下选项中能表示一个合法常量的是:A A) 整数:1,200B) 实数:-3.5e2.0 C) 字符斜杠:'\' D) 字符串:"\007"6. 以下是while 语句的一般形式Dwhile(表达式) 语句其中关于“表达式”的说明正确的是:A) 必须是逻辑表达式 B) 必须是关系表达式C) 必须是逻辑表达式或关系表达式 D) 可以是任意合法的表达式.7. 若用数组名作为函数调用的实参,则传递给形参的是:AA) 数组的首地址B) 数组的第一个元素的值C) 数组中全部元素的值D) 数组元素的个数8. 在定义二维数组int a[2][3];之后,对a的正确引用是:CA) a[2][4] B) a[2][0] C) a[0][0] D) a[0,0]9. 下列语句中正确的是:AA) char *str; str = “CUMTB”; B) char str[20]; str = “CUMTB”;C) char *str; str = {“CUMTB”}; D) char str[20]; str = {“CUMTB”};10. 设有定义 int a[10], *p=a; 以下能够代表数组元素a[4]的是:BA) a+4 B) *(p+4) C) *a+4 D) *p + 411. 有如下程序#include <stdio.h>void main(){ char c1, c2;c1 = 'a' + '6' - '2';c2 = 'a' + '6' - '3';printf("%c,%d\n", c1, c2);}已知字母a的ASCII码是97,则程序运行后的输出结果是:AA) e,100 B) d,101 C) e, d D)无确定输出结果12. 表达式a += a -= a = 9的值是:DA) 9 B) -9 C) 18 D) 013. 有以下程序#include<stdio.h>void main(){ int a=1, b=0;if(!a) b++;else if(a = = 0)if(a) b += 2;else b+=3;printf("%d\n", b);}程序运行后的输出结果是: AA) 0B) 1C) 2D) 3...14. 有以下程序#include <stdio.h> void main() { int a=1, b=2;while(a<6) { b += a; a += 2; b %= 10;}printf(”%d,%d\n ”, a, b); }程序运行后的输出结果是: BA) 5,11 B) 7,1 C) 7,11 D) 6,115. 有以下程序#include <stdio.h> void main(){char s[] = ”abcedf";printf(”%s,%c\n”, s+2, *s+2);}程序运行后的输出结果是BA) cedf, cedf B) cedf, c C) cedf, 字符c 的ASCII 码值 D) 出错16. 有以下程序#include <stdio.h> void main(){ int y=50;while(y--); /*循环体为空*/ printf(”y=%d\n”, y); }程序执行后的输出结果是:BA) y=0 B) y= -1 C) y=1 D)while 构成无限循环17. 有以下程序#include <stdio.h>#include <string.h> void main(){ char s[10]=”STRING”; s[0]=0;s[1]= '\0'; s[2]= '0';printf(”%d %d\n”, sizeof(s), strlen(s));.. }程序运行后的输出结果是 DA) 6 1B) 7 0C) 6 3D) 10 018. 以下程序段完全正确的是 CA) int *p;scanf("%d", &p);B) int *p;scanf(“%d”, p);C) int k, *p=&k;scanf("%d", p);D) int k, *p;*p= &k;scanf(“%d”, p);19. 下列定义数组的语句中,正确的是 BA) int N=10;int a[N];B) #define N 10int a[N];C) int a[0…10];D) int a[];20. 有以下程序#include<stdio.h>void f(int *p);void main(){ int a[5] = {1, 2, 3, 4, 5}, *r=a;f( r );printf(“%d\n”, *r);}void f(int *p){ p=p+3;printf(“%d,”,*p);}程序运行后的输出结果是 DA) 1,4B) 4,4C) 3,1D) 4,121. 若有以下语句typedef struct my_type{ int g;..char h;} TS;以下叙述中正确的是DA) 可用my_type 定义结构体变量 B) 可用TS 定义结构体变量 C) my_type 是struct 类型的变量 D) TS 是struct my_type 类型的变量22. 数学上的式子 1≤x≤10怎么用C 语言的表达式来表示:CA) 1≤x≤10 B) 1<=x<=10 C)x>=1 && x<=10 D) 以上都不对23. 有以下程序#include <stdio.h> #define f(x) x*x void main() { int a=5, s, t; s=f(a+1); t=f((a+1));printf("%d,%d\n", s, t); }程序运行结果是: DA) 11,11 B) 36,36 C) 36,11 D)11,3624. 有如下程序#include <stdio.h> void main(){ void func(int *p, int *q); int m = 1, n =2, *r = &m; func(r, &n);printf("%d,%d\n", m, n); }void func(int *p, int *q) { p = p+1; *q = *q + 1; }程序运行结果为:AA) 1, 3 B)2,3 C) 1,4 D) 1,225. 有如下程序#include <stdio.h> void main() {int i, j;..for(i=0; i<3; i++, i++) for(j=1; j<4; j++) printf("*");}则程序运行后的输出结果是:BA) ********* B) ****** C) *** D)*26. 若有定义语句int a, b; double x; 则下列选项中没有错误的是 CA) switch(x%2) B) switch((int)x/2.0){ case 0: a++; break; { case 0: a++; break;case 1: b++; break; case 1: b++; break;default : a++; b++; default : a++; b++;} }C) switch((int)x%2) D) switch((int)(x)%2){ case 0: a++; break; { case 0.0: a++; break;case 1: b++; break; case 1.0: b++; break;default : a++; b++; default : a++; b++;} }27. 有以下程序#include<stdio.h>int f(int x);void main(){ int n=1, y;y=f(f(n));printf(“%d\n”, y);}int f(int x){ return x*2; }程序运行后的输出结果是 CA)1B)2C)4D)828. 有以下程序#include<stdio.h>void f(int x){ if(x/3 > 1)f(x/3);..printf(“%d ”, x); /*%d后有一空格*/ }void main(){ f(13);printf(“\n”);}程序运行后的输出结果是 DA)1 4 13B)13 4 1C)13 4 D)4 1329. 有如下程序,其中k的初始值为八进制数#include <stdio.h>void main(){ int k=013;k++;printf(“%d\n”, k);}则程序运行后的输出结果是:CA) 14 B) 13 C) 12 D) 1130. 有以下程序#include<stdio.h>void main( ){ int i, s=0;for(i=1; i<=100; i+=2) s+=i;printf(“%d\n”,s);}程序执行后的输出结果是 CA)自然数1~100的累加和 B)自然数1~99的累加和C)自然数1~100中的奇数之和 D)自然数1~100中的偶数之和二、填空题(【1】-【10】每空1分,【11】-【20】每空2分,共30分)1.C语言使用变量遵循的原则:___先定义后使用____,程序运行的入口函数是: main()函数;2.某字符数字char str[10]=”abcde”,则sizeof(str)=_10_,str[5]=‘\0’;3.循环while(10) printf(“*”),输出‘*’的个数为:___无穷个___;4. 当a=3,b=4,c=5时,写出下列各式的值。
贵州大学2010-2011学年第一学期考试试卷 A高级语言程序设计注意事项:1. 请考生按要求在试卷装订线内填写姓名、学号和年级专业。
2. 请仔细阅读各种题目的回答要求,在规定的位置填写答案。
3. 不要在试卷上乱写乱画,不要在装订线内填写无关的内容。
4. 满分100分,考试时间为120分钟。
一、选择题(共30分,每小题2分)1. 程序经过编译生成的是( B )。
A、源文件B、目标文件C、可执行文件D、编译文件2. 在一个C程序中( C )。
A、main函数出现在所有函数之前。
C程序不一定都有main函数。
B、main函数必须出现在所有函数之后。
一个C程序必须有且仅有一个main函数。
C、main函数可以在任何地方出现。
一个C程序必须有且仅有一个main函数。
D、main函数出现在固定位置。
一个C程序可以有多个main函数。
3. 已知三角形的底为a,高为b,用C语言书写正确的面积公式为( B )。
A、 1/2*a*bB、 1.0/2*a*bC、 1.0/2.0abD、 1.0/2*ab4.可用作用户标识符的一组标识是( C )。
A、void defineB、a3-3 _123C、For _abcD、2a sizeof5. 已知int i=3,j=5; float x=2.5; double y=5.0;则y+=i-=j*=++x;的值为( C )。
A、 -9.5B、 -9C、 -9.0D、-7.06.设 x=011; 执行printf (“%d”, x); 的输出是( B )。
A、11B、9C、8D、77. 语句if (!i ) i++; 中的条件表达式 !i 等价于()。
A、i=0B、i!=1C、i!=0D、-i8. 设int a=4;则表达式a<1&&--a>1的运算结果和a的值分别是( B )。
A、0和3B、0和4C、1和3D、1和49. 若有以下语句int x = 3;do {printf("%d\n", x -= 2);} while (!(--x));运行后输出( B )。
2010C程序设计期末试卷B、若变量已正确定义,表达式x + y = z是⼀个合法的赋值表达式。
C、do-while语句先执⾏循环体,后判断循环条件,所以循环体⾄少会执⾏⼀次。
D、不同类型的变量在内存中占⽤存储空间的⼤⼩不⼀样。
16. char *s[ ]={"first","second","third"};printf("%s,%s,%c\n", s[0], s[1]+1,*s[2]);A、f irst,second,*thirdB、first, econd+1,*thirdC、first, econd, *tD、first, econd, t试题⼆、按题⽬的意思,写出正确的内容。
(共12分)1.C程序中的“真”和“假”是如何表⽰?2.读程序,回答问题#include#define MAX 7void main( ){ int i,a[MAX]={5,8,-7,5,3,0,7},c;for(i=0;i{ c=a[i]; /* 第8⾏*/a[i]=a[MAX-i-1];a[MAX-i-1]=c; /* 第10⾏*/}for(i=0;i}问题1.程序运⾏后的输出结果为是:。
问题2.将for循环中的i问题3.删除第8⾏,将第10⾏a[MAX-i-1]=c改为a[MAX-i-1]=a[i],for循环中仍然是i3.定义⼀个可以表⽰⽇期(年、⽉、⽇)的结构体数据类型date,并⽤该类型定义⼀个变量z同时为变量初始化,初始化年、⽉、⽇的值分别2007、6、28。
4.写出调⽤函数g(4)的输出结果。
return n;else return g(n-2)+g(n-1);}试题三、读程序写出程序执⾏结果(共24分)1. 阅读下列程序,并写出程序执⾏结果。
#includeint f(int m, int n){ int c= 0;for( ; m != 0 ; m=m/10 ){if(m%10 == n) c++;}return c;}void main( ){printf("%d#", f(30303, 0));printf("%d#", f(21212, 3));}2.阅读下列程序,并写程序执⾏结果。
2010级VC期末复习题1、单项选择题(本题共计130分)1、设变量m,n,a,b,c,d均为0,执行(m=a==b)||(n=c==d)后,m,n的值是____________。
( )A、0,0B、0,1C、1,0D、1,1?2、设有代码“int a=5;”,则执行了语句“a+=a-=a*a;”后,变量a的值是____________。
( )A、3B、0C、-40D、–123、运算符+、<=、=、%中,优先级最低的运算符是____________。
( )A、+B、<=C、=D、%4、设int a=2,b=2;则++a+b的结果是________,a的结果是________,b的结果是________。
( )A、2 3 5B、3 2 5C、4 3 2D、5 3 25、设有变量说明:int a=3,b=4,c=5下列表达式中,值为0的表达式是( )A、‘a’&&‘bB、a<=bC、a || b+c && b-cD、!(a<b && c<b || b)6、下列数据类型不是C++语言基本数据类型的是____________。
( )A、字符型B、整型C、实型D、数组7、在C++语言中,080是____________。
( )A、八进制数B、十进制数C、十六进制数D、非法数8、设int m=l,n=2;则++m==n的结果是________。
( )A、0B、1C、2D、39、设有定义int a=5,b;执行下列代码后,b的值不为2的是____________。
( )A、b = a/2B、b = 6-(--a)C、b = a%2D、b = a < 3 ? 3: 210、在C++语言中,自定义的标识符____________。
( )A、能使用关键字并且不区分大小写B、不能使用关键字并且不区分大小写C、能使用关键字并且区分大小写D、不能使用关键字并且区分大小写12、系统约定C++源程序文件名的缺省的扩展名为______。
XX 学院试卷《C语言程序设计试卷》试卷(A卷)一、填空题(每题2分,共10×2=20分)1、除机器语言之外的其他语言要被机器识别,必须经过翻译的过程,翻译有编译和解释两种,C语言所采用的是翻译方式。
2、C语言是函数驱动的,组成C语言程序的基本单位是。
3、C语言的入口函数是函数,且程序亦结束于该函数。
(填写英文)4、在函数体中,一条C语言语句均以结尾。
(填写符号)5、C程序的调试过程包括:→→→四个步骤。
6、基本数据类型包括:整数类型、浮点类型、和枚举类型。
7、浮点型包括单精度型和。
8、变量命名时,在能取得符号中,不能以开头。
9、63%10= 。
10、有数组定义如:int x[10];则数组的第三个元素应表示为。
二、单选题(每小题1分,多选,错选都不得分;共15×1=15分)1、C语言中主函数的个数是( )A、1个B、2个C、6个D、任意多个2、以下不属于C语言基本数据类型的是( )。
A、字符型B、浮点型C、整型D、空类型3、下面关于字符常量和字符串常量的叙述中错误的是( )。
A、字符常量由单引号括起来,字符串常量用双引号括起来B、字符常量只能是单个字符,而字符串常量则可以包含一个或多个字符C、字符常量占用一个字节的内存空间,字符串常量占的内存字节数等于字符串中字节数D、可以把一个字符常量赋值给一个字符变量,但不能把一个字符串常量赋予一个字符变量4、设有变量说明:float x=4.0,y=4.0;。
下面使x为10.0的表达式是( )。
A、x -=y*2.5B、x/=y+9C、x*=y-6D、x+=y+25、下列程序段的输出结果是( )。
char c1,c2;c1=65;c2=65+32+1;printf(“%c,%c”,c1,c2);A、a,BB、A,BC、A,bD、a,b6、以下运算符为单目运算符的是( )。
A、!B、&&C、%D、?:7、以下哪项不属于结构化程序设计方法的特点( )。
2010大学C语言程序设计试题及答案一、单选题(每小题2分,共20分)(1)变量的指针,其含义是指该变量的。
A) 值 B) 地址 C) 名 D) 一个标志(2)若有说明int (*p)[3];则以下是正确的叙述。
A) p是一个指针数组B) p是一个指针,它只能指向一个包含3个int类型元素的数组C) p是一个指针,它可以指向一个一维数组中的任一元素D) (*p)[3]与*p[3]等价(3)以下是对共用体类型数据的正确描述。
A) 一旦定义了一个共用体变量后,即可引用该变量或该变量中的任何成员。
B) 一个共用体变量中可以同时存放其所有成员C) 一个共用体变量中不能同时存放其所有成员D) 共用体类型数据可以出现在结构体类型定义中,但结构体类型数据不能出现在共用体类型定义中。
(4)若有语句int array[3][4];以下对下标为i和j的数组元素的引用不正确的是。
A) array[i][j] B) *(*(array+i)+j) C) *(array[i]+j) D) *(array+i*4+j)(5)一般情况下,文件占用存储空间较多。
A)二进制文件 B)文本文件 C)随机文件 D)顺序文件(6)以下引用非法的是。
struct student{ int num;int age;}stu1,*p;p=&stu1;A) stu1.age B) student.age C) p->age D) (*p).age(7)指针变量一定不能进行的运算是。
A)+ B)- C)= D)/(8)以下关于main()函数的说法,正确的是。
A) main()必须是程序的第一行 B)main()可以有参数C) 一个程序可以有多个main() D)main()可以被用户自定义的函数调用(9)关于下面的函数,正确的说法是。
void Swap(int *p1, int *p2){ int *p;*p = *p1;*p1 = *p2;*p2 = *p;}A) 交换*p1和*p2的值 B) 正确,但无法改变*p1和*p2的值C) 交换*p1和*p2的地址 D) 编译时可能出现警告错误(10)若对文件的操作未到文件尾时,feof(fp)函数的返回值是。
2010级C语⾔期终考试试题(适⽤于机电学.2010-2011 学年第⼀学期《C 语⾔程序设计》课内考试卷(A 卷)授课班号年级专业学号姓名⼀、选择题(30分,每⼩题1分)1.以下所列的C 语⾔常量中,错误的是( )A . 0xFF B. 1.2e0.5 C.‘#’ D. '\72' 2. 下⾯四个选项中,合法⽤户标识符的选项是( )A. floatB. _totalC. #123D. M.D.John3. 若有以下类型说明语句:char x; float y; double z; 则表达式x+z-y 的结果类型为( )A. floatB. charC. intD. double4. 设x 、y 、s 均为int 型变量,则执⾏语句:x=y=2;s=x++||++y;后,y 的值为( )A. 不定值B. 2C. 3D. 15. 若有说明语句:char c=‘\67’;则变量c( )A .包含1个字符B .包含2个字符C .包含3个字符D .该说明语句不合法C .2D .27.下⾯程序段执⾏后 int i = 4; float x;x = i /5;x 的值为( )A. 0.8B. 0C. 0.0D. 1.08.设有说明“int a=3,b=5,m;”,则执⾏表达式m=a<=3 &&a+b<8后,m 的值为( )。
. A.true B.false C.0 D.19. 完成下列循环语句后,n的值为多少( )。
for(int n=0;n<100;n++){ }A. 0B.99C.100D.10110. 设有定义int a[]={1,2,3,4,5,6,7,8,9,10}, *p=a,i;则数组元素地址的正确表⽰为( )。
A、&(a+1)B、a++C、&pD、&p[i]11.下列数组定义正确的为( )A.char a[]={3,5}; B.char a[]={‘3’,‘5’};C.char a[]=‘3,5’; D.char a[2]=”3579”;12.有如下定义 int *p=NULL; 表⽰( )A. p指向的单元的值为0B. p指向的单元的值为NULLC. p不指向任何有效单元D. p指向的变量的值为0C. 不确定D. 45main(){ int i , sum=0;for(i=10;i>4;i-=2) sum+=i;printf("%d\n",sum);}14.数组作为函数的形参时,把数组名作为实参,传递给函数的是( )。
秋土木工程专升本《C语言程序设计》A卷姓名:成绩:一、选择题(30分,每题2分)1、以下不正确的C语言标识符是( )。
A、intB、a_1_2C、ab1exeD、_x2、C语言程序从main( )函数开始执行,所以这个函数要写在( )。
A、程序文件的开始B、程序文件的最后C、它所调用的函数的前面D、程序文件的任何位置3、已知long i=32768;执行语句printf("%d",i);屏幕显示( )。
A、-1B、-32768C、1D、327684、在C语言中,整数-8在内存中的存储形式是( )。
A、1111 1111 1111 1000B、1000 0000 0000 1000C、0000 0000 0000 1000D、1111 1111 1111 01115、字符串"\"EOF\n=-\61\""的长度是( )。
A、8B、9C、14D、非法字符串6、在位运算中,操作数每右移一位,其结果相当于( )。
A、操作数乘以2B、操作数除以2C、操作数除以16D、操作数乘以167、下列循环语句中有语法错误的是( )。
A、while(x=y)5;B、while(0);C、do 2;while(x==b);D、do x++ while(x==10);8、求取满足式 12+22+32+ …… +n2 ≤1000的n,正确的语句是( )。
A、for(i=1,s=0;(s=s+i*i)<=1000;n=i++);B、for(i=1,s=0;(s=s+i*i)<=1000;n=++i);C、for(i=1,s=0;(s=s+i*++i)<=1000;n=i);D、for(i=1,s=0;(s=s+i*i++)<=1000;n=i);9、下面的for语句,for(x=0,y=10;(y>0)&&(x<4);x++,y-- ) ( )。
C语言程序设计期末试题A及答案C语言程序设计教程期末考试试卷(A卷)(考试时间90分钟,满分100分)一、选择题(本大题共20题,每题2 分,共40分)下面各题A.B.C.D四个选项中,只有一个选项是正确的,请将正确选项涂抹在答题卡相应的位置上,答在试卷上不得分。
1. 以下不是C语言的特点的是( )A. C语言简洁、紧凑B. 能够编制出功能复杂的程序C. C语言可以直接对硬件进行操作D. C语言移植性好2. 以下不正确的C语言标识符是( )A. ABCB. abcC. a_bcD. ab.c3. 一个C语言程序是由( )A. 一个主程序和若干子程序组成B. 函数组成C. 若干过程组成D. 若干子程序组成4. 一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是( )A. 有零个或多个输入B. 有零个或多个输出C. 有穷性D. 可行性5. 设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( )A. intB. floatC. doubleD. 不确定6. 在C语言中,char型数据在内存中的存储形式是( )A. 补码B.反码C.源码D.ASCII码7. 有如下程序,输入数据:12345M678<cR>后(表示回车),x的值是( ) 。
#includemain(){int x;float y;scanf("%3d%f",&x,&y);}A. 12345B. 123C. 45D. 3458. 若有以下定义int a,b; float x,则正确的赋值语句是( )A. a=1,b=2B. b++;C. a=b=5D. b=int(x);9. 以下程序的执行结果是( )#include{int i=10,j=10;printf("%d,%d\n",++i,j--);}A. 11,10B. 9,10C. 11,9D. 10,910. 已知字母A的ASCII码是65,以下程序的执行结果是( )#includemain(){char c1='A',c2='Y';printf("%d,%d\n",c1,c2);A. A,YB. 65,65C. 65,90D. 65,8911. 下列运算符中优先级最高的是( )A. <B. 十C. %D. !=12. 设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( ) 。
桂林电子科技大学信息科技学院试卷2010-2011 学年第 2 学期课号I04BT014课程名称C语言程序设计(A卷;、闭卷)适用班级(或年级、专业)10级、全院一单项选择题(每题2分,共40分)1 以下叙述正确的是。
A C程序基本组成单位是语句B 简单C语句必须以分号作为结束符C C程序每一行只能写一个语句D 注释语句可以嵌套2 设a和b均为int型变量,则执行以下语句后的输出为。
int a=20; int b=3; printf("%d\n",a+=(b%=2));A 0B 20C 21D 223 设int型占2个字节,且int i=-2;,则语句printf("%u",i);的输出结果为。
A -2B -32768C 65535D 655344 以下程序运行后的输出结果是。
main(){ double d=3.2; int x,y;x=1.2; y=(x+3.8)/5.0;printf("%d\n",d*y);}A 0B 3C 3.07D 3.25 以下程序运行后的输出结果是。
main(){ int a=2,b=-1,c=2;if(a<b)if(b<0) c=0;else c++;printf("%d\n",c);}A 0B 1C 2D 36 以下程序的执行结果是。
main(){ int n=9;while(n>6) { n--; printf("%d",n); }}A 987B 9876C 8765D 876void main(){ int x=15,y=21,z=0;switch (x/8){ case 2: z=z+1;break;case 1: z=z+1;switch (y/21){ default : z=z+1;case 0: z=z+1;break;}}printf("%d\n",z);}A 4B 3C 2D 18 以下程序的输出结果是。
main(){int i=0,a=0;while(i<20){ for(; ;)if((i%10)==0) break;else i--;i+=11;a+=i;}printf("%d\n",a);}A 11B 21C 32D 339 以下程序执行后的输出结果是。
main(){int x=1,y=1;while(y<=5){ if(x>=10) break;if(x%2==0){ x+=5;continue;}x-=3; y++;}printf("%d,%d",x,y);}A 6,6B 7,6C 10,3D 7,3void main(){ int a, b;for(a=1,b=1; a<=100; a=a+1){ if(b>=10) break;if(b%3==1){ b=b+3; continue; };}printf("%d\n",a);}A 3B 4C 5D 10111 以下程序的输出结果是。
main(){ int i,k,a[10],p[3];k=5;for(i=0;i<10;i++) a[i]=i;for(i=0;i<3;i++) p[i]=a[i*(i+1)];for(i=0;i<3;i++) k+=p[i]*2;printf("%d\n",k);}A 20B 21C 22D 2312若运行以下程序时输入:2 4 6<回车>,则输出结果是___。
main(){ int x[3][2]={0},i;for(i=0;i<3;i++) scanf("%d",x[i]);printf("%3d%3d%3d\n",x[0][0],x[0][1],x[1][0]);}A 2 0 0B 2 0 4C 2 4 0D 2 4 613 以下程序运行后的输出结果是。
void reverse(int a[], int n){ int i, t;for(i=0; i<n/2; i++){ t=a[i]; a[i]=a[n-1-i]; a[n-1-i]=t; }}main(){int b[10]={1,2,3,4,5,6,7,8,9,10}, i, s=0 ;reverse (b, 8);for(i=6; i<10; i++)s+=b[i];printf("%d\n",s);}A 22B 10C 34D 30main(){ char a[2][4];strcpy(a,"you"); strcpy(a[1],"me");a[0][3]='&';printf("%s\n",a);}A youB you&C meD you&me15 调用函数的实参与被调用函数的形参应有如下关系。
A 只要求实参与形参个数相等B 只要求实参与形参顺序相同C 只要求实参与形参数据类型相同D 上述三点均需具备16 以下程序运行后的输出结果是。
long fun(int n){ long s;if(n==1||n==2) s=2;else s=n-fun(n-1);return s;}main(){printf("%ld\n",fun(3));}A 1B 2C 3D 417 以下程序运行后的输出结果是。
void main(){ int i, x[3][3]={9,8,7,6,5,4,3,2,1}, *p=&x[1][1];for(i=0; i<4; i+=2) printf("%d ", p[i]);}A 5 1B 5 2C 5 3D 9 718 已知下列说明语句,则表达式**(q+2)的值是。
static int a[]={2,4,6,8}static int *p[]={a,a+1,a+2,a+3};int **q;q=p;A 2B 4C 6D 819 有以下说明语句,对结构变量中成员age的正确引用是。
struct student{ int age;int sex;}stud1,*p;A p->ageB student.ageC *p.ageD stud1.student.age#include<stdio.h>void fun(char *fname, char *st){ FILE *myf; int i;myf=fopen(fname, "w");for(i=0; i<strlen(st); i++) fputc(st[i], myf);fclose(myf);}main(){ fun("test.txt", "new world");fun("test.txt", "hello,");}A new worldhello,B hello,rldC new worldD hello,二填空题(每题3分,共30分)1 下面的程序运行时从键盘上输入9876543210<回车>,程序的输出结果是。
main(){int a;float b,c;scanf("%2d%2f%2f",&a,&b,&c);printf("a=%d,b=%.1f,c=%.0f",a,b,c);}2 若输入字符串:abcde<回车>,则以下while循环体将执行次。
while((ch=getchar())=='e') printf("*");3 下列程序的输出结果是。
main(){ int s,i;for(s=0,i=1;i<3;i++,s+=i);printf("%d\n",s);}4 若int类型变量占两个字节,定义int x[10]={0,2,4};,则数组x在内存中所占的字节数是。
5 以下程序的输出结果是。
main(){int b[3][3]={0,1,2,0,1,2,0,1,2}, i, j, t=0;for(i=0; i<3; i++)for(j=i; j<=i; j++) t=t+b[j][j];printf("%d",t);}6 以下程序的输出结果是。
main(){ char ch[]="abc",x[3][4]; int i;for(i=0;i<3;i++) strcpy(x[i],ch);for(i=0;i<3;i++) printf("%s",&x[i][i]);printf("\n");}7 运行下面程序,其输出结果是。
#include <stdio.h>int x,y;one(){ int a,b;a=25,b=10;x=a-b;y=a+b;}main(){ int a=9,b=5;x=a+b;y=a-b;one();printf("%d,%d\n",x,y):}8 以下程序的输出结果是。
void fun(int x, int y){ x=x+y; y=x-y; x=x-y;printf("%d,%d",x,y);}main(){ int x=2,y=3;fun(x,y);printf("%d,%d\n",x,y);}9 以下程序的输出结果是。
void print(int w){ int i;if(w!=0){ print(w-1);for(i=1;i<=w;i++)printf("%d",w);printf("\n");}}main(){ print(4); }10 以下程序的输出结果是。
void swap(int *a, int *b){ int *t;t=a; a=b; b=t;}main(){ int i=2,j=5,*p=&i,*q=&j;swap(p,q); printf("%d %d\n",*p,*q)}三程序填空题(每空3分,共30分)1 以下程序的功能是从键盘输入若干个学生的成绩,统计最高成绩和最低成绩,当输入为负数时,结束输入。