《C语言程序设计》(3学分)试卷A
C语言程序设计考试试卷(附答案)
C语言程序设计考试试卷计算机程序设计课程56 学时 3.5 学分考试形式:闭卷一、选择题(15小题,每小题2分,共计30分)1.下面不正确的字符串常量是 A 。
A)'abc' B)"12'12" C)"0" D)" "2.以下正确的叙述是 DA)在C程序中,每行中只能写一条语句B)若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数C)在C程序中,无论是整数还是实数,都能被准确无误(精确)地表示D)在C程序中,%是只能用于整数运算的运算符3.已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'十'6'一'3';后,c2中的值为 AA)D B)68 C)不确定的值 D)C4.sizeof(float)是 B :A)一个双精度型表达式 B)一个整型表达式C)一种函数调用 D)一个不合法的表达式5.以下说法正确的是 D :A)输入项可以为一实型常量,如scanf("%f",3.5);B)只有格式控制,没有输入项,也能进行正确输入,如scanf("a=%d,b=%d");C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf("%4.2f",&f);D)当输入数据时,必须指明变量的地址,如scanf("%f",&f);6.已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A,B,当从第一列开始输入数据时,正确的数据输入方式是 D (注:<CR>表示回车)。
int a1,a2; char c1,c2;scanf("%d%d",&a1,&a2); scanf("%c%c",&c1,&c2);A) 1020AB<CR> B)10 20<CR>AB<CR>C)10 20 AB<CR> D)10 20AB<CR>7.请阅读以下程序:void main(){int a=5,b=0,c=0;if(a=b+c) printf("***\n");e1se printf("$$$\n");以上程序 D :A)有语法错不能通过编译 B)可以通过编译但不能通过连接C)输出*** D)输出$$$8.下面程序段的运行结果是 C 。
C程序设计期末考试A卷期末试卷(附答案)
x=x+1;
printf("f2:%d\n",x);
}
int main()
{
x=2;
printf("main:%d\n",x);
f1();
f2();
{
int x=10;
f1();
f2();
}
}
五、程序设计题(本题共20分)
(1)编写程序,输入一个学生成绩,根据成绩输出学生的等级。(8分)
分数段
对应的等级
[A] i=*p +*q;[B] a=i;
[C] *p = *(a+i);[D] i = *p**(q+2);
(13)
以下有关宏定义的叙述,正确的是________。
[A]宏名不具有类型[B]带参数的宏就是一个函数
[C]宏名必须用大写字母表示[D]宏定义和其它C语句,其末尾要加分号
(14)
若用数组名作为函数调用时的参数,则实际上传递给形参的是________。
(17)
以下有关switch语句的正确说法是________。
[A]break语句是语句中必须的一部分
[B]在switch语句中的每一个case都要用break语句
[C]break语句在switch语句中不可以使用
[D]在switch语句中可以根据需要使用或不使用break语句
(18)
以下正确的函数说明是________。
[C]n/=16[D]n%=16
(30)
[A]number[i]!=0[B]number[i]<10
[C]number[i]>0[D]number[i]>=10
(31)
《C语言程序设计》(3学分)试卷A
说明:请考生将答案写在“武汉大学答题纸”上并标明题号,否则不得分。
试卷中C语言程序的开发环境是VC6。
一、选择题(共20小题,每小题2分,共40分)1.以下正确的C语言自定义标识符是______。
A)_1aB)2a_C)doD)a.122.温度华氏和摄氏的关系是:C= 达式是____。
59(F-32)。
已知:floatC,F;由华氏求摄氏的正确计算的表A)C=5/9(F-32)B)C=5*(F-32)/9C)C=5/9*(F-32)D)三个表达式都正确3.设floatx,由键盘输入:12.45,能正确读入数据的输入语句是_________。
A)scanf("%5.2f",&x)B)scanf("%d",&x);C)scanf("%f",&x);D)scanf("%f",x);4.一个C程序的执行是从()A)main()函数开始,直到main()函数结束B)第一个函数开始,直到最后一个函数结束C)第一个语句开始,直到最后一个语句结束D)main()函数开始,直到最后一个函数结束5.判断char型变量c1是否为数字的正确表达式为________。
A)0<=c1<=9B)c1>=0&&c1<=9C),0?<=c1<=?9?D)c1>='0'&&c1<='9'6.switch(表达式)语句中的“表达式”,允许的类型是_________。
A)float,intB)float,int,charC)int,charD)char,double7.设inti,j,x=0;for(i=5;i;i--)for(j=0;j<4;j++)x++;则循环体结束后,x的值为________。
A)5B)20C)25D)死循环8.设x和y均为int型变量,则执行下面的循环后,y值为_________。
C语言程序设计试卷(含答案)
.2015年春季学期《C 语言程序设计》试卷A一.选择(每道小题2分,合计30分)1、以下选项中合法的标识符是( )。
A)1_1B)1-1C)_11D)1_ _2、若函数中有定义语句:int k;,则( )。
A)系统将自动给k 赋初值0 B)这时k 中的值无定义 C)系统将自动给k 赋初值-1D)这时k 中无任何值3、以下选项中,能用作数据常量的是( ) 。
A)o115B)0118C)1.5e1.5D)115L4、设有定义:int x=2;,以下表达式中,值不为6的是( )。
A)x*=x+1 B)X++,2*x C)x*=(1+x)D)2*x,x+=25、程序段:int x=12; double y=3.141593;printf("%d%8.6f",x,y);的输出结果是( )。
A)123.141593 B)12 3.141593C)12,3.141593D)123.14159306、把2进制数10000111101转化为十进制数为( )。
A)1083B)1084 C)1085D)10867、以下是if 语句的基本形式: if(表达式) 语句 其中"表达式"( )。
A)必须是逻辑表达式B)必须是关系表达式 C)必须是逻辑表达式或关系表达式D)可以是任意合法的表达式8、有以下程序#include <stdio.h> main(){ int x; scanf("%d",&x);if(x<=3); elseif(x!=10) printf("%d\n",x);}程序运行时,输入的值在哪个范围才会有输出结果( )。
A)不等于10的整数 B)大于3且不等于10的整数 C)大于3或等于10的整数D)小于3的整数9、有以下程序#include <stdio.h> main(){ int a=1,b=2,c=3,d=0; if (a==1 && b++==2)if (b!=2||c--!=3) printf("%d,%d,%d\n",a,b,c);else printf("%d,%d,%d\n",a,b,c); else printf("%d,%d,%d\n",a,b,c);} 程序运行后输出结果是( )。
一学期《C程序设计》试卷A(级)含答案
16.阅读以下程序
#include <stdio.h>
voidmain()
{intcase。float printF。
printf(“请输入2个数:”)。
scanf(“%d%f”, &case, &printF)。
printf(“%d %f”, case, printF)。
C) struct student{ char name[20]。char sex。int age。} s1。
D) struct { char name[20]。char sex。int age。} s1。
15.设有定义:char *p。以下选项中能够使字符型指针p正确指向一个字符串的是:【 】
A) char str[]=”China”。p=str[0]。B) scanf(“%s”, p)。
19.以下数组定义中错误的是【 】
A)int x[][3]={0};
B)int x[2][3]={{l,2},{3,4},{5,6}};
C)int x[][3]={{l,2,3},{4,5,6}};
D)int x[2][3]={l,2,3,4,5,6};
20.定义数组int a[10],若整型类型变量长度是2个字节,数组a的首地址是0,则&a[5]的值是:【 】
C)break语句只能用在循环体内和switch语句体内
D)在循环体内使用break语句和continue语句的作用相同
12.在C语言中,函数返回值的类型最终取决于【 】
A)函数定义时在函数首部所说明的函数类型
B)return语句中表达式值的类型
C)调用函数时主函数所传递的实参类型
长江大学07-08 第1学期 C语言试卷A
长江大学试卷 院(系、部) 专业 班级 姓名 学号 …………….…………………………….密………………………………………封………………..…………………..线…………………………………….. 2007 ─2008 学年 第 1 学期 《 C 语言程序设计 》课程试卷(A 卷) 专业: 年级: 考试方式:闭卷 学分:3.5 考试时间:120 分钟 一、选择题(每小题2分,共26分) 1. 可用作C 语言用户标识的一组标识符( )。
A viod B a3_b3 C For D 2a define _123 -abc DO WORD IF Case sizeof 2. 若变量a,i 已定义,且i 已正确赋值,以下选项中合法的赋值语句是( )。
A a==1 B ++i C a=a++=5 D a=i ÷3 3. 假定w,x,y,z,m 均为int 型变量,则下列程序段运行后,m 的值是( )。
w=1;x=2;y=3;z=4; m=(w>x)?w:x; m=(m>y)?m:y; m=(m>z)?m:z; A 1 B 2 C 3 D 4 4. 若有定义:float w;int a,b;则合法的switch 语句是( )。
A switch(w) B switch(a); { case 1.0: printf(“*\n ”); { case 1 printf(“*\n ”); case 2.0: printf(“*\n ”);} case 2 printf(“*\n ”);} C switch(b) D switch(a+b); case 1 : printf(“*\n ”); { case 1 : printf(“*\n ”); default : printf(“*\n ”); case 2 : printf(“*\n ”); case 1+2 : printf(“*\n ”);} default : printf(“*\n ”);} 5. 以下叙述正确的是( )。
2008-2009第二学期《C程序设计》试卷A(08级09.4,含答案)
一、选择题(每题1分,共20分)1.设 int b=2;表达式b/(b*2)的值是()。
A. 0B. 0.5C. 0.500000D. 0.000002.下列标识符中不合法的标识符的是()。
A. hot_doB. cat1C. _priD. 2ab3.以下程序的输出结果是()。
void main(){int k=17;printf("%d,%o,%x \n",k,k,k);}A. 17,021,0x11B. 17,17,17C. 17,0x11,021D. 17,21,114.设x、y、z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为()。
A.4 B.16 C.32 D.525.下述程序段中,while循环执行次数是( )。
int k=0;while(k=1) k++;A. 无限次B. 有语法错误,不能执行C. 一次也不执行D. 执行一次6. 若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为()。
A. a < > 0B. !aC. a=0D. a!=07.执行下述语句后,*(p+1)的值是( )。
char s[]= “ab”,*p;p=s;A.‘b’B. OC. 不定值D. 非法引用128.有以下语句:int b;char c[10];,则正确的输入语句是( )。
A. scanf("%d%s",&b,&c);B. scanf("%d%s",&b,c);C. scanf("%d%s",b,c);D. scanf("%d%s",b,&c);9.能正确表示a 和b 同时为正或同时为负的逻辑表达式是( )。
A. (a>=0‖b>=0)&&(a<0‖b<0)B. (a>=0&&b>=0)&&(a<0&&b<0)C. (a+b>0)&&(a+b<=0)D. a*b>010.C 语言中的逻辑运算结果,用( )表示逻辑“真”值。
C语言程序设计试题及答案完整版
C语言复习资料5元必须清楚的:1)程序结构是三种: 顺序结构, 循环结构(三个循环结构), 选择结构(if 和switch)2)读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择)。
3)计算机的数据在电脑中保存是以二进制的形式. 数据存放的位置就是他的地址.4)bit是位是指为0 或者1。
byte 是指字节, 一个字节= 八个位.5)一定要记住二进制如何划成十进制。
概念常考到的:1、编译预处理不是C语言的一部分,不再运行时间。
C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。
2、每个C语言程序中main函数是有且只有一个。
3、在函数中不可以再定义函数。
4、算法的是一定要有输出的,他可以没有输入。
5、break可用于循环结构和switch语句。
6、逗号运算符的级别最低。
第一章1)合法的用户标识符考查:合法的要求是由字母,数字,下划线组成。
有其它元素就错了。
并且第一个必须为字母或则是下划线。
第一个为数字就错了。
关键字不可以作为用户标识符号。
main define scanf printf 都不是关键字。
迷惑你的地方If是可以做为用户标识符。
因为If中的第一个字母大写了,所以不是关键字。
2)实型数据的合法形式:2.333e-1 就是合法的,且数据是2.333×10-1。
考试口诀:e前e后必有数,e后必为整数。
.3)字符数据的合法形式::'1' 是字符占一个字节,"1"是字符串占两个字节(含有一个结束符号)。
'0' 的ASCII数值表示为48,'a' 的ASCII数值是97,'A'的ASCII数值是65。
4)整型一般是两个字节, 字符型是一个字节,双精度一般是4个字节:考试时候一般会说,在16位编译系统,或者是32位系统。
碰到这种情况,不要去管,一样做题。
掌握整型一般是两个字节, 字符型是一个字节,双精度一般是4个字节就可以了。
3套 《C语言程序设计》试卷+参考答案
一、选择填空:(每题1.5分,共15分)1.以下可以正确表示字符型常数的是。
(A) “a”(B)‘297’ (C)‘\t’ (D) “\n”ﻫ2. typedef struct{ char name[10];ﻩﻩint age;ﻩchar interests[20];} student;以上语句中 student是:ﻩﻩ(A)结构体变量,有存储空间 (B)结构体数据类型,无存储空间(C)结构体变量,无存储空间 (D)结构体数据类型,有存储空间3.函数:voidf(void){int i = 12, j;ﻩfor(j=0;j<20;j++)ﻩi++;}当f执行完退出后,i的值为__________(A) 12(B) 32(C) 29 (D) 无定义ﻩﻩ4.若有以下说明:ﻫint a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;ﻫ则数值为6的表达式是ﻩﻩ(A)*p+6 (B)*(p+6) (C)*p+=5 (D)p+55.以下代码执行后,result的值为:#define FIVE 2+3result= FIVE * FIVE(A) 11(B) 13 (C) 25 (D)106.已知函数定义的形式如下:ﻩstruct data *f(void)ﻩ{……}ﻩ则函数f:(A)没有参数,返回值是一个结构体(B)有一个参数void,返回值是一个结构体(C)没有参数,返回值是一个结构体指针(D)有一个参数void, 返回值是一个结构体指针7.ﻩ下列说法中,不正确的是_ ____(A)函数中可以没有return语句。
(B)所有的函数都不能嵌套定义,但可以相互调用。
(C)函数的实参应与其对应的形式参数类型一致。
(D)函数可以不加函数返回值类型标识符。
8.ﻩ一个C程序的执行是。
(A)从本程序的main函数开始,到main函数结束(B)从本程序文件的第一个函数开始,到本程序文件最后一个函数结束(C)从本程序的main函数开始,到本程序文件的最后一个函数结束(D)从本程序文件的第一个函数开始,到本程序的main函数结束9.ﻩ在C语言的算术运算符中只能用于整型数的运算符是(A)* ﻩ(B)/ﻩﻩ(C)++ (D)%10 在下列选项中,没有构成死循环的程序段是(A)int i=100;while (1) {i=i%100+1;if(i>=100) break;}(B)for(;;);(C)int k=1000;do{++k;} while(k>=1000);(D)int s=36while(s); --s;二、写出下列程序的运行结果:(共35分)1.ﻩ(8分)int funa(int*a){ a[0] ++; }int funb(int b[]) { b[1] += 5; }main(){ﻩint a[5]= {2,3,4,5,6};int b[5] = {2,3,4,5,6};int *p, i;ﻩﻩ p= &a[0];(*p)++;ﻩ funb(p);ﻩfor(i =0; i <5;i++)printf("%d,",a[i]);p= &b[1];funa(p);funb(p);for(i = 0;i<5;i++)ﻩprintf("%d,",b[i]);}运行结果:ﻩ2、(6分)ﻫmain(){char a[]="programming", b[]="language";ﻩchar *p1,*p2;int i;p1=a; p2=b;ﻩfor(i=0; *(p1+i)!=’\0’&&*(p2+i)!=’\0’;i++)if(*(p1+i)==*(p2+i)) printf("%c",*(p1+i)); }ﻫ运行结果是:ﻩ3、 (8分)intf(int n){if(n==1)ﻩﻩ{ﻩﻩreturn 1;}ﻩelse{ﻩreturn 2 * f(n/2);}}运行结果: f(20) 的值是多少?4、(6分)void change (int*a,int*b){intx=* a;*a= *b; *b = x;printf(“%d%d “, *a, *b)';}void main(){int x=10,y=25;change (&x, &y);printf(“%d %d “, x, y)';}运行结果:ﻩ5、(5分)已知字母A的ASCII码为十进制的65,下面程序的输出是void main(){char ch1,ch2;ch1='A'+'5'-'3';ch2='A'+'6'-'3';printf("%d,%c\n",ch1,ch2);}答案ﻬ三、程序填空(每空2分,共38分)1、下面是一个求数组元素之和的程序。
C语言试题及答案A
绝密★启用前学院学年第二学期期末考试级 专业 《C 语言》试卷A一、单项选择题(本大题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1、( )是构成C 语言程序的基本单位。
A 、函数B 、过程C 、子程序D 、子例程 2、以下说法中正确的是( )。
A 、C 语言程序总是从第一个定义的函数开始执行B 、在C 语言程序中,要调用的函数必须在main( )函数中定义 C、C 语言程序总是从main( )函数开始执行D 、C 语言程序中的main( )函数必须放在程序的开始部分 3、下列关于C 语言的说法错误的是( ) 。
A 、C 程序的工作过程是编辑、编译、连接、运行B 、C 语言不区分大小写。
C 、C 程序的三种基本结构是顺序、选择、循环D 、C 程序从main 函数开始执行4、下列正确的标识符是( )。
A 、-a1B 、a[i]C 、a2_iD 、int t 5、C 语言中的简单数据类型包括( )。
A 、整型、实型、逻辑型B 、整型、实型、逻辑型、字符型C 、整型、字符型、逻辑型D 、整型、实型、字符型 6、在C 语言程序中,表达式5%2的结果是( )。
A 、2.5 B 、2 C 、1 D 、37、如果int a=3,b=4;则条件表达式"a<b? a:b"的值是( )。
A 、3B 、4C 、0D 、1 8、C 语言中,关系表达式和逻辑表达式的值是( )。
A 、0B 、0或1C 、1D 、‘T’或’F’ 9、下面( )表达式的值为4.A 、11/3B 、11.0/3C 、(float)11/3D 、(int)(11.0/3+0.5)10、设整型变量 a=2,则执行下列语句后,浮点型变量b 的值不为0.5的是( )。
A 、b=1.0/aB 、b=(float)(1/a)C 、b=1/(float)aD 、b=1/(a*1.0) 11、在C 语言中对一维整型数组的正确定义为( )。
《C语言程序设计》考试试卷(答案)
《C语言程序设计》考试试卷(答案)一、填空题(每小空1分,共10分)1.C语言程序的三种基本结构是顺序结构、选择结构、循环结构。
2.一个C程序有且仅有一个main( ) 函数。
3.C语言描述“x和y都大于或等于z”的表达式是x>=z && y>=z。
4.C语言可以用来实现循环的结构化语句是while、do while、for。
5.数组名表示数组在内存的首地址。
6.int a=3,*p=&a;*p+2的值是5。
二、单项选择题(每小题2分,共70分)1._____是C语言合法的标识符。
(A)3_sy45 (B)su_m (C)@123 (D)3D642.一个程序的执行是从。
(A)本程序的main函数开始,到main函数结束(B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束。
(C)本程序的main函数开始,到本程序文件的最后一个函数结束。
(D)本程序文件的第一个函数开始,到main函数结束。
3.以下叙述正确的是。
(A)在C程序中,main函数必须位于程序的最前面。
(B)C程序每行中只能写一条语句。
(C)C语言本是没有输入输出语句。
(D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误。
4.以下叙述不正确的是。
(A)逗号运算符的运算级最低。
(B)ABC和abc是两个不同的变量。
(C)若a和b类型相同,在执行a=b后,b的自身值不变。
(D)‘a’和“a”是完全等价的常量。
5.int x=3,y=2;则表达式x+=x*=y+8的值为。
(A)28 (B)30 (C)60(D)176.在c语言中,变量的隐含存储类别是。
(A)auto (B)static (C)extern (D)无存储类别7.执行下面两个语句后,输出的结果为_____。
char c1=98;printf(“%d %c”,c1,c1-32);(A)97 66 (B)98 b (C)b 66 (D)98 B8.执行下面语句后的结果为。
《C语言程序设计》考试试卷(含答案)
《C语言程序设计》考试试卷(含答案)一、填空题(每小空1分,共10分)1.C语言程序的三种基本结构是顺序结构、选择结构、循环结构。
2.一个C程序有且仅有一个main( ) 函数。
3.C语言描述“x和y都大于或等于z”的表达式是x>=z && y>=z。
4.C语言可以用来实现循环的结构化语句是while、do while、for。
5.数组名表示数组在内存的首地址。
6.int a=3,*p=&a;*p+2的值是5。
二、单项选择题(每小题2分,共70分)1.__B___是C语言合法的常量。
2.(A).45(B)078 (C)25.6e3.4 (D)‘xy’3.一个程序的执行是从 A 。
4.(A)本程序的main函数开始,到main函数结束5.(B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束。
6.(C)本程序的main函数开始,到本程序文件的最后一个函数结束。
7.(D)本程序文件的第一个函数开始,到main函数结束。
8.以下叙述正确的是 C 。
9.(A)在C程序中,main函数必须位于程序的最前面。
10.(B)C程序每行中只能写一条语句。
11.(C)C语言本是没有输入输出语句。
12.(D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误。
13.以下叙述不正确的是 D 。
14.(A)逗号运算符的运算级最低。
15.(B)ABC和abc是两个不同的变量。
16.(C)若a和b类型相同,在执行a=b后,b的自身值不变。
17.(D)‘a’和“a”是完全等价的常量。
18.int x=3,y=2;则表达式x+=x*=y+8的值为 C 。
19.(A)28 (B)30 (C)60(D)1720.设x=2.7,a=8,y=4.9,算术表达式x+a%3*(int)(x+y)%5/3的值为B 。
21.(A)2.7 (B)3.7(C)4.7 (D)4.0322.执行下面两个语句后,输出的结果为__D___。
《C语言程序设计》期末考试试卷(A卷)
《C语言程序设计》期末考试试卷(A卷)一、单项选择题(本大题共20题,每题2 分,共40分)1、以下不是C语言的特点的是( B )A、C语言简洁、紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件进行操作D、C语言移植性好2、以下不正确的C语言标识符是( D )A、ABCB、abcC、a_bcD、ab.c3、一个C语言程序是由( B )A、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是( B )A、有零个或多个输入B、有零个或多个输出C、有穷性D、可行性5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( C )A、intB、floatC、doubleD、不确定6、在C语言中,char型数据在内存中的存储形式是( D )A、补码B、反码C、源码D、ASCII码7、有如下程序,输入数据:12345M678<cR>后(<CR>表示回车),x的值是( A ) 。
#include<stdio.h>main(){int x;float y;scanf("%3d%f",&x,&y);}A、12345B、123C、45D、3458、若有以下定义int a,b; float x,则正确的赋值语句是( D )A、a=1,b=2B、b++;C、a=b=5D、b=int(x);9、以下程序的执行结果是( A )#include<stdio.h>{int i=10,j=10;printf("%d,%d\n",++i,j--);}A、11,10B、9,10C、11,9D、10,910、巳知字母A的ASCII码是65,以下程序的执行结果是( D )#include<stdio.h>main(){char c1='A',c2='Y';printf("%d,%d\n",c1,c2);A、A,YB、65,65C、65,90D、65,8911、下列运算符中优先级最高的是( C )A、<B、十C、%D、!=12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( D ) 。
厦门理工学院c语言程序设计期末试题ABC(含答案) 考试卷子
c语言程序设计期末试题A(含答案)一、单项选择题(选择一个最佳答案,每题2分,共20分)1. 一个C程序的执行是从( )。
A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序的main函数开始,到本程序文件的最后一个函数结束D) 本程序文件的第一个函数开始,到本程序main函数结束2. 下列选项中,不能用作标识符的是( )。
A) _1234_ B) _1_2 C) int_2_ D) 2_int_3. 以下定义语句中正确的是( )。
A) char a='A'b='B'; B) float a=b=10.0;C) int a=10,*b=&a; D) float *a,b=&a;4. 设有以下定义:#define d 2int a=0; double b=1.25; char c=’A’;则下面语句中错误的是()。
A) a++; B) b++ C) c++; D) d++;5. 以下4个选项中,不能作为一条C语句的是( )。
A) {;} B) a=0,b=0,c=0; C) if(a>0); D) if(b==0) m=1;n=2;6. 有以下定义语句double a,b; int w; long c;若各变量已正确赋值,则下列选项中正确的表达式是( )。
A) a=a+b=b++ B) w%(int)a+b) C) (c+w)%(int)a D) w=a==b;7. 设有定义:int n=0,*p=&n,**q=&p;则以下选项中,正确的赋值语句是( )。
A) p=1; B) *q=2; C) q=p; D) *p=5;8. 设有定义:int a,*pa=&a; 以下scanf语句中能正确为变量a读入数据的是( )。
A) scanf(“%d”,pa) ; B) scanf(“%d”,a) ;C) scanf(“%d”,&pa) ; D) scanf(“%d”,*pa);9. 若有说明:char *language[]={”FORTRAN”,”BASIC”,”PASCAL”,”JAVA”,”C”};则表达式*language[1]>*language[2]比较的是()。
《C语言程序设计》试题库及答案
C语言程序设计习题集及答案电子信息工程学院2014.9.1内容简介本习题集是为根据嘉应学院电子信息工程学院《C语言程序设计》课程教学大纲筛选题目整理而成的。
本习题集共分10章,提供了361道选择题,85道填空题,42道编程题,题集覆盖了《C语言程序设计》的全部内容,满足嘉应学院电子信息工程学院《C语言程序设计》考试大纲的要求。
寄语亲爱的同学们:很高兴你们学习计算机的语言—C语言,她将带你进入一个全新的计算机的世界。
我是你们的老师,但我更希望是你们的朋友,为你在学习C语言的道路上提供帮助。
同学们,“攻城不怕坚,攻书莫畏难。
科学有险阻,苦战能过关。
”,学习是辛苦的,但也充满了挑战和乐趣。
我希望你们在学习C语言时,带着希望出发,体会一路的艰辛,最后满载收获而回。
朋友们,学习向来没有什么捷径可寻。
“多看、多模仿、多操作”是我能给你们的唯一建议。
祝你们学业有成。
杨久红 2014.9.1目录第一部分习题第1章C语言概述 (1)1.1选择题 (1)1.2填空题 (2)1.3编程题 (2)第2章数据的存储与运算 (3)2.1选择题 (3)2.2填空题 (6)2.3编程题 (7)第3章最简单的程序设计-顺序程序设计 (8)3.1选择题 (8)3.2填空题 (13)3.3编程题 (14)第4章选择结构程序设计 (15)4.1选择题 (15)4.2填空题 (19)4.3编程题 (20)第5章循环结构程序设计 (21)5.1选择题 (21)5.2填空题 (29)5.3编程题 (30)第6章利用数组处理批量数据 (32)6.1选择题 (32)6.2填空题 (37)6.3编程题 (38)第7章用函数实现模块化程序设计 (40)7.1选择题 (40)7.2填空题 (52)7.3编程题 (57)第8章善于使用指针 (58)8.1选择题 (58)8.2填空题 (70)8.3编程题 (71)第9章结构体 (72)9.1选择题 (72)9.2填空题 (73)9.3编程题 (74)第10章利用文件保存数据 (75)10.1选择题 (75)10.2填空题 (77)10.3编程题 (79)第二部分参考答案第1章C语言概述 (81)1.1选择题 (81)1.2填空题 (81)1.3编程题 (81)第2章数据的存储与运算 (81)2.1选择题 (81)2.2填空题 (82)2.3编程题 (82)第3章最简单的程序设计-顺序程序设计 (83)3.1选择题 (83)3.2填空题 (83)3.3编程题 (83)第4章选择结构程序设计 (84)4.1选择题 (84)4.2填空题 (85)4.3编程题 (85)第5章循环结构程序设计 (87)5.1选择题 (88)5.2填空题 (88)5.3编程题 (88)第6章利用数组处理批量数据 (95)6.1选择题 (95)6.2填空题 (95)6.3编程题 (95)第7章用函数实现模块化程序设计 (100)7.1选择题 (100)7.2填空题 (100)7.3编程题 (100)第8章善于使用指针 (104)8.1选择题 (104)8.2填空题 (104)8.3编程题 (104)第9章结构体 (106)9.1选择题 (106)9.2填空题 (106)9.3编程题 (106)第10章利用文件保存数据 (107)10.1选择题 (107)10.2填空题 (107)10.3编程题 (107)第一部分习题第1章C语言概述1.1选择题1.以下说法中正确的是( )。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
void main()
{
charscore;
scanf("%c",&score);
switch(____(3)______)
{
case 'A':printf("A:90~100\n"); break;;
case'B': printf("B:80~89\n”);break;
A) p=m;B) p=&m;C)*p=m;D)*p=&m;
18、若有下列定义:inta[5],*p=a;则能正确表示a数组某个元素地址的是______。
A)&aB)p+2
C)a++D)&a[5]
19、若有以下讲明,则*(a+a[3])的值为__________。
int a[10]={9,1,8,2,7,3,6,4,5,0};
x+=5;
continue;
}
x-=3;
}
A)5ﻩﻩﻩB)6
C)50ﻩD)51
9、设有数组定义:inta[5];则下列给数组元素赋值错误的是________、
A)a[3]=93;
B)scanf(”%c",a[3]);
C) a[3]=a[0]+a[1];
D)a[3]=’a'+3;
10、若用数组名作为函数调用时的实参,则实际上传递给形参的是________。
ﻩfor(j=0;j<4;j++)
x++;
则循环体结束后,x的值为________。
A)5ﻩﻩB)20
C)25ﻩD)死循环
8、设x与y均为int型变量,则执行下面的循环后,y值为_________。
for(y=1,x=1;y〈=50;y++)
{
if(x〉=10)break;
if (x%2==1)
ﻩ{
5、对含有10个元素的数组a先按元素的存储次序倒序输入,再按其正序输出。
#include <stdio、h〉
#define N10
voidmain()
{
int i,a[N];
for(i=N-1;___(6)___;i--)
ﻩ scanf(”%d",&a[i]);
for(i=0;i<N;i++) printf(”%d\t",a[i]);
}
}
5、voidmain()
{inta=14,b=63;
while (a!=b)
{while (a>b) a—=b;
while (a<b)b-=a;
}
printf (”%d\n",a);
}
6、voidmain()
{inta[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;
for(i=1;i〈3;i++)
16、有以下程序
voidmain()
{
inti,t[][3]={9,8,7,6,5,4,3,2,1};
for(i=0;i<3;i++)
printf(”%d”,t[2-i][i]);
}
程序执行后的输出结果是______。
A)753B)357
C)36914;则能正确表示p指向m的赋值语句是________。
讲明:请考生将答案写在“武汉大学答题纸”上并标明题号,否则不得分。试卷中C语言程序的开发环境是VC 6。
一、选择题(共20小题,每小题2分,共40分)
1、以下正确的C语言自定义标识符是______。
A)_1aﻩﻩﻩB)2a_ﻩC)doﻩﻩﻩD)a、12
2、温度华氏与摄氏的关系是: C=(F—32)。已知:floatC,F;由华氏求摄氏的正确计算的表达式是____、
case'C': printf(”C:70~79\n");break;
case'D’:printf("D:60~69\n”);break;
case'E': printf("E:0~59\n");break;
____(4)____:printf("输入错误\n");
}
}
4、设x为int型变量,请写出一个关系表达式____(5)____,用以判断x能同时被3与5整除时,关系表达式的值为真。
A) C=5/9(F—32)ﻩﻩﻩﻩB) C=5*(F—32)/9
C)C=5/9*(F—32) ﻩﻩﻩﻩD)三个表达式都正确
3、设floatx,由键盘输入:12、45,能正确读入数据的输入语句是_________。
A)scanf("%5、2f”,&x)B)scanf("%d",&x);
C)scanf("%f",&x);D)scanf(”%f”,x);
C)‘0’<=c1<='9’D) c1〉='0’&&c1<='9’
6、switch(表达式)语句中的“表达式",允许的类型是_________。
A)float, intﻩB)float,int,char
C)int, charﻩﻩD)char,double
7、设int i,j, x=0;
for(i=5;i;i-—)
printf(”\n");
}
6、下面程序的功能是显示具有N个元素的数组s中的最大元素。
#define N 20
intfmax(int s[],intn)
{ int k=s[0],i;
for(i=1;i〈n;i++)
if(____(7)_____)k=s[i];
return(k);
}
voidmain()
A)b[8]的值为0
B)b[1]的值为1
C)b[3]的值为整数
D)b[10]不是b数组中的元素
13、若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是_________。
A)函数调用能够作为独立的语句存在
B)函数调用能够作为一个函数的实参
C)函数调用能够出现在表达式中
D)函数调用能够作为一个函数的形参
三、程序阅读,写出下列程序的运行结果(共10小题,每小题2分,共20分)
(下列程序均包括#include"stdio、h")
1、voidmain()
{intx,y;
scanf(“%d,%d”,&x,&y);
if(x>20||x〈-10)
if(y〈=100&&y>x)
printf("Good");
else
for(j=0;j〈=i;j++)
s+=a[i][j];
printf(”s=%d”,s);
}
7、int f(intx)
{returnx+3;}
voidmain()
{int a=1;
while(f(a)<10)
a++;
printf(“a=%d\n”,a)
}
8、intf(intb[],int n)
{inti,r=1;
A)1ﻩB)2ﻩﻩC)8ﻩﻩD) 11
20、C语言中,函数返回值的类型是由______决定的。
A)调用函数时动态决定的ﻩﻩB) return语句中的表达式类型
C)调用该函数的主调函数类型ﻩD)定义函数时,所指定的函数类型
二、填空题(共7小题10空,每空2分,共20分)
1、已知int x=5,y=1,z=2;执行语句x%=y+z;后,x的值是___(1)___。
2、设int a[3][4]={{1,2,3,4},{5,6,7},{8,9}};则表达式a[1][2]+a[2][3]的值是____(2)____。
3、学生成绩的字每等级与分数范围如下:
字母等级分数范圈
Aﻩﻩﻩ90~100
Bﻩﻩ80~89
Cﻩﻩﻩ70~79
D60~69
E0~59
其它字母ﻩ输入错误
下列程序输入字母等级之后,输出相应的分数范围。
14、在C语言中,下列错误的讲法是_______。
A)函数能够递归调用
B)不允许在函数定义中再定义函数
C)递归程序不估计用非递归算法实现
D)关于continue语句,能够通过改变程序的结构而不使用它
15、在一个源文件中定义的全局变量的作用域为()、
A)本文件的全部范围。B)本程序的全部范围。
C)本函数的全部范围。D)从定义该变量的位置开始至本文件结束
A)数组首地址ﻩB)数组的第一个元素值
C)数组中全部元素的值ﻩD)数组元素的个数
11、int a[2][3]={{1},{2,3}};,则a[1][1]的值是_________、
A)0ﻩB)1
C)2ﻩﻩﻩD)3
12、若定义数组并初始化intb[10]={ 1,2,3,4},以下讲法错误的是________
{inti,a[N];
for(i=0;i〈N;i++)
scanf("%d",&a[i]);
printf("%d\n",____(8)_____);//调用函数fmax
}
7、若有inta[5]={10,20,30,40,50},*p=a,*s=a+2;
则表达式s-p的值是____(9)_____,*s-*p的值是___(10)______。
for(i=0;i<=n;i++)r=r*b[i];
returnr;
}
voidmain()
{ intx,a[]={1,2,3,4,5,6};
x=f(a,3);
printf(”%d\n”,x);
}
9、funa(inta)