《C程序设计基础及实验》课程期中考试试卷参考答案
试题一、单选题(每小题2分,共20分)
1. 以下正确的字符常量是______。
A.?\412?B.255 C.?\08?D.?\?
【解答】
A.八进制412超出了8位二进制所能表示的范围03ff;
B.255是一个合法的整数,可以表示一个字节的值;
C. 8不是一个合法的八进制数字;
D. \是转义字符,\?表示单个单引号字符本身,所以。字符常量缺少右单引号。
2. 假设有定义:float x=16/5/2.0, y=16/5.0/2; 则x 和y 的值分别为______。
A.1.5 1.6 B.1.6 1.6 C.1.5 1.5 D.1.6 1.5
【解答】
16/5/2.0 → (16/5)/2.0 → 3/2.0 → 1.5
16/5.0/2 → (16/5.0)/2 → 3.2/2 → 1.6
3. 下列语句中,_____ 将输出%d。
A.printf(“%d”); B.printf(“%%d”); C.printf(“\%d”); D.printf(“%%%d”)
【解答】
A.%d表示输出十进制整型量,但缺少相应的输出表达式,故输出结果是随机值;
B.%%表示输出一个%符号本身,d是普通字符,原样输出,所以输出%d;
C.\%表示符号%,%d表示输出十进制整型值,故输出结果是随机值;
D.%%表示输出符号%本身,%d表示输出十进制整型值。
4. 下列程序段输出结果为_____。
int x=1, y=012;
printf(“%d”,y*x++);
A.12 B.10 C.20 D.24
【解答】
x++表达式的值是1,y*x++ → y*1 → y → 012 → 10
5. 下列程序段输出结果为_____。
int a=1,b=2,c=2,t;
while(a
《C程序设计基础及实验》期中考试试卷, 2012年11月23日 1 / 10
《C 程序设计基础及实验》期中考试试卷, 2012年11月23日 2 / 10
printf(“%d,%d,%d”,a,b,c);
A .1,2,0
B .2,1,0
C .1,2,1
D .2,1,1
【解答】
a=1,b=2,c=2
(1) 表达式a
(2) 表达式a
(3) 表达式a
6. 在下图中,阴影部分区域可用表达式_______来表示。
X
a b c
A .(x<=a)&&(x>=b)&&(x<=c)
B .(x<=a)||(b<=x<=c)
C .(x<=a)||(x>=b)&&(x<=c)
D .(x<=a)&&(b<=x<=c)
【解答】
(x<=a )|| ((x >=b) && (x <= c)) → (x<=a )|| (x>=b) && (x <= c)
7. 下列程序段输出结果为 _____。
int x = -3, y = 2;
if(x>y);
x = -x;
if(x y = -y; printf("x=%d,y=%d\n", x, y); A .x=3,y=-2 B .x=3,y=2 C .x=-3,y=2 D .x=-3,y=-2 【解答】x=3,y=2; 请注意:if(x>y); 8. 对于循环while(!e) 语句,!e 等价于_____。 A .e==0 B .e!=0 C .e==1; D .e!=1 【解答】 9. 循环 for(i=0, j=5; ++i!=--j; ) printf(“%d %d”, i, j); 将执行_____。 A.6次B.3次C.0次D.无限次 【解答】 (1) i=0, j=5: ++i → 1 , --j → 4, i=1,j=4, 1 != 4成立;打印;i=1, j=4; (2) i=1,j=4: ++I → 2 , --j → 3, i=2,j=3, 2 != 3成立;打印;i=2, j=3; (3) i=2,j=3: ++I → 3, --j → 2, I = 3, j=2, 3 != 2成立;打印;i=3,j=2; (4) …… 10. 下列程序段执行后s值为_____。 int i=5, s=0; do if (i%2) continue; else s+=i; while (--i); A.15 B.9 C.6 D.以上均不是 【解答】 (1) I=5,s=0: i%2→5%2→1成立:continue;--i→4, i=4; (2) I=4,s=0: i%2→4%2→0不成立:s=0+4=4;--i→3, i=3 (3) I=3,s=4: i%2→3%2→1成立:continue;--i→2, i=2 (4) I=2,s=4: i%2→2%2→0不成立:s=4+2=6; --i→1,i=1 (5) I=1,s=6: i%2→1%2→1成立:continue;--i→ 0 试题二、填空题(每小题2分,共20分) 1. 表达式1+4/5+15<7+4%5+(8,10) 的值为_____。 【解答】 1+(4/5)+15<7+4%5+(8,10) → 1+0+15<7+4%5+(8,10) →1+15<7+4%5+(8,10) →16<7+4%5+(8,10) →16<7+4+(8,10) →16<11+(8,10) →16<11+10 →16<21 →1 2. 表达式!!5 的值为_____。 【解答】 !!5 → !(!5) →!0→1 3. 表达式~(10<<1)&4 的值为______。 《C程序设计基础及实验》期中考试试卷, 2012年11月23日 3 / 10 【解答】 10: 00001010 10<<1: 00010100 ~(10<<1): 11101011 4: 00000100 &---------------------------------- 00000000 即0 4. 假设有定义:int x=10;则表达式0<=x<=9 的值为_____。 【解答】 0<=x<=9 → (0<=x)<=9 → (0<=10) <=9 → 1 <= 9 → 1 5. 下列for循环语句将输出: 0 1 2 0 1 2 0 1 2. for( i=1; i<=9; i++ ) printf("%2d", _______); 【解答】(i-1)%3 6. 对于定义: int m=5, y=2; 当计算表达式y+=y-=m*=y后,y的值为_____。 【解答】 y+=y-=m*=y ? y += (y -= (m *=y)) 先计算m*=y: 由于m=5, y=2, 所以:m=m*y=5*2→10 再计算y-=10: 由于y=2,所以:y = y-10=2-10→ -8 最后计算y += -8: 由于y=-8,所以:y = y+(-8)=(-8)+(-8)→-16 7. 对于char c; 若已知其值为小写字母, 则将其转换为相应大写字母的表达式为_____。 【解答】 c-…a?+?A? 8. 下列语句的输出结果为_____。 printf("%d#%x#", 027, 27); 【解答】 23#1b# 9. 已知字符?a?的ASCII码为97,则下列语句的输出结果为_____。 printf("%c#%d#",98,?c?); 《C程序设计基础及实验》期中考试试卷, 2012年11月23日 4 / 10 【解答】 b#99# 10. 下列程序段将输出_____。 unsigned char x=255,y=?\1?; switch(!!x) { case 0: printf("*0*#");break; case 1: switch(y) { case 0: printf("*1*#");break; case 1: printf("*2*#");break; } default: printf("*3*#"); } 【解答】 *2*#*3*# 试题三、程序阅读题(每小题6分,共30分) 1. 下列程序将输出_____。 #include void swap(int x, int y) { int t; t=x; x=y; y=t; return; } void main(void) { int a=3, b=2; swap(a, b); printf("%d#%d#", a, b); return; } 【解答】 3#2# 《C程序设计基础及实验》期中考试试卷, 2012年11月23日 5 / 10 注:尽管在函数swap()里,形参x和y的值发生了交换,但根据函数参数的传递原则——“实参向形参单向传值(即x向a赋值,y向b赋值),形参的改变不影响实参”,实参变量a和b的值未发生交换! 2. 下列程序将输出_____。 # include int s; int f(int m) { static int k=0; for(; k<=m; k++) s++; return s; } void main(void ) { int s=1; s=f(2)+f(2); printf("%d#%d#", s, f(20)); return; } 【解答】输出结果为:6#21# 注:(1)全局变量s的初始值为0; (2)在f函数中,s是全局变量有效,而在main函数中,s是局部变量有效; (3)在f函数中,k是静态变量,每次函数f调用结束后,其内存单元和值仍然保留。 3. 若输入:1273 <回车>,以下程序的输出结果是_______。 #include void main(void) { int n, m; scanf(“%d”, &n); m=0; while (n>0) { m=m*10+n%10; n/=10; } 《C程序设计基础及实验》期中考试试卷, 2012年11月23日 6 / 10 printf(“%d”, m); return; } 【解答】输出结果是:3721 4. 若输入-6+15*3/5=<回车> , 以下程序的输出结果是_______。 #include void main() { int m=0, sum=0; char c, oldc='+'; do { c=getchar(); if(c<='9'&&c>='0') m=10*m+c - '0'; else { if(oldc=='+') sum += m; else sum -= m; m=0; oldc=c; printf("%d#", sum); } } while(c!='='); return; } 【解答】0#-6#9#6#1# 程序的意思:对输入的字符串扫描,若碰到数字字符序列,求出相应的整数值m;若碰到其它字符——若字符是+号,则将m值加入到sum中去;若字符不是+号,则将从sum中减去m值。 5. 若输入:how are you? <回车>,以下程序的输出结果是_______。 #include void main(void ) { int word; char ch; 《C程序设计基础及实验》期中考试试卷, 2012年11月23日7 / 10 word=0; while((ch=getchar())!='?'){ if(ch==' ') word=0; else if(word==0){ word=1; if(ch<='z'&&ch>='a') ch=ch-'a'+'A'; } putchar(ch); } return; } 【解答】How Are You 该程序思路:碰到一个新单词,则将该单词首字母从小写改为大写,其它字符原样输出。 提示:可借鉴统计单词个数程序的算法。 试题四、程序填空题(每空2分,共30分) 1.输入正整数n,计算s = 1/1! + 1/2! + 1/3! + ……+ 1/n!的值。 #include void main( void) { int j, k, n; double f, s; scanf("%d", &n); (1); s=0.0 for (k=1 ; k<=n; k++){ (2); f=1.0 for(j=1; (3); j++) j<=k (4); f=f*j s=s+1.0/f; } printf("sum=%f\n", (5)); s return; } 2.输入一个整数,统计该数的位数。如:输入12534,输出5;输入-99,输出2;输入0,输出1。 #include void main(void) 《C程序设计基础及实验》期中考试试卷, 2012年11月23日8 / 10 { int count=0, number; scanf(“%d”, (6)); &number if (number < 0) number = (7); -number do { number = (8); number/10 count++; } while ( (9)); number!=0 printf(“%d\n”, count); return; } 3.下面程序验证“哥德巴赫猜想”:寻找3到1000间满足“偶数=素数1+素数2”(如10=3+7)的所有偶数。素数指只能被1和自身整除的正整数,如2,3,17等;1不是素数。 #include void main(void) { int i, j; (10); /*prime()函数声明*/ int prime(int n) for (i=3 ; i<=500; i++) for (j=2; ; j++) if ( (11)) { prime(j)==1 && prime(2*i-j)==1 printf(“%d = %d +%d\n”, 2*i, j, 2*i-j); /*若2*i为两个素数之和*/ break; } (12); return } int prime(int n) /* 判断n是否为素数:是返回1,不是返回0 */ { int i; if (n==1) return (13); 0 for (i=2; i<=n/2; i++) if ( (14)) n%i==0 return 0; return (15); 1 } 《C程序设计基础及实验》期中考试试卷, 2012年11月23日9 / 10 《C程序设计基础及实验》期中考试试卷, 2012年11月23日10 / 10 一、填空 1.C 语言源程序文件的后缀是.c 。 2.结构化程序由顺序结构、选择结构、循环结构三种基本结构组成。 3.在C 语言中,用关键字int 定义基本整型变量,一个基本整型变量系统分配2字节,用关键字 float 定义单精度实型变量,一个单精度实型变量系统分配4字节,用关键字 double 定义双精度实型变量,一个双精度实型变量系统分配8字节。 二、选择 1. 以下选项中正确的实型常量是( A ) A .12. B .-20 C . 1,000 D . 4 5 6 2.以下选项中不正确的实型常量是(无正确答案) A . 2.607E-1 B .0.8103e2 C . -77.77 D . 456e-2 3.以下选项中不合法的用户标示符是( C ) A. _123 B .A12_1 C .A $ D .Dim 4.C 语言中运算对象必须是整型的运算符是( A ) A .% B ./ C .! D .* 5. 若变量已正确定义并赋值,符合C 语言语法的表达式是( B ) A .a=a+7; B .a=7+b+c,a++ C .int(12.3%4) D .a=a+7=c+b 6.下面合法的赋值语句是( C ) A .a=b=58 B .k=int(a+b) C . a=58,b=58 D .--i 7.若变量已正确定义为int ,要给a,b,c 输入数据,正确的输入语句是( D ) A .read(a,b,c) B .scanf(“%d%d%d ”,a,b,c) C .scanf(“%D%D% D ”,&a,&b,&c) D .scanf(“%d%d%d ”,&a,&b,&c) 8.若变量a,b,t 已正确定义,要将a 和b 中的数进行交换,以下选项中不正确的语句组是( C ) A .a=a+b,b=a-b,a=a-b; B . t=a,a=b,b=t; C .a=t;t=b;b=a D .t=b;b=a;a=t; 9.若有正确定义语句: double x=5.16894; 语句printf(“%f\n ”,(int)(x*1000+0.5)/(double)1000);的输出结果是( D ) A .输出格式说明与输出项不匹配,输出无定值 B .5.170000 C .5.168000! D .5.169000 10.若有以下程序段: int a=0,b=0,c=0; c=(a-=a-5),(a=b,b+3); printf(“%d,%d,%d\\n ”,a,b,c); 执行后的输出结果是( B ) A .3,0,-10 B .0,0,5 C .-10,3,-10 D .3,0,3 11.下列运算符中优先级别最高的是( A ) A .! B .% C .-= D .&& 12.为表示关系:z y x ≥≥,应使用的C 语言表达式是(A ) A .(x>=y)&&(y>=z) B .(x>=y)AND(y>=x) C .(x>=y>=z) D .(x>=y)&(y>=z) 13.设a 、b 和c 都是int 型变量,且a=3,b=4,c=5,则以下的表达式中值为0的表达式是 C语言试题1 一填空题(15分) 1.设x的值为15,n的值为2,则表达式x%=(n+=3)运算后,x的值为()。 2.设int a=7,b=9,t;执行完表达式t=(a>b)?a:b后,t的值是()。 3.下面程序段的输出结果是()。 int a=1234; a=a&0377; printf(“%d %o\n”,a,a); 4.a数组定义如下,按照内存排列顺序,a数组中的所有元素是()。 char a[3]; 5.设有以下宏定义,则执行赋值语句a=PP*20;(a为int型变量)后,a的值是()。 #define PR 80 #define PP PR+403 6.在C程序中,可以通过三种运算方式为指针变量赋地址值,它们是:()、()和()。7.在C文件中,数据存在的两种代码形式是()和()。 8.C语言中调用()函数打开文件,调用()函数关闭文件,调用()函数可实现文件的随机读写。 9.若有int a[3]={10,12,30};则a+1是()的地址,*(a+2)=()。 二判断对错(5分,对的划“√”,错的划“×” 1.在Turbo C中,整型数据在内存中占2个字节。() 2.表达式1/4+2.75的值是3。() 3.结构体类型只有一种。() 4.函数若无返回值,则它一定无形参。() 5.C语言只能处理文本文件和二进制文件。() 三选择题(20分) 1.设int a=12; 表达式a+=a-=a*=a的值是()。 A 12 B 144 C 0 D 132 2.以下程序的输出结果是()。 main( ) { int a=011; printf(“%d\n”,++a); } A 12 B 11 C 10 D 9 3.以下程序的输出结果是()。 #define ADD(x) (x)+(x) main() { int a=4,b=6,c=7,d=ADD(a+b)*c; printf(“d=%d”,d); } A d=70 B d=140 C d=280 D d=80 4.下面的选项中正确的赋值语句是(char a[5],*p=a;)()。 A p=“abcd”; B a=“abcd”; C *p=“abcd”; D *a=“abcd”; 5.若k为整形,则while循环执行()次。 k=2; while(k==0) printf(“%d”,k); k--; printf(“\n”); A 10 B 9 C 0 D 1 练习题一Visual FoxPro 基础 、选择题 1. 关系数据库管理系统应能实现的专门关系运算包括___c __________ A 显示、打印、制表B关联、更新、排序 C 选择、投影、连接D排序、索引、统计 2. 关系是指__b__。 A 属性的集合B元组的集合 C 实例的集合 D 字段的集合 3. 如果把学生看成实体,某个学生的姓名叫“杨波”,则“杨波”应看成是___b ______ 。 A)属性型B )属性值C )记录型D )记录值 4. 关系数据库系统中所使用的数据结构是 _______ d ___ 。 A)图B )树C )表格D )二维表 5. 对表进行水平方向的分割用的运算是 _______ b ___ 。 A)交B )选择C )投影D )连接 6. 下列数据库技术的术语与关系模型的术语的对应关系中_______ d _____ 是正确的。 A)实例与关系 B )字段与元组C )记录与属性 D )记录类型与关系模式 7. 下列关于数据库系统的叙述中,正确的是 _____ c _____ 。 A)数据库系统中数据的一致性是指数据类型一致 B)数据库系统只是比文件系统管理的数据更多 C)数据库系统减少了数据冗余 D数据库系统避免了数据冗余 8. 关系数据模型 ______ d ___ 。 A)只能表示实体间的1:1联系 B)只能表示实体间的1:n C只能表示实体间的m:n D 可以表示实体间的上述三种联系 9. 在一个关系中如果有这样一个属性存在,它的值能惟一地标识关系中的每一个元组,称 这个属性为 _____ a____ 。 A)关键字B )主属性C )数据项D )主属性值 10. 关系数据库管理系统中的元组是______ b ____ 。 A)关系中的垂直方向的列 B )关系中的水平方向的行 C属性或属性的组合 D )以上的答案均不正确 11. 从数据库的整体结构看,数据库系统采用的数据模型有_________ a __ 。 A)层次模型、网状模型和关系模型 B)层次模型、网状模型和环状模型 C)网状模型、链状模型和层次模型 D链状模型、关系模型和层次模型 12. 设有属性A B、C D以下表示中不是关系的是___________ d__。 A)R( A) B )R( A, B)C )R (A, B, C, D) D )R (A X B X C X D) 13. 若实体间联系是M N的,则将联系类型_________ a___ 。 A)也转换为关系模型 B)属性加入任一个关系模式中 C)属性加入N端实体类型相应的关系模式中 D)属性加入M端实体类型相应的关系模式中 14. 数据库系统的构成为数据库、计算机硬件系统、用户和________ a ____ 。 A 数据库管理系统 B 操作系统 C 数据集合 D 文件系统 15. 层次型、网状型和关系型数据库划分原则是________ c ___ 。 A 文件大小 B 记录长度 C 数据之间的联系 D 联系的复杂程度 16. 在数据库设计中用关系模型来表示实体和实体之间的联系,关系模型的结构是 _____ d ___ 。 A 封装结构 B 层次结构 C 网状结构 D 二维表结构 17. 在关系模型中,实现“关系中不允许出现相同的元组”的约束是通过__a ________ 。 A 主键 B 超键 C 外键 D 候选键 18. 层次模型不能直接表示 ______ b __ 关系。 A 1:1 B m:n C 1:m D 1:1 和1:m 19. DBAS旨的是_____ d____ 。 黄淮学院计算机科学系2007-2008学年度第一学期 期末考试《程序设计基础》B 卷 注意事项:本试卷适用于计科系06级本科计算机科学与技术专业学生。 1.__ ____函数是程序启动时惟一的入口。 2.算法的复杂性包含两方面: 和 。 3.已知 char c= 'a' ; int x=2,k; 执行语句k=c&&x++ ; 则x 为 ,k 为 。 4.数值0x34对应的十进制为 。 5.已知int a ; 则表达式”(a=2*3 , 3*8), a*10”的结果为_ _ ____,变量a 的值为___ ___。 6.面向对象程序开发步骤为: 、 和面向对象实现。 1.下列程序设计语言中( )是面向对象语言。 A. FORTRAN B. C 语言 C. C++ D. 汇编语言 2.下列关于注释的说法哪个是错误的( )。 A. 注释不是程序中的可执行语句 B. 注释对于程序的执行有很重要的意义 C. 注释将在程序的编译阶段被编译器剔除 D. 编程时在程序中添加适当的注释是一个良好的编程风格 3.算法设计应该遵守( )的设计原则。 A. 自底向上,逐步求精 B. 自顶向下,逐步求精 C. 自底向上,同步扩展 D. 自顶向下,同步扩展 4.下列语句执行后a 的值为( )。 int a=4, &z=a, k=3; a=k; z+=2; k++; A. 0 B. 4 C. 1 D. 5 5.以下程序执行后,屏幕输出为( )。 #include “iostream.h ” void fun(int d) {d++;} void main() { int d=3; fun(d); d++; cout< 淮海工学院 10 – 11 学年第 2 学期 C语言程序设计期中考试试卷 单项选择题答题表 题答题表中) 1.以下叙述中正确的是()。 A) C 程序的基本组成单位是语句 B) C 程序中的每一行只能写一条语句 C)简单C 语句必须以分号结束 D) C 语句必须在一行内写完在 2.一个C程序是由____________。 A)一个主程序和若干个子程序构成 B)一个或多个函数构成 C)若干过程组成 D)若干子程序组成 3.以下选项中正确的定义语句是____________。 A)double a; b; B)double a=b=7; C)double a=7, b=7; D)double, a, b; 4.计算机能直接执行的程序是()。 A)C源程序 B)目标程序 C)汇编程序 D)可执行程序 5.下列符号可以作为变量名的是____________。 A)+a B)*p C)_DAY D)next day 6.设c是字符变量,则以下表达式正确的是____________。 A)c=666 B)c='c' C)c="c" D)c="abcd" 7.以下说法正确的是____________。 A)输入项可以为一个实型常量,如scanf("%f", B)只有格式控制没有输入项也能进行正确输入,如scanf("%d") C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如 scanf(%4.2f", &f) D)当输入数据时,必须指定变量的地址,如scanf("%f", &f) 8.若a, b, c均定义为整型,要给它们输入数据,正确的输入语句是____________。 A)read(a, b, c); B)scanf("%d%d%d", a, b, c); C)scanf("%D%D%D", a, b, c); D)scanf(%d%d%d", &a, &b, &c); 9.若有if (w) –x; else ++y; 则其中与w 等价的表达式是____________。 A)w == l B)w == 0 C)w != l D)w != 0 10.为了避免嵌套的if-else语句的二义性,C语言规定else总是与____________ 组成配对关系。 A)缩排位置相同的if B)在其之前未配对的if C)在其之前最近的未配对的if D)同一行上的if 《程序设计基础》考试试卷二 1.1966年,Bohra和Jacopini提出的三种基本程序设计结构是:________ A.if、while和for; B. switch、do-while和for; C.while、do-while和for; D.顺序结构、分支结构和循环结构。 2.算法的特征不包括:______。 A.有穷性 B.可行性 C.确定性 D.有1个或者多个输入。 3.C语言源程序的基本组成单位是______。 A.函数 B. 语句 C. 声明和语句 D. 文件 4.下列标识符中,只有______是合法的。 A.if B. 3ab C. Int D. A-4 5.下列常量中,只有______是合法的。 A.3e-0.3 B. ‘abc’ C. 02a1 D. ‘\377’ 6.下列说法中正确的是:______。 A.C语言中的for语句的三个表达式都可以省略,而且分号也可以省略。 B.宏替换比函数调用的执行速度慢。 C.实质上,C语言中的指针就是一个变量的地址。 D.C语言中的任何函数都可以由程序员命名。 7.C语言中,运算对象必须是整型的运算符是_______。 A./ B. % C. + D. - 8.以下叙述中错误的是_______。 A.C语句必须以分号结束 B.复合语句在语法上被看作一条语句 C.空语句出现在任何位置都不会影响程序运行 D.赋值表达式末尾加分号就构成赋值语句 9.以下叙述中正确的是_______。 A.调用printf函数时,必须要有输出项 B.使用putchar函数时,必须在之前包含头文件stdio.h C.在C语言中,整数可以以十二进制、八进制或十六进制的形式输出 D.调用getchar函数读入字符时,可以从键盘上输入字符所对应的ASCII码10.以下关于函数的叙述中正确的是_______。 A.每个函数都可以被其它函数调用(包括main函数) B.每个函数都可以被单独编译 C.每个函数都可以单独运行 D.在一个函数内部可以定义另一个函数 11.有以下程序段typedef struct NODE{ int num; struct NODE *next; 《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) for 5、下列四个叙述中,正确的是(【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) 与机器字长有关 高级语言程序设计试题 答案在最后 一、单项选择题(本大题共20小题,每小题2分,共20分)在每小题列出得四个选项中只有一个 选项就是符合题目要求得,请将正确选项前得字母填在题后得括号内。 1、C语言程序编译时,程序中得注释部分就是( ) A、参加编译,并会出现在目标程序中 B、参加编译,但不会出现在目标程序中 C、不参加编译,但会出现在目标程序中 D、不参加编译,也不会出现在目标程序中 2、设int a=3;则表达式a<1&&--a>1得运算结果与a得值分别就是( ) A、0与2 B、0与3 C、1与2 D、1与3 3、与语句if(a>b)if(c>d)x=1;else x=2;等价得就是( ) A、if(a>b){if(c>d)x=1;else x=2;} B、if(a>b){if(c>d)x=1;}else x=2; C、if((a>b)&&(c>d))x=1;else x=2; D、if(a<=b)x=2;else if(c>d) x=1; 4、设char x='a';则printf("x=%c,y=%c\n",x,97);得输出就是( ) A、x=a,y=97 B、x=97,y=a C、x=97,y=97 D、x=a,y=a 5、执行下列程序 int a[3][3]={{1},{2},{3}}; int b[3][3]={1,2,3}; main() {printf("%d\n”,a[1][0]+b[0][0]);} 后输出得结果就是( ) A、0 B、1 C、2 D、3 6、结构化程序设计所规定得三种基本控制结构就是( ) A) 输入、处理、输出B) 树形、网形、环形 C) 顺序、选择、循环D) 主程序、子程序、函数 7、完成C源文件编辑后、到生成执行文件,C语言处理系统必须执行得步骤依次为( ) A、连接、编译 B、编译、连接 C、连接、运行 D、运行 8、下列各语句中,能够且仅输出整型变量a、b中最大值得就是( ) A、if(a>b) printf(″%d\n″,a);printf(″%d\n″,b); B、printf(″%d\n″,b);if(a>b) printf(″%d\n″,a); C、if(a>b) printf(″%d\n″,a);else printf(″%d\n″,b); D、if(a 《计算机程序设计基础》 习 题 册 班级学号姓名成绩一、单选题 1.C++源程序文件的默认扩展名为A。 A) cpp B) exe C) obj D) lik 2.由C++源程序文件编译而成的目标文件的默认扩展名为C。 A) cpp B) exe C) obj D) lik 3.由C++目标文件连接而成的可执行文件的默认扩展名为B。 A) cpp B) exe C) obj D) lik 4.编写C++程序一般需经过的几个步骤依次是B。 A)编译、编辑、连接、调试 B)编辑、编译、连接、调试 C)编译、调试、编辑、连接 D)编辑、调试、编辑、连接 5.程序中主函数的名字为 A 。 A) main B) MAIN C) Main D) 任意标识符 6.下面四个选项中,均是不合法的用户标识符的选项的是C。 A) A p_o do B)float lao _A C)b-a goto int D)_123 temp INT 7.下列变量名中合法的是C。 A) B)C)Tom B) 3a66 C) _6a7b D) $ABC 8.存储以下数据,占用存储字节最多的是 D 。 A) 0 B) ‘0’ C) “0” D) 0.0 9.在C++语言中,字符型数据在内存中的存储形式是D。 A) 补码 B) 反码 C) 原码 D) ASCII码 10.若有说明语句:char c =’\072’;则变量c A。 A) 包含1个字符 B) 包含2个字符 C) 包含3个字符 D) 说明不合法,变量的值不确定 二、填空题 1.C++头文件和源程序文件的扩展名分别为.h和.cpp 。 2.C++语言规定,标识符只能由字母、数字、下划线三种字符组成,而且第一个字符必须是字母或下划线。 3.一条表达式语句必须以__分号_;___作为结束符。 4.用于从键盘上为变量输入值的标准输入流对象是___cin____;用于输出表达式值的标准输出流对象是__cout____。 5.在一个C++程序文件中,若要包含另外一个头文件或程序文件,则应使用以_#include___标识符开始的预处理命令 《程序设计基础》试卷(A 卷) 注意:1、考试时间: 90 分钟; 2、班级、姓名、学号必须写在指定地方; 3、适用班级: 4、考试方式: 一、填空题 (每空 2 分,共 20 分) 1、C 程序是由函数构成的,其中有且只能有 1 个主函数,每个C 程序总是从它开始执行,并且以 ; 作为结束符。 2、C 语言中三大基本结构有:顺序结构、 选择结构 、 循环结构 。 3、‘A ’+3的结果是 68 。 4、若已定义x 和y 为double 类型,则表达式x=1,y=x+3/2 的值是 2.5 。 5、C 语言中逻辑运算符 ! 的优先级高于算术运算符。 6、符号“a”和‘a’的区别是 “a ”2字节 ‘a ’1字节 。 7、C 语言的预处理语句以____#_____开头。 8、有如下输入语句:scanf(“a=%d,b=%d ,c=%d”,&a ,&b ,&c );为使变量a 的值为1,b 的值为3,c 的值为2,从键盘输入数据的正确形式应是 a=1,b=3,c=2 。 二、选择题 (每小题 3 分,共 30 分) 1、下列叙述中错误的是( D )。 A 、 if 语句允许用户选择是否执行某个操作。 B 、 if else 语句允许用户选择执行两个操作中的某个操作。 C 、 switch 语句允许用户选择执行多个操作中的某个操作 D 、 多分支选择结构只能使用switch 语句实现 2、以下不正确的C 语言标识符是( D ) A 、ABC B 、abc C 、a_bc D 、ab.c 3、按照C 语言规定的用户标识符命名规则,不能出现在标识符中的是( B )。 A 、大写字母 B 、连接符 C 、数字字符 D 、下划线 4、将int 型变量n 转换成float 型变量的方法是( B )。 A 、float n B 、(float)n C 、float(n) D 、(int )n 5、( A )是构成C 语言的基本单位。 A 、函数 B 、子函数 C 、过程 D 、子过程 6、下面关于运算符优先顺序的描述中正确的是( B )。 A 、关系运算符< 算术运算符< 赋值运算符< 逻辑与运算符 B 、逻辑运算符< 关系运算符< 算术运算符< 赋值运算符 C 、赋值运算符< 逻辑与运算符< 关系运算符< 算术运算符 D 、算术运算符< 关系运算符< 赋值运算符< 逻辑与运算符 7、在C 语言中,要求参加运算的数必须是整数的运算符是( C )。 A 、/ B 、! C 、% D 、= = 8、char 型常量在内存中存放的是( B )。 A 、ASCII 代码值 B 、BCD 代码值 C 、内码值 D 、十进制代码值 9、以下程序的输出结果是( B ) Main() { Int x=10,y=4; Printf(“%d\n ”,x/y); 《C语言程序设计》期中考试试卷 淮海工学院 10 – 11 学年第 2 学期 C语言程序设计期中考试试卷 题号一二三四五总分 得分 单项选择题答题表 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 题答题表中) 1.以下叙述中正确的是()。 A)C程序的基本组成单位是语句 B)C程序中的每一行只能写一条语句 C)简单C 语句必须以分号结束 D)C语句必须在一行内写完在 2.一个C程序是由____________。 A)一个主程序和若干个子程序构成 B)一个或多个函数构成 C)若干过程组成 D)若干子程序组成 3.以下选项中正确的定义语句是 ____________。 A)d ouble a; b; B)d ouble a=b=7; C)d ouble a=7, b=7; D)d ouble, a, b; 4.计算机能直接执行的程序是()。 A)C源程序 B)目标程序 C)汇编程序 D)可执行程序 5.下列符号可以作为变量名的是 ____________。 A)+a B)*p C)_DAY 1 D)n ext day 6.设c是字符变量,则以下表达式正确的是____________。 A)c=666 B)c='c' C)c="c" D)c="abcd" 7.以下说法正确的是____________。 A)输入项可以为一个实型常量,如scanf("%f", 3.5) B)只有格式控制没有输入项也能进行正 确输入,如scanf("%d") C)当输入一个实型数据时,格式控制部分 应规定小数点后的位数,如scanf(%4.2f", &f) D)当输入数据时,必须指定变量的地址, 如scanf("%f", &f) 8.若a, b, c均定义为整型,要给它们输入数 据,正确的输入语句是____________。 A)r ead(a, b, c); B)s canf("%d%d%d", a, b, c); C)s canf("%D%D%D", a, b, c); D)s canf(%d%d%d", &a, &b, &c); 9.若有if (w) –x; else ++y; 则其中与w 等 价的表达式是____________。 A)w == l B)w == 0 C)w != l D)w != 0 10.为了避免嵌套的if-else语句的二义性, C语言规定else总是与____________组成 配对关系。 A)缩排位置相同的if B)在其之前未配对的if 2 一、选择题: 【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的值为。A)1 B)2 C)3 D)4 答案:B 分析:对于&&运算,只要第一个操作数为假,就不判定第二个操作数。对于||运算,只要第 大一C语言期末考试题 悬赏分:40 |解决时间:2010-6-29 14:28 |提问者:345387547 1. 数组int a[3][5]; 共定义了______15__个元素。 2. 有float f= 3.1415927; 则printf(“%5.4f”, f );输出的结果是___3.1416__。 3. 下面程序的功能是:输出100以内(不包含100)能被3整除且个位数为6的所有整数,请填空。 main( ) { int i; for(i=1; __i<100 ___; i++) if (_(i%3==0)&&(i%10==6)_) printf("%d", i); } 4. 设有“int x=2, y”说明,则逗号表达式“y=x+5,x+y”的值是____7____ 5. 以下是使用指针,进行字符串复制的程序,请填空。 main() { char a[]= “Tsinghua University”, b[30], *p1,*p2; p1=a; p2=b; for(; *p1!= __'\0'____; p1++, p2++) *p2 _=_*p1; *p2= ___'\0'______; printf(“string a is:%s\n”,a); printf(“string b is:%s\n”,b); } 6. 下面程序用冒泡法对数组a进行降序排序,请填空。 main() { int a[5]={4,7,2,5,1}; int i,j,m; for(i=0;i<4;i++) for(j=0;j<____4____;j++) if( a[j] 《程序设计基础——C#.NET》练习 参考答案: 一、选择题 https://www.doczj.com/doc/cc3134269.html,的目的就是将____A____作为新一代操作系统的基础,对互联网的设计思想进行扩展。A.互联网 B. Windows C. C# D. 网络操作系统 2.假设变量x的值为10,要输出x值,下列正确的语句是__C__。 A.System.Console.writeline(“x”) B. System.Cosole.WriteLine(“x”) C. System.Console.WriteLine(“x={0}”,x) D. System.Console.WriteLine(“x={x}”) 3.要退出应用程序的执行,应执行下列的_A___语句。 A. Application.Exit(); B. Application.Exit; C. Application.Close(); D. Application.Close; 4.关于C#程序的书写,下列不正确的说法是__D________。 A.区分大小写 B.一行可以写多条语句 C.一条语句可以写成多行 D.一个类中只能有一个Main()方法,因此多个类中可以有多个Main()方法 5. 在C#语言中,下列能够作为变量名的是__C__。 A.if B. 3ab C. b_3a D. a-bc 7. 能正确表示逻辑关系“a≥5或a≤0”的C#语言表达方式是__D__。 A.a>=5 or a<=0 B. a>=5|a<=0 C. a>=5&&a<=0 D. a>=5||a<=0 8. 以下程序的输出结果是___C_____。 A. 5 B. 4 C. 6 D. 不确定 9. If语句后面的表达式应该是__A___。 A.逻辑表达式 B. 条件表达式 C. 算术表达式 D. 任意表达式10.有如下程序: 《程序设计基础》试题 程序设计基础期末考试题A 卷 一、 选择题(1*20=20分) 题号 1 2 3 4 5 6 7 8 9 10 总分 答案 题号 11 12 13 14 15 16 17 18 19 20 答案 1、一个完整的计算机系统应该包括( ) A 、系统软件和应用软件 B 、计算机及其外部设备 C 、硬件系统和软件系统 D 、系统硬件和系统软件 2、“裸机”的概念是指( ) A 、正在进行设计还没有组装好的计算机 B 、已经组装好但还没有安装任何软件的计算机 C 、仅安装了操作系统的计算机系统 D 、安装了文字处理软件但没有安装专用数据处理系统的计算机 3、世界上第一台电子数字计算机研制成功的时间是( ) A 、1936年 B 、1946年 C 、1956年 D 、1970年 4、CASE 的含义是( ) A 、计算机辅助设计 B 、计算机辅助制造 C 、计算机辅助教学 D 、计算机辅助软件工程 5、当前广泛使用的微型计算机是( ) A 、第一代 B 、第二代 C 、第三代 D 、第四代 6、当代计算机的体系结构称为是( ) A 、冯·诺依曼机 B 、非冯·诺依曼机 C 、图灵机 D 、比尔盖茨机 7、硬盘是( ) A 、输入设备 B 、输出设备 C 、存储设备 D 、计算设备 8、下面4句话中,最准确的表述是( ) A 、程序=算法+数据结构 B 、程序是使用编程语言实现算法 C 、程序的开发方法决定算法设计 D 、算法是程序设计中最关键的因素 9、计算机能直接执行的语言是( ) A 、机器语言 B 、汇编语言 C 、高级语言 D 、目标语言 10、解释程序的功能是( ) A 、将高级语言程序转换为目标程序 B 、将汇编语言程序转换为目标程序 C 、解释执行高级语言程序 D 、解释执行汇编语言程序 11、下面4种程序设计语言中,不是面向对象式语言的是( ) A 、JAVA B 、Object Pascal C 、Delphi D 、C 12、不是C 语言的基本数据类型是( ) A 、int B 、double C 、char D 、bool 13、在C 语言中,为了求两个整数相除之后得到的余数,可以使用运算符( ) A 、/ B 、% C 、* D 、++ 14、数据的逻辑结构分为( ) A 、纯属结构和非线性结构 B 、顺序结构和非顺序结构 C 、树型结构和图型结构 D 、链式结构和顺序结构 班级 姓名 1.下列标识符中,非法的C 语言标识符是( B )。 A )sum B )5AB C )temp_3 D )_123 2.已知大写字母A 的ASCII 码是65,小写字母a 的ASCII 码是97,则用八进制表示的字符常量'\101'是( A )。 A) 字符A B) 字符a C) 字符e D) 非法的常量 3.在C 语言中,以下对一维整形数组a 的正确说明是( D ) A) int a(10) B) int n=10,a[n]; D) #define SIZE 10 int a[SIZE]; 4. 以下循环语句哪一个不是死循环: ( B ) A).while ( i=10) printf(“OK.”); B).loop: if ((c=getchar())!=’\n’) goto loop; C).do {printf(“Hello.”)} while( -10 ); D).for( ; ; ); 5. 选出如下对字符数组初始化不正确的选项是 ( B ) A).char a[]=”this is a book”; B).char a[]={‘this is a book’} ; C).char a[4]={‘t’,’h’,’e’}; D).char a[]={“this is a book”}; 6.下列数据中,非法的C 语言实型常量是( D )。 A )123.0 B )123.567e5 C ).1234 D )e3 7.以下定义语句中错误的是( B )。 A )int a=3,b=5; B )float x1; x2; C )char c1,c2,c3; D )double y3, y4; 8.若将整数4和5赋给整型变量a 和b ,对于语句 scanf("%d%d" , &a,&b); 在从键盘输入数据时,正确的数据输入格式为( B )。 A )4,5 B )4 5 C )4:5 D )4#5 9.若整型变量a 和b 的值分别为6和8,则下列语句 printf("a=%d,b=%d",a,b); 的输出结果为( D )。 A )6, 8 B )6 8 C )a=6 b=8 D )a=6, b=8 10.C 语言中的转义字符\t 的作用是( B )。 A )回车换行 B )横向跳格 C) int n; scanf (“%d”,&n); int a[n]; 《计算机程序设计基础》 计算机程序设 计基础_基础知识(一) 班级 学号 姓名 成 绩 一、 单选题 习题册 1.C++源程序文件的默认扩展名为A。 2.A) cpp B) exe C) obj D) lik 3.由C++源程序文件编译而成的目标文件的默认扩展名为C。 4.A) cpp B) exe C) obj D) lik 5.由C++目标文件连接而成的可执行文件的默认扩展名为B。 6.A) cpp B) exe C) obj D) lik 7.编写C++程序一般需经过的几个步骤依次是B。 8.A)编译、编辑、连接、调试 B)编辑、编译、连接、调试 C)编译、调试、编辑、连接 D)编辑、调试、编辑、连接9.程序中主函数的名字为 A 。 10.A) main B) MAIN C) Main D) 任意标识 符 11.下面四个选项中,均是不合法的 用户标识符的选项的是 C。 12.A) A p_o do B)float lao _A C)b-a goto int D)_123 temp INT 13.下列变量名中合法的是 C。 14.A) B)C)Tom B) 3a66 C) _6a7b D) $ABC 15.存储以下数据,占用存储字节最 多的是 D 。 16.A) 0 B) ‘0’ C) “0” D) 17.在C++语言中,字符型数据在内存中的存储形式是D。 18.A) 补码 B) 反码 C) 原码 D) ASCII码 19.若有说明语句:char c =’\072’;则变量c A。 20.A) 包含1个字符 B) 包含2个字符 C) 包含3个字符 D) 说明不合法,变量的值不确定 二、填空题 1.C++头文件和源程序文件的扩展名分别为.h和.cpp 。 2.C++语言规定,标识符只能由字母、数字、下划线三种字符组成,而且第一个字符必须是字母或下划线。 3.一条表达式语句必须以__分号_;___作为结束符。 4.用于从键盘上为变量输入值的标准输入流对象是___cin____;用于输出表达式值的标准输出流对象是__cout____。 5.在一个C++程序文件中,若要包含另外一个头文件或程序文件,则应使用以_#include___标识符开始的预处理命令 计算机程序设计基础_基础知识(二) 班级学号姓名成绩 一、单选题 1.下列哪一个是C++语言中合法的变量 C A) 8ZSe B) ±A0 C) X0_2 D) ’x0’2.已知ch是字符型变量,下面不正确的赋值语句是A 3.A) ch='a+b' B) ch='\0'C语言期中测试题(含答案)
C语言期末考试试题
程序设计基础试题库
《程序设计基础》试卷B及答案
《C语言程序设计》期中考试试卷
程序设计基础试题和答案解析二
c语言期中考试试题及答案
C语言期中考试试题及答案-1
计算机程序设计基础习题册(含答案)
《程序设计基础》试卷(A卷)
《C语言程序设计》期中考试试卷
C语言期中考试题目及答案
大一C语言期末考试题
程序设计基础练习题(全答案版)
程序设计基础期末考试题A卷
C语言期中考试
计算机程序设计基础习题册含答案