C语言期末试题及答案B卷

合集下载

C语言》期末考试试卷(B卷与参考答案)

C语言》期末考试试卷(B卷与参考答案)

C语⾔》期末考试试卷(B卷与参考答案)2010~2011学年度第⼀学期10级《C语⾔》期末考试试卷(B卷与参考答案)班级1011计⽹学号姓名总分(适⽤班级:1011计⽹)(考试形式:闭卷时间:90分钟)⼀、选择题(每题2分,共60分)1、C语⾔程序的基本单位是( C )A) 程序⾏B) 语句C) 函数D) 字符2、C语⾔程序的三种基本结构是( A )A、顺序结构,选择结构,循环结构B、递归结构,循环结构,转移结构C、嵌套结构,递归结构,顺序结构D、循环结构,转移结构,顺序结构3、C语⾔可执⾏程序的开始执⾏点是( C)A) 程序中第⼀条可执⾏语句B) 程序中第⼀个函数C) 程序中的main函数D) 包含⽂件中的第⼀个函数4、C语⾔中,运算对象必须是整型数的运算符是( A )A) % B) \ C) %和\ D) * *5、C语⾔中数组下标的下限是( B )。

A、1B、0C、视具体情况D、⽆固定下限6、C语⾔中最简单的数据类型包括( B )A) 整型、实型、逻辑型B) 整型、实型、字符型C) 整型、字符型、逻辑型D) 整型、实型、逻辑型、字符型7、x、y、z被定义为int型变量,若从键盘给x、y、z输⼊数据,正确的输⼊语句是( B )A) input x,y,z; B) scanf("%d%d%d",&x,&y,&z);C) scanf("%d%d%d",x,y,z); D) read("%d%d%d",&x,&y,&z);8、表达式:10!=9的值是( D )A) true B) ⾮零值C) 0 D) 19、表⽰关系x<=y<=z的c语⾔表达式为( A)A) (X<=Y)&&(Y<=Z) B) (X<=Y)AND(Y<=Z)C) (X<=Y<=Z) D) (X<=Y)&(Y<=Z)10、下列运算符其优先级最⾼的是( C)。

C语言程序设计期末试题B及答案

C语言程序设计期末试题B及答案

C语言程序设计教程期末考试试卷(B卷)(考试时间90分钟,满分100分)一、选择题(每小题1分,共20分)下面各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂抹在答题卡相应的位置上,答在试卷上不得分。

1. 在C语言中,下列标识符中合法的是( )A. -intB. in1_3C. A_B!DD. const2. 不属于C语言基本数据类型的是( )A. intB. unionC. charD. unsigned3. 下面是对宏定义的描述。

不正确的是( )A. 宏不存在类型问题,宏名无类型,它的参数也无类型B. 宏替换不占用运行时间C. 宏替换只是字符串的简单替代D. 宏替换时先检查类型,类型一致时才可以替换4. C语言中,″\\xfds″在内存中占用的字节数是( )A. 3B. 4C. 5D. 65. 设int x;则执行printf(″%x\n″,~x^x);的结果是( )A. ffffffffB. ffC. 0D. 16. 对于while语句,错误的说法是( )A. 用条件控制循环体的执行次数B. 循环体至少要执行一次C. 循环体有可能一次也不执行D. 循环体中可以包含若干条语句7. 执行下列语句后输出的结果是( )int a=8,b=7,c=6;if(a<b)if(b>c){a=c;c=b;}printf("%d,%d,%d\n",a,b,c);A. 6,7,7B. 6,7,8C. 8,7,6D. 8,7,88. 设int a=9,b=20;则printf(″%d,%d\n″,a--,--b);的输出结果是( )A. 9,19B. 9,20C. 10,19D. 10,209. 设static char x[ ]=″12345″,y[ ]={′1′,′2′,′3′,′4′,′5′,′\0′};那么( )A. x数组的长度等于y数组的长度B. x数组的长度大于y数组的长度C. x数组的长度少于y数组的长度D. x数组与y数组的存储区域相同10. 设int i,x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是( )for(i=0;i<3;i++)printf(″%d″,x[i][2-i]);A. 147B. 159C. 357D. 36911. 执行完下列语句后,n的值是( )int n;for (n=0 ; n<100 ; n=2*n+1);A. 125B. 126C. 127D. 12812. 有以下语句:int a=6;a+=a-=a*a;printf(“%d”,a);输出结果( )A. –132B. –60C. -24D. 013. 为了连接两个字符串s1与s2,应当使用( )A. strcat( s1,s2 )B. strcpy( s1, s2 )C. strlen( s1, s2 )D. strcmp( s1, s2 )14. 设int a,*p;则语句p=&a;中的运算符“&”的含义是( )A. 位与运算B. 逻辑与运算C. 取指针内容D. 取变量地址15. 下面输出的结果为( )int a=13, b=64;printf(“%d\n”, !a || (b>>3) );A. 13B. 64C. 1D. 016. 下列定义正确的是( )A. enum t={a,b}x;B. enum t{1,2}x;C. enum {′+′,′-′}x;D. enum t{a,b}x;17. 设有定义:struct u{int a[4];float b[3]; char c[16];}aa;则printf(″%d\n″,sizeof(aa));的输出是( )A. 32B. 36C. 12D. 818. 数据-54.78在文本文件中占用的字节个数是( )A. 4B. 5C. 6D. 819. 在宏定义#define p(r) 3.14*r中,请问宏名是( )A. pB. p(r)C. 3.14*rD. p(r) 3.14*r20. 要打开一个已存在的用于修改的非空二进制文件“hello.txt”,正确语句是( )A. fp=fopen( "hello.txt ","r" )B. fp=fopen( "hello.txt ","ab+" )C. fp=fopen( "hello.txt ","w" )D. fp=fopen( "hello.txt ","r+" )二、填空题(每小题4分,共36分)请将每一个空的正确答案写在答题卡相对应的横线上,答在试卷上不得分。

《C语言本科B卷》期末考试试卷附答案

《C语言本科B卷》期末考试试卷附答案

《C语言本科B卷》期末考试试卷附答案一、单项选择题(每题2分,共30分)1.下面的四个选项中,均不是合法的用户标识符的选项是()A) B B) b-a C) float D) _123M_0 goto 2ab tempDo int _A INT2.有输入语句:scanf(“a=%d, b=%d, c=%d”, &a, &b, &c);为使变量a,b,c的值分别为1,3,2,从键盘上输入数据的正确形式应当是()A)132 〈回车〉 B)a=1,b=3,c=2〈回车〉C)a=1 b=3 c=a <回车> D) 1,3,2 〈回车〉3.如果输入信息为:1234567 则执行语句:scanf("%2d%2d",&x,&y);之后,x,y的值为()A. x为12,y为34B. x为2,y为3C. x为12,y为67D.x为1234567,y为04.对于for(表达式1;表达式2 ;表达式3) 语句的正确描述()A.表达式2省略,循环不执行。

B.表达式3省略,可在循环体中修改循环控制变量,以保证正常退出。

C.三个表达式均不能省略。

D.三个表达式均不能省略。

但分号可以省略。

5.以下叙述中错误的是()。

A.循环语句嵌套必须是同类型的语句B.循环语句嵌套可以是同类型的语句,也可以不同类型C.do_while循环语句和 while循环语句的程序执行方式都是相同的。

D.循环体中不能再有循环语句6.有下面的程序段char a[ 3 ], b[ ] =”student”;a=b;printf (“ %s”,a);则()A.运行后将输出student ; C.运行后将输出b;B.运行后将输出a D.编译出错7.当数组作函数参数时,选出不正确的描述。

()A.实参数组与形参数组类型应一致。

B.数组元素做函数实参时,同变量做实参一样是参数传值。

C.形参数组可以不定义数组大小。

C语言期末考试题(含答案)

C语言期末考试题(含答案)

C语言期末考试题(含答案)《C语言程序设计》期末试卷一、单项选择题(10x2’=20’)1、以下叙述正确的是()A)C语言的源程序不必通过编译就可以直接运行。

B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令。

C)C语言源程序经编译形成的二进制代码可以直接运行。

D)C 语言中的函数不可以单独进行编译。

2、一个C语言的源程序中()A)必须有一个主函数B)可能有多个主函数C)必须有除主函数外其它函数D)可以没有主函数3、以下不能定义为用户标识符的是()A)scanfB)VoidC)_3comD)int4、若以下选项中的变量已正确定义,则正确的赋值语句是()A)x1=26.8%3;B)1+2=x2;C)x3=0x12;D)x4=1+2=3;15、设有定义:floata=2,b=4,h=3;以下C语言表达式中与代数式(a b)*h的计2算结果不相符的是().C)for、while、do-whileD)if、for、continue7.在while(!x)语句中的!x与下面条件表达式等价的是()A) x!=0B) x==1C)x!=1D)x==08、有以下程序:#include <XXX>void main(){int i=1,j=1,k=2;if( (j++||k++)&&i++ )printf(“%d,%d,%d\n”,i,j,k);}执行后的输出结果是()A)1,1,2B)2,2,1C)2,2,2D)2,2,39、有以下程序:#include <XXX>void 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中偶数之和10、有以下函数定义:void fun(int n,double x){……}若以下选项中的变量都已经正确定义并赋值,则对函数fun的正确调用语句是()A)fun(int y,double m);B)k=fun(10,12.5);C)fun(x,n);D)void fun(n,x);2、填空题(10x2’=20’)11、C言语描绘“x和y都大于或等于z”的表达式是:。

大学c语言期末考试题及答案

大学c语言期末考试题及答案

大学c语言期末考试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述中,错误的是:A. C语言是一种高级语言B. C语言的执行方式是编译执行C. C语言支持面向对象编程D. C语言具有丰富的库函数答案:C2. 在C语言中,用于定义一个结构体的关键字是:A. structB. unionC. enumD. typedef答案:A3. 下列关于数组的描述中,正确的是:A. 数组必须在定义时初始化B. 数组的下标从1开始C. 数组可以存储不同类型的数据D. 数组的大小在定义后不能改变答案:D4. 在C语言中,用于文件操作的库函数是:A. printfC. fopenD. getchar答案:C5. 下列关于指针的描述中,错误的是:A. 指针可以存储变量的地址B. 指针可以作为函数的参数C. 指针可以被赋值为NULLD. 指针可以存储函数的地址答案:D6. 在C语言中,用于定义一个函数的关键字是:A. functionB. defC. voidD. int答案:B7. 下列关于循环的描述中,错误的是:A. for循环可以嵌套使用B. while循环可以和break语句一起使用C. do-while循环至少执行一次D. 循环体内不能使用continue语句答案:D8. 在C语言中,用于定义一个宏的预处理命令是:B. #includeC. #pragmaD. #import答案:A9. 下列关于函数的描述中,错误的是:A. 函数可以有返回值B. 函数可以没有参数C. 函数可以没有返回值D. 函数可以没有定义答案:D10. 在C语言中,用于定义一个枚举类型的关键字是:A. enumB. structC. unionD. typedef答案:A二、填空题(每题2分,共10分)1. C语言中,用于定义一个整型变量的关键字是____。

答案:int2. 在C语言中,表示逻辑与运算的运算符是____。

答案:&&3. 当需要在C语言中表示一个常量时,可以使用关键字____。

2022年烟台理工学院公共课《C语言》科目期末试卷B(有答案)

2022年烟台理工学院公共课《C语言》科目期末试卷B(有答案)

2022年烟台理工学院公共课《C语言》科目期末试卷B(有答案)一、填空题1、设有一输入函数scanf("%d”,k);它不能使float类型变量k得到正确数值的原因是_______未指明变量k的地址和_______格式控制符与变量类型不匹配。

2、一个C语言源程序由若干函数组成,其中至少应含有一个________3、结构化程序由________、________ 、________ 3种基本结构组成。

4、C语言中的标识符可分为关键字、_______和_______3类。

5、若x和a均是int型变量,则执行表达式(1)后的x值为_______,执行表达式(2)后的x值为_______。

(1)x=(a=4,6*2)(2)x=a=4,6*26、设有char a,b;若要通过a&b运算屏蔽掉a中的其他位,只保留第2和第8位(右起为第1位),则b的二进制数是_______。

7、下面add函数的功能是求两个参数的和,并将和值返回调用函数。

函数中错误的部分是_______,改正后为_______。

void add(float a,float b){float c;c=a+b;return c;}8、设有宏定义如下:#define MIN(x,y)(x)>(y)?(x):(y)#define T(x,y,r)x*r*y/4则执行以下语句后,s1的值为_______,s2的值为_______。

int a=1,b=3,c=5,s1,s2;s1=MIN(a=b,b-a);s2=T(a++,a*++b,a+b+c);9、若有定义:inta[3][4]={{1,2},{0},{4,6,8,10}};,则初始化后,a[1][2]得到的初值是_______,a[2][1]得到的初值是_______。

10、当运行以下程序时,从键盘输入book<回车>book囗<回车>(囗表示空格),则下面程序段的运行结果是_______。

c语言程序设计期末考试试卷(B)

c语言程序设计期末考试试卷(B)
void main()
{
int x[4][4]={{1,2,3,4},{3,4,5,6},{5,6,7,8},{7,8,9,10}};
int i,j;
for(i=0;i<4;i++)
for(j=0;j<4;j++)
*(*(x+i)+j)/=*(*(x+i)+i);
for(i=0;i<4;i++)
{
for(j=0;j<4;j++) printf("%3d",*(*(x+i)+j));
则以下叙述中正确的是C。
A、ptr是指向一维组数的指针变量
B、ptr是指向int型数据的指针变量
C、ptr是指向函数的指针,该函数返回一个int型数据
D、ptr是一个函数名,该函数的返回值是指向int型数据的指针
重庆邮电大学2006-2007学年第一学期
一、单选题(每题1分共三十分)
1、以下叙述不正确的是D。
4、设有说明;char w;int x;float y;double z;则表达式w-x+z-y值的数据
类型为D。
A、float B、char C、int D、double.
5、能正确表示“当x取值在[1,10]和[200,210]范围内为真,否则为假”的表达式是B。
A、(x>=1)&&(x<=10)&&(x>=200)&&(x<=210)
A、203 B、204 C、1a4 D、1a6
22、左移运算:int a=16,c=a<<2;变量c的值是。

2022年河池学院公共课《C语言》科目期末试卷B(有答案)

2022年河池学院公共课《C语言》科目期末试卷B(有答案)

2022年河池学院公共课《C语言》科目期末试卷B(有答案)一、填空题1、执行以下程序时,若从第一列开始输入数据,为使变量a=3、b=7、x=8.5、y=71.82、c1='A'、c2='a',正确的数据输入形式是_______。

#include <stdio.h>int main(){int a,b;float x,y;char cl,c2;scanf("a=%d b=%d",&.a,&.b);scanf("x=%f y=%",8.x,8.y);scanf("c1=%cc2=%c”,8.cl,8.c2);printf("a=%d,b=%d,x=%f,y=%f,cl=%c,c2=%c",a,b,x,y,cl,c2);return0;}2、在C语言源程序中,一个变量代表【】。

3、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是4、若有定义语句:ints=6;则表达式s%2+(s+1)%2的值为_______5、若a是int型变量,则表达式(a=4*5,a*2),a+6的值为_______。

6、设有char a,b;若要通过a&b运算屏蔽掉a中的其他位,只保留第2和第8位(右起为第1位),则b的二进制数是_______。

7、函数swap(int x,inty)可完成对x和y值的交换。

在运行调用函数中的如下语句后,a[0]和a[1]的值分别为_______,原因是_______。

a[o]=1;a[1]=2;swap(a[o],a[1]);8、若有定义floata[3][5];则a数组所含数组元素个数是_______,a数组所占的字节数是_______。

9、设有如下定义:#define SWAP(T,X,Y){T=X;X=Y;Y=T;}以下程序段将通过调用宏实现变量x和y内容的交换,请填空。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

绝密★启用前
学院
学年第二学期期末考试
级 专业(专科)《C 语言程序设计》试卷B
一、单项选择题(本大题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。

错选、多选或未选均无分。

1.C 语言程序从( )开始执行。

A)程序中第一条可执行语句
B) 程序中第一个函数 C)程序中的main 函数 D) 包含文件中的第一个函数 2.若int x=2,y=3,z=4 则表达式x<z?y:z 的结果是( ). A)4 B)3 C)2 D)0 3.下列四组选项中,正确的C
语言标识符是( )。

A )%x B )a+b C )a123 D )123 4.如果int a=3,b=4;则条件表达式"a<b? a:b"的值是( )。

A) 3 B) 4 C) 0 D) 1 5.以下能对一维数组a 进行初始化的语句是: ( )。

A)int a[5]=(0,1,2,3,4,) B)int a(5)={} C)int a[3]={0,1,2} D)int a{5}={10*1} 6.已知:int a[10]; 则对a 数组元素的正确引用是( )。

A)a[10] B)a[3.5] C)a(5) D)a[0] 7.若有以下数组说明,则i=10;a[a[i]]元素数值是( )。

int a[12]={1,4,7,10,2,5,8,11,3,6,9,12}; A )10 B )9 C )6 D )5 8.在C 语言中,以( )作为字符串结束标志
A)’\n’ B)’ ’ C) ’0’ D)’\0’ 9.下列数据中属于“字符串常量”的是( )。

A )“a” B){ABC} C )‘abc \0’ D)‘a’
10.已知char x[]="hello", y[]={'h','e','a','b','e'};, 则关于两个数组长度的正确描述是
( )。

.
A)相同 B)x 大于y C)x 小于y D)以上答案都不对 11.在 C 语言中,每个语句必须以( )结束。

A )回车符
B )冒号
C )逗号
D )分号
12. 逻辑运算符中,运算优先级按从高到低依次为( )。

A )&&,!,||
B )||,&&,!
C )&&,||,!
D )!,&&,|| 13.for(i=1;i<9;i+=1);该循环共执行了( )次。

A )7 B )8 C )9 D )10 14.C 语言总是从 ( )函数开始执行。

A )main
B )处于最前的
C )处于最后的
D )随机选一个 15.int a[4]={5,3,8,9};其中 a[3]的值为( )。

A )5 B )3 C )8 D )9
二、填空题(每空2分,共30分)
1、设x ,y ,z 均为int 型变量,请写出描述“x 或y 中有一个小于z ”的表达式 .
2、如果需要从被调用函数返回一个函数值,被调用函数必须包含 语句。

3、在一个C 源程序中,注释部分二侧的分界符为 .
4、C 语言标识符由 、 和 来构造。

5、若int x=5;while (x>0)printf(“%d ”,x--);的循环执行次数为 。

6、若有说明和语句:int a=5,b=6,y=6;b-=a ;y=a++则b 和y 的值分别是 、 。

7、C 程序设计的三种基本结构是 、 、 。

8、C 语言提供的3种逻辑运算符是 、 和。

三、编程题(每题20分,共40分)
1.从键盘上输入一个百分制成绩score ,按下列原则输出其等级:score≥90,等级为A ;80≤score<90,等级为B ;70≤score<80,等级为C ;60≤score<70,等级为D ;score<60,等级为E 。

2、编程序实现求1-1000之间的所有奇数的和并输出。

3. 从键盘输入10个整数,统计其中正数、负数和零的个数,并在屏幕上输出。

横线以内不许答题
课程考试参考答案与评分标准
学年第 二 学期
课程名称:C 语言程序设计 考试性质:考查 试卷类型: B 考试班级: 考试方法:闭卷 命题教师:
一、单项选择题(本大题共15小题,每小题2分,共30分) 1.C 2.B 3.C 4.A 5.C 6.D 7.C 8.D 9.A 10.B
11.D 12.D 13.B 14.A 15.D 二、填空题(每空2分,共30分) 1、 x<z||y<z 2、 return 3、 /*和*/
4、字母、数字、下划线
5、5
6、1 、20
7、顺序结构、选择结构、循环结构 8、!、&&、||
三、编程题(每题20分,共40分)
1.从键盘上输入一个百分制成绩score ,按下列原则输出其等级:score≥90,等级为A ;80≤score<90,等级为B ;70≤score<80,等级为C ;60≤score<70,等级为D ;score<60,等级为E 。

#include <stdio.h> void main(){
int data;
char grade; printf("Please enter the score:"); scanf("%d”, &data);
switch(data/10) { case 10:
case 9 : grade=’A’; break; case 8: grade=’B’; break; case 7: grade=’C’; break; case 6: grade=’D’; break; default: grade=’E’; }
printf("the grade is %c”,grade); }
2、编程序实现求1-1000之间的所有奇数的和并输出。

#include <stdio.h> void main( )
{ int i, sum=0;
for(i=1; i<1000; i=i+2) sum=sum+i;
printf(“the sum of odd is :%d”,sum); }
3. 从键盘输入10个整数,统计其中正数、负数和零的个数,并在屏幕上输出。

#include <stdio.h> void main( ) {
int a, i,p=0,n=0,z=0;
printf("please input number");
for(i=0;i<10;i++){ scanf("%d,",&a); if (a>0) p++; else if (a<0) n++; else z++; }
printf("正数:%5d, 负数:%5d,零:%5d\n",p,n,z);
}。

相关文档
最新文档