《C语言程序设计基础》 试卷B及参考答案

《C语言程序设计基础》  试卷B及参考答案
《C语言程序设计基础》  试卷B及参考答案

《c语言程序设计基础》试卷(B卷)

考试时间:90分钟闭卷任课老师:

班级:学号:姓名:成绩:

一、选择题:(每小题2分,共30分)

1.由C++目标文件连接而成的可执行文件的缺省扩展名为()

A.cpp B.exe C.obj D.lik

2.下列符号中,不可以作为变量名的是()

A.list_p_7 B.PA123 C.ready D.if

3.在每个C++程序中都必须包含有这样一个函数,该函数的函数名为()A.main B.MAIN https://www.360docs.net/doc/ef15535802.html, D.function

4.设x和y均为bool量,则x&&y为真的条件是()

A.它们均为真

B.其中一个为真

C.它们均为假

D.其中一个为假5.执行下面程序段的输出结果是()

int x=4,y=-55;

if (x>0) if (x>10) cout <<”AA” else cout <<”BB”

else if (y<-8) if (y>-20) cout <<”CC” else cout <<”DD”;

A.AA

B.BB

https://www.360docs.net/doc/ef15535802.html,

D.DD

6.符串常量”hello”的长度是()

A.5

B.6

C.7

D.8

7.以下语句,int i=2,j=2,m,n;m=i++;n=++j;则m,n,i,j的值分别为()

A.2,3,2,2

B.2,3,3,3

C.2,2,3,3

D.3,3,2,2

8.假定a为一个整型数组名,则元素a[4]的字节地址为()

A.a+4

B.a+8

C.a+16

D.a+32

9. x>0 || y==5的相反表达式为()。

A. x<=0 || y!=5

B. x<=0 && y!=5

C. x>0 || y!=5

D. x>0 && y==5 10.在下面的函数声明中,存在着语法错误的是()

A.void BC(int a , int)

B.void BD(int , int)

C.void BE(int , int=5)

D.int BF(int x ; int y)

11. 循环体至少被执行一次的语句为()。

A. for循环

B. while循环

C. do循环

D. 任一种循环

12.已知一函数中有下列变量定义,其中属于静态变量的是()

A.int a=5;

B.static double b;

C.register char c;

D.auto

short d;

13. do语句能够改写为()语句。

A. 复合

B. if

C. switch

D. while

14.要使语句: p=new int[10]; 能够正常执行,p应定义为()

A.int p;

B.int p[10];

C.int *p;

D.int (*p)[10];

15. 编写C++程序一般需经过的几个步骤依次是( )。

A. 编译、编辑、连接、调试

B. 编辑、编译、连接、调试

C. 编译、调试、编辑、连接

D. 编辑、调试、编辑、连接

二、填空题(每小题1分,共10分)

1.char、short和int类型的大小分别为、和。

2.表达式float(25)/4和int(14.6)%5的值分别为和。

3.在每个C++程序中都必须包含有这样一个函数,该函数的函数名为。4.在C++语言中,用转义字符序列或操纵符表示输出一个换行符。

5. 一个函数的函数体就是一条_________语句。

6. 设px是指向一个类动态对象的指针变量,则执行“delete px;”语句时,

将自动调用该类的。

7.关系表达式x+y>5的相反表达式为

8. 空串的长度为___,存储它需要占用___个字节。

9.表达式: x=625,i=(x>100?10:100) 的值是。

10. C++语言中的每条基本语句以作为结束符,每条复合语句以作为结束符。

三、写出下列每个函数的功能(每小题4分,共20分)

1、#include

bool SG(int x) {

/ /x为大于等于2的整数

int a=int(sqrt(x));/ /取x的平方根

int i=2;

while(i<=a) {

if(x%i= =0) break;

i+ +; }

if(i<=a)return 0;else return 1;}

2、#include

int SC(int a,int b,int c){

if(a>=b && a>=c) return a;

if(b>=a && b>=c) return b;

if(c>=a && c>=b) return c;}

3、#include

bool SG(int x){

int a=int(sqrt(x));

int i=2;

while(i<=a){

if(x%i==0) break;

i++;}

if (i<=a) return 0;

else return 1;}

4、int SC(int a,int b,int c) {

if(a>=b && a>=c) return a;

if(b>=a && b>=c) return b;

if(c>=a && c>=b) return c;}

四、阅读下列程序,在处填入适当内容,使程序完整(每个空1分,共10分,)

1、斐波那契数列的第1和第2个数分别为0和1 ,从第三个数开始,每个数等于其前两个数之和。求斐波那契数列中的前20个数,要求每行输出5个数。

#include

void main() {

int f,f1,f2,i;

cout<<”斐波那契数列:\n”;

f1=0; f2=1;

cout<

for(i=3;i<=20;i++) {

f=______(1)______;

cout<

if(_____(2)______) cout<

f1=f2;

f2=____(3)_______; }

cout<

2、打印出2至99之间的所有素数(即不能被任何数整除的数)。

#include

#include

void main()

{

int i,n;

for(n=2; ___(1)___; n++) {

int temp=int(sqrt(n)); //求出n的平方根并取整

for(i=2; ___(2)___; i++)

if(n%i==0) ___(3)___;

if(i>temp) cout<

cout<<'\n';}

3、采用辗转相除法求出两个整数的最大公约数。

#include

void main()

{

int a,b;

cout<<"请输入两个正整数:";

cin>>a>>b;

while(a<=0 || __(1)___) {cout<<"重新输入:"; cin>>a>>b;} while(b) {

int__(2)__;

r=a%b;

___(3)___; ___(4)___; //分别修改a和b的值} cout<

五、写出下列程序的运行结果(每小题5分,共30分)

1.main ( )

{ int a=4,x=5,b=8;

fun(b,6);

printf("%d,%d,%d\n",a,b,x);

}

fun (int a,int b)

{ int x=3;

printf("%d,%d,%d\n",a,b,x);

}

运行结果:

2、#include

void SB(char ch){

switch(ch){

case 'A':case 'a':

cout<<"well!";break;

case 'B':case 'b':

cout<<"good!";break;

case 'C':case 'c':

cout<<"pass!";break;

default:

cout<<"bad!";break;}

void main(){

char a1='b',a2='C',a3='f';

SB(a1);SB(a2);SB('A');

cout<

3、#include

#include

double SD(int a,int b,char op){

double x;

switch(op){

case '+':x=double(a)+b;break;

case '-':x=double(a)-b;break;

case '*':x=double(a)*b;break;

case '/': if (b) x=double(a)/b;

else exit(1);

break;

default:exit(1);}

return x;}

void main(){

int x=20,y=12;

cout<

cout<

cout<

4. #include

void main(){

int s=0;

for(int i=1;i<6;i++)

s+=i*i;

cout<<"s="<

运行结果:

5.#include

void main(){

int s1=0,s2=0;

for(int i=0;i<10;i++)

if(i%2)s1+=i;

else s2+=i;

cout<

运行结果:

6. main( )

{int i,j;

for(i=1;i<=3;i++)

{for(j=1;j<=i;j++)

printf(“%d”,j);

printf(“\n”);}}

运行结果:

以下为本试卷的参考答案

一、选择题(30分,每小题2分)

1.( A )

2.( C )

3.( A )

4.( D )

5.( B )

6.( B )

7.( A )

8.( A )

9.( B ) 10.( B )

11.( C ) 12.( B ) 13.( D ) 14.( C ) 15.( B )

二、填空题(10分,每小题1分)

1.1,2,4 2.6.25,4 3. main 4. \n endl 5. 复合

6.动态内存

7.x+y<5||x+y==5

8. 0 1

9.10 10. ; {}

三、写出下列每个函数的功能(20分,每小题4分)

1.判断整数x是否为质数,若为质数返回true,若不是则返回false。2.求三个数中的最大值

3.求素数,当x为素数,则返回1(真),否则返回0(假)。

4.返回a、b、c三个数中的最大数。

四、阅读下列程序,在处填入适当内容,使程序完整(10分,每个空1分)

1、(1) f1+f2 (2) i%5==0 (3) f

2、(1) n<=99 (2) i<=temp (3) break

3、(1) b<=0 (2) r (3)a=b (4) b=r

五、写出下列程序的运行结果(30分,每小题5分)

1.运行结果:8,6,3

4,8,5

2.good!pass!bad!well!

3.8 240 3.2

4.s=55

5.25 20

6.运行结果:

1

1 2

1 2 3

c语言期末测试题附答案

c语言期末测试题附答 案 集团标准化工作小组 #Q8QGGQT-GX8G08Q8-GNQGJ8-MHHGN#

课程代码:A100002 座位号: 《计算机技术基础(C 语言)》试卷A 姓名: 学号: 专业: 学院: 班级: 20 年 月 日 第一 部分 选择题(共 30 分) 一、单项选择题(本大题共 15 小题,每题只有一个正确答 案,答对一题得 2 分,共 30 分) 1、以下关于C 语言标识符的描述中,正确的是 【 】。 A )标 识符可以由汉字组成 B )标识符只能以字母开头 C )关键字可以作为用户标识符 D )Area 与area 是不同的标识符 2、使下列程序段输出“123,456,78”,键盘输入数据,正确的输入是【 】。 int i,j,k; scanf(“%d,%3d%d”,&i,&j,&k); printf(“%d,%d,%d \n”,i,j,k); 3、判断char 类型的变量c1是否为数字字符的正确表达式为 【 】。 A) (c1>=0)&&(c1<=9) B) (c1>=’0’)&&(c1<=’9’) C) ’0’<=c1<=’9’ D) (c1>=’0’)||(c1<=’9’) 4、若有语句int a=1,b=2,c=3;则以下值为0的表达式是 【 】。 A )’a’&&’b’ B )a<=b C )((a>b)||(b0;i--);后,变量i 的值为 【 】。 A )10 B )9 C )0 D )1 8、若有int *p1, *p2,k; 不正确的语句是 【 】 A. p1=&k B. p2=p1 C. *p1=k+12 D. k=p1+p2 9、在函数中未指定存储类别的局部变量,其隐含的存储类别是 【 】

C语言期末双面试卷B (1)

三亚学院 2012/2013 学年春季学期 《C语言与程序设计》期末考试B卷 适用对象:12级信息管理与信息系统专业 答题时间:120 分钟考试形式:闭卷 (共40分,每题2分) 1.一个C语言程序是由( C )组成的。 A主程序 B 子程序 C 函数 D 过程 2.执行下面语句的结果为( C )。 y=10;x=y++; A x=10,y=10 B x=11,y=11 C x=10,y=11 D x=11,y=10 3.下列程序的输出结果是( A )。 #include void main() {int x=2,y=3; printf("x=%d,y=%d",x,y); } A.x=2,y=3 B.x=%2,y=%3 C.x=%%d,y=%%d D.x=%d,y=%d 4.不是C语言中基本数据类型为(C)。 A.整型B.实型 C.集合型D.字符型 5.表示关系12<=x<=y的C语言表达式为:( A ) A.(x>=12)&(x<=y) B.(x>=12)&&(x<=y) C.(12<=x)|(x<=y)D.(12<=x)||(x<=y) 6.若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式是( B )。A.a<>0 B.!a C.a=0 D.a 7.配合switch语句使用,作用是控制结束某个case分支的执行的语句是( A )。 A.break B.if C.end D.exit 8.执行语句:for(i=1;i++<4;);后,变量i的值是(B)。 A.3 B.4 C.5 D.不定 9.如下程序段执行后输出(B )。 #include void main() { int num=0; while(num<=2) { num++; printf("%d ",num); } } A.1 2 3 4 B.1 2 3 C.1 2 D.1 10.设x=1,y=2,m=4,n=3,则表达式x>y?x:m

C语言期末试卷题及答案

一、选择题(共20分,每小题2分) 1. 在C语言类型说明中,int, char, short等类型数据的长度是( D )。 A. 固定的 B. 由用户自己定义的 C. 任意的 D. 与机器字的长度有关 2. 若已正确说明为int类型,要给abc输入数据,则正确的输入语句是( 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); 3. C语言中对嵌套if语句的规定是:else总是与( D )配对。 A. 其之前最近的if B. 第一个if C. 缩进位置相同的if D. 其之前最近且不带else的if 4. 以下语句中,( C )是不可能做到提前退出循环语句的。 A. goto B. break C. continue D. return 5. 假设有两个字符数组a、b,则以下正确的输入语句是( B )。 A. gets(a, b) B. scan f(“%s %s”,a,b) C. scanf(“%s%s”, D. gets(“a”); gets(“b”) 6. 以下正确的描述是( B )。在C语言程序中, A. 函数的定义可以嵌套,但函数的调用不可以嵌套 B. 函数的定义不可以嵌套,但函数的调用可以嵌套 C. 函数的定义和含糊的调用均可以嵌套 7. 在宏定义#define PI 3.1415926中,用宏名PI代替一个( D )。 A. 单精度数 B. 双精度数 C. 常量 D. 字符串 8. 以下选项中,对指针变量p不正确的操作是( C )。 A. int a[6], *p; p = &a; B. int a[6], *p; p = a; C. int a[6]; int *p = a = 1000; D. int a[6]; int *p1, *p2 = a; *p1 = *p2; 9. 设有以下说明,已知int类型占2个字节,则下列叙述正确的是( D )。 struct st { int a; int b[2]; } a; A. 结构体变量名a和结构体成员a同名,不合法 B. 程序运行时将为结构体st分配6个字节的内存单元 C. 程序运行时不为结构体st分配内存单元 D. 程序运行时将为结构体变量a分配6个字节的内存单元 10. 当文件顺利关闭时,fclose()的返回值是( C )。 A.-1 B. EOF C. 0 D. 1 二、填空题(共20分,每小题2分) 1. C程序中定义的一个变量,代表内存中的一个存储单元。 2. …\72?在内存中占一个字节,”\72”在内存中占二个字节。 3. 结构化程序设计的3种基本结构是顺序结构、选择结构、循环结构。 4. 下列for循环执行 4 次。For (x =0 , y = 0; y != 99 && x < 4; x++) ;

C语言期末考试试卷附参考答案

一、单项选择题(请将答案填在下面表格中20×1) 1. 以下叙述中正确的是()。 A. C语言比其他语言高级 B. C语言可以不用编译就能被计算机识别执行 C. C语言以接近英语国家的自然语言和数学语言作为语言的表达形式 D. C语言出现的最晚,具有其他语言的一切优点 2. 以下叙述中正确的是()。 A.构成C程序的基本单位是函数 B.可在一个函数中定义另一个函数 C. main函数必须放在其他函数之前 D.所有被调用的函数一定要在调用之前进行定义3. 以下叙述中正确的是()。 A. C语言程序总是从第一个函数开始执行 B.在C语言程序中,要调用函数必须在main()函数中定义 C. C语言程序总是从main()函数开始执行 D. C语言程序中的main()函数必须放在程序的开始部分 4. 以下有关for循环的正确描述是()。 A. for循环只能用于循环次数已经确定的情况 B. for循环是先执行循环体语句,后判断表达式 C.在for循环中,不能用break语句跳出循环体 D. for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来 5. 对下面程序段的描述,正确的是()。 x=-1; do {x=x*x;}while(!x); A.是死循环 B. 循环执行一次 C. 循环执行两次 D. 有语法错误 6. 以下有关C语言数组说法正确的是()。 A.数组元素的数据类型可以不一致 B.数组元素的个数可以不确定,允许随机变动 C.可以使用动态内存分配技术,定义元素个数可变的数组 D.定义一个数组后,就确定了它所容纳的具有相同数据类型元素的个数 7.以下数组定义正确的是()。 A. int a(20); B. int a[ ]={1,2,5,7,0}; C. int a[n]; D. int a[2]={1,2,4,6}; 8.在定义int b[2][10];之后,对b数组元素引用正确的是( )。 A. b[0][9] B. b[2,3] C. b(1)(5) D. b[10] [0] 9. 如有定义语句int c[ ]={1,5,3,4,6,7,0};,则数组c有()个元素。 A.0 B.不定 C. 6 D. 7 10.以下叙述中不正确的是( )。 A.字符数组中可以存放字符串 B.可以对字符型数组进行整体输入、输出 C.可以对整型数组进行整体输入、输出 D.不能通过“=”对字符型数组进行整体赋值 11.已知char d[ ]={”543210”};,则数组d的长度是( )。 A.5 B.6 C. 7 D. 8 12.已知char s3[ ]=”China”;,则下列程序段的输出结果是()。 printf(“%d”,sizeof(s3)); A.5 B. 6 C. 7 D.8 13.已知char s1[10],s2[ ]={”China”};则在程序中能将字符串” China”赋给数组s1的是()。 A.s1={“China”}; B.strcpy(s1,s2); C. s1=s2; D. strcpy(s2,s1);

c语言期末试卷

《C语言程序设计A》试卷(B卷) 班级学号姓名 一、选择题:(每题1分,共计20分) 1、C语言规定:在一个源程序中,main函数的位置( C)。 A)必须在最开始 B)必须在系统调用的库函数的后面 C)可以任意 D)必须在最后 2、设a为5,执行下列语句后,b的值不为2的是(C)。 A)b=a/2 B)b=6-(--a) C)b=a%2D)b=a>32:1 3、若a=-14,b=3,则条件表达式a

哈尔滨工业大学C语言期末试卷(2007秋季笔试B卷)

哈尔滨工业大学C语言期末试卷(2007秋季笔试B卷) 一、单项选择题:(10分,每题2分) 1.在下面的语句中:只有一个在功能上与其他三个语句不等价(其中s1和s2表示某个C语句),这个不等价的语句是。 A)if (a) s1; else s2; B)if (!a) s2; else s1; C)if (a!=0) s1; else s2; D)if (a==0) s1; else s2; 2.以下正确的描述是。 A) 对共用体初始化时,只能对第一个成员进行初始化,每一瞬时起作用的成员是最后一次为其赋值的成员 B) 结构体可以比较,但不能将结构体类型作为函数返回值类型 C) 函数定义可以嵌套 D) 关键字typedef用于定义一种新的数据类型 3.下列的定义中,正确使用字符串初始化的是。 A)char str[7] = "FORTRAN"; B)char str[] = {F,O,R,T,R,A,N,0}; C)char *str = "FORTRAN"; D)char str[] = {'F','O','R','T','R','A','N'}; 4.要使下面程序的输出语句在屏幕上显示 1,2,34 则从键盘上输入的正确数据格式为:。

main() { char a,b; int c; scanf("%c%c%d", &a,&b,&c); printf("%c,%c,%d\n",a,b,c); } A)1 2 34 B)1,2,34 C)'1''2'34 D)12 34 5.若有二维数组定义语句:int a[3][4]; 则下面对元素a[i][j]不正确的引用方式是:。 A) *(&a[i][j]) B) *(a+4*i+j) C) *(a[i]+j) D) *(*(a+i)+j) 二、写出下列程序的运行结果。(10分,每题2分) 1. #include main() { int k=4, n=0; for (;n

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

绝密★启用前 学院 学年第二学期期末考试 级 专业(专科)《C 语言程序设计》试卷B 一、单项选择题(本大题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 1.C 语言程序从( )开始执行。 A)程序中第一条可执行语句 B) 程序中第一个函数 C)程序中的main 函数 D) 包含文件中的第一个函数 2.若int x=2,y=3,z=4 则表达式x0)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语言期末测试题(附答案)

课程代码:A100002座位号: 《计算机技术基础(C语言)》试卷A 姓名: 学号: 专业: 学院: 班级: 20 年月日 第一部分 选择题(共 30 分) 一、单项选择题(本大题共 15 小题,每题只有一个正确答案,答对一题得 2 分,共 30 分) 1、以下关于C语言标识符的描述中,正确的是【】。 A)标识符可以由汉字组成B)标识符只能以字母开头 C)关键字可以作为用户标识符D)Area与area是不同的标识符 2、使下列程序段输出“123,456,78”,键盘输入数据,正确的输入是【】。 int i,j,k; scanf(“%d,%3d%d”,&i,&j,&k); printf(“%d,%d,%d\n”,i,j,k); A)12345678 B)123,456,78 C)123,45678 D)123,*45678 3、判断char类型的变量c1是否为数字字符的正确表达式为【】。 A) (c1>=0)&&(c1<=9) B) (c1>=’0’)&&(c1<=’9’) C) ’0’<=c1<=’9’ D) (c1>=’0’)||(c1<=’9’) 4、若有语句int a=1,b=2,c=3;则以下值为0的表达式是【】。 A)’a’&&’b’ B)a<=b C)((a>b)||(b

A. *(a[0]+2) B. a[1][3] C . a[1][0] D. *(*(a+1)+2) 6、在循环语句的循环体中执行break语句,其作用是【】。A)跳出该循环体,提前结束循环 B)继续执行break语句之后的循环体各语句 C)结束本次循环,进行下次循环 D)终止程序运行 7、执行语句for(i=10;i>0;i--);后,变量i的值为【】。A)10 B)9 C)0 D)1 8、若有int *p1, *p2,k; 不正确的语句是【】 A. p1=&k B. p2=p1 C. *p1=k+12 D. k=p1+p2 9、在函数中未指定存储类别的局部变量,其隐含的存储类别是【】 A. 静态(static) B. 外部(extern) C. 自动(auto)D. 寄存器(register) 10、如下程序的输出结果是【】 main( ) { int x=2,a=0,b=0; switch(x) { case 2: a++; b++; case 1: ++a; b--; break; case 0: b++;} printf("a=%d, b=%d\n", a, b);} A. a=2, b=0 B. a=2, b=1 C. a=1, b=1 D. a=1, b=0 11、表示关系a main() {int x; scanf(“%d”,&x); if(x<=3) ; else if(x !=10)printf(“%d\n”,x); } 程序运行时,输入的值在哪个范围才会有输出结果。【】

c语言期末测试题(附答案)

** 课程代码:A100002座位号: 《计算机技术基础(C语言)》试卷A 姓名: 学号: 专业: 学院: 班级: 20 年月日 第一部分选择题(共 30 分) 一、单项选择题(本大题共 15 小题,每题只有一个 正确答案,答对一题得 2 分,共 30 分) 1、以下关于C语言标识符的描述中,正确的是【】。A)标识符可以由汉字组成B)标识符只能以字母开头 C)关键字可以作为用户标识符D)Area与area是不同的标识符2、使下列程序段输出“123,456,78”,键盘输入数据,正确的输入是【】。 int i,j,k; scanf(“%d,%3d%d”,&i,&j,&k); printf(“%d,%d,%d\n”,i,j,k); A)12345678 B)123,456,78 C)123,45678 D)123,*45678 3、判断char类型的变量c1是否为数字字符的正确表达式为【】。 A) (c1>=0)&&(c1<=9) B) (c1>=’0’)&&(c1<=’9’) C) ’0’<=c1<=’9’ D) (c1>=’0’)||(c1<=’9’) 4、若有语句int a=1,b=2,c=3;则以下值为0的表达式是【】。A)’a’&&’b’ B)a<=b C)((a>b)||(b

【】 A. *(a[0]+2) B. a[1][3] C . a[1][0] D. *(*(a+1)+2) 6、在循环语句的循环体中执行break语句,其作用是【】。A)跳出该循环体,提前结束循环 B)继续执行break语句之后的循环体各语句 C)结束本次循环,进行下次循环 D)终止程序运行 7、执行语句for(i=10;i>0;i--);后,变量i的值为【】。A)10 B)9 C)0 D)1 8、若有int *p1, *p2,k; 不正确的语句是【】 A. p1=&k B. p2=p1 C. *p1=k+12 D. k=p1+p2 9、在函数中未指定存储类别的局部变量,其隐含的存储类别是【】 A. 静态(static) B. 外部(extern) C. 自动(auto)D. 寄存器(register) 10、如下程序的输出结果是【】 main( ) { int x=2,a=0,b=0; switch(x) { case 2: a++; b++; case 1: ++a; b--; break; case 0: b++;} printf("a=%d, b=%d\n", a, b);} A. a=2, b=0 B. a=2, b=1 C. a=1, b=1 D. a=1, b=0 11、表示关系a main() {int x; scanf(“%d”,&x); if(x<=3) ; else if(x !=10)printf(“%d\n”,x); } 计算机技术基础试题第2页(共11页)

C语言期末试卷5

200 -200 年C程序设计期末考试试卷E-A (本试卷共9 页,命题日期:2002年6月20日) 一、选择填空(每空2分) 1.已定义int a; 则表达式 a=10, a+10, a++的值是【1】。 A) 20 B) 10 C) 21 D) 11 2.定义 int a;后,语句 printf("%d\n",(a=3*5,a*4,a+5));的输出是【2】。 A) 65 B) 20 C) 15 D) 10 3.int x=43, y=0; char ch=‘A’;则表达式(x>=y&&ch<‘B’&&!y)的值是【3】。 A) 0 B) 语法错 C) 1 D) "假" 4.若已定义: int x=5.5,y; 则表达式y=2.75+x/2的值是【4】。 A) 5.5 B) 5 C) 4 D) 4.0 5.若给定条件表达式(S)? (a++) : (a--), 则与表达式S等价的是【5】。 A) 和(S==0)等价 B) 和(S==1)等价 C) 和(S!=0)等价 D) 和(S!=1)等价 6.为整型变量, 不能正确表达数学关系1010&&a<15 D)!(a<=10) && !(a>=15) 7.设 int i=2;则表达式 (i++)==2 ? i:i-1的值为【7】。 A) 1 B) 2 C) 0 D) 3 8.以下四条语句中,有语法错误的是【8】。 A) if(a>b) m=a; B) if(a=0) m=a; D) if((a=b;)>=0) m=a; 9.运行下面程序段的输出结果是【9】。 static int a=4,b=5,t; if (a>b) t=a; a=b; b=t; printf("%d,%d\n",a,b);

C语言期末考试试卷及答案

C语言期末考试试卷(A) 一、单项选择题(本大题共20题,每题2 分,共40分) 1、以下不是C语言的特点的是( A ) A、 C语言简洁、紧凑 B、能够编制出功能复杂的程序 C、 C语言可以直接对硬件进行操作 D、 C语言移植性好 2、以下不正确的C语言标识符是( D ) A、 ABC B、 abc C、 a_bc D、 ab.c 3、一个C语言程序是由( B ) A、一个主程序和若干子程序组成 B、函数组成 C、若干过程组成 D、若干子程序组成 4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是( A ) A、有零个或多个输入 B、有零个或多个输出 C、有穷性 D、可行性

5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( C ) A、 int B、 float C、 double D、不确定 6、在C语言中,char型数据在内存中的存储形式是( C ) A、补码 B、反码 C、源码 D、ASCII码 7、有如下程序,输入数据:12345M678<cR>后(表示回车),x的值 是( ) 。 #include main(){ int x; float y; scanf("%3d%f",&x,&y); } A、 12345 B、 123 C、 45 D、 345 8、若有以下定义int a,b; float x,则正确的赋值语句是( ) A、 a=1,b=2 B、 b++; C、 a=b=5 D、 b=int(x); 9、以下程序的执行结果是( ) #include { int i=10,j=10; printf("%d,%d\n",++i,j--); }

c语言程序设计期末试题B(含答案)

c语言程序设计期末试题B(含答案) 一单项选择题(每小题1分,共10分) 1.以下4组用户定义标识符中,全部合法的一组是() A)_total clu_1 sum B)if -max turb C)txt REAL 3COM D)int k_2 _001 2.以下程序的输出结果是() #include main( ) { int a = 1, b = 2, c = 3; printf(“%d”, c>b>a); } A) 2 B) 1 C) 0 D) 3 3.以下正确的叙述是() A) 在C语言中,main函数必须位于文件的开头 B) C语言每行中只能写一条语句 C) C语言本身没有输入、输出语句 D) 对一个C语言进行编译预处理时,可检查宏定义的语法错误 4.设有定义:int a,*pa=&a; 以下scanf语句中能正确为变量a读入数据的是() A)scanf("%d",pa); B)scanf("%d",a); C)scanf("%d",&pa); D)scanf("%d",*pa); 5.若有以下程序段, int c1=1,c2=2,c3; c3=1.0/c2*c1; 则执行后,c3中的值是() A) 0 B) 0.5 C) 1 D) 2 6.能正确表示逻辑关系:“a≥=10或a≤0”的C语言表达式是() A) a>=10 or a<=0 B)a>=0|a<=10 C)a>=10 &&a<=0 D)a>=10‖a<=0 7.执行下面的程序时,将1、2、3、4分别赋给a、b、c、d,正确的输入是() main( ) { int a,b,c,d; scanf(“%d,%d,%d%d”,&a,&b,&c,&d); … } A)1 2 3 4 B)1 2 3,4 C) 1,2,3,4 D) 1,2,3 4 8.有以下程序段 main( ) { int k=0;

C语言程序设计基础》期末考试试卷‘B’及答案

一、单项选择题 1. 在C语言中,下面字符串能用作变量名的是( )。 A、a+b B、auto C、2-and D、a2 2. 若double x=2,y;则执行y=x+3/2;后,y的值是( )。 A、3.500000 B. 3.000000 C. 2.000000 D. 3 3. 下列关于C语言中字符常量与字符串常量的叙述中,错误的是 ( )。 A、字符常量是用单撇号括起来的一个字符 B、空格字符也可用作字符常量 C、字符串常量是用单撇号括起来的一个字符序列 D、字符串常量是用双撇号括起来的一个字符序列 4. 若有以下变量说明和数据的输入方式,则正确的输入语句为 ( )。 变量说明:float x1,x2; 数据的输入方式:4.52<回车> 3.5<回车> A、scanf(“%f,%f”,&x1,&x2); B、scanf(“%f%f”,&x1,&x2); C、scanf(“%3.2f,%2.1f”,&x1,&x2); D、scanf(“%3.2f%2.1f”,&x1,&x2); 6. 在一个源文件中定义的全局变量的作用域为()。 A. 本文件的全部范围 B. 从定义该变量开始至本文件结束 C. 本函数的全部范围 D. 本程序的全部范围 7.当调用函数时,实参是一个数组名,则向函数传送的是( )。 A、数组的长度 B、数组的首地址 C、数组每一个元素的地址 D、数组每个元素中的值 8.若j为整型变量,则下面while循环( )。 j=10; while(j!=0) j=j-1; A、执行0次 B、执行1次 C、执行10次 D、执行无限次

9. 在while(x)语句中的x与下面条件表达式等价的 是:( )。 A、x!=0 B、x==1 C、x!=1 D、x==0 10. 以下对C语言函数的描述中,正确的是( )。 A、调用函数时,参数可以是表达式 B、函数的定义可以是嵌套 C、函数必须有返回值 D、所有函数必须在同一个程序文件中定义 12. C语言中函数返回值的类型由( )决定的。 A、return语句中的表达式类型 B、调用该函数的主调函数的类型 C、调用函数时临时决定 D、定义函数时所指定的函数类型 13. 以下定义语句中,错误的是( )。 A、int a[ ]={1,2}; B、int a[ ][3]={1,2,3,4,5}; C、char s[10]=“test”; D、int n=5,a[n]; 14. 若变量c为char类型,能正确判断出c为大写字母的表达式是 ( )。 A、'A'<=c<= 'Z' B、(c>= 'A')||(c<= 'Z') C、(c>= 'A')&&(c<= 'Z') D、('A'<=c)and ('Z'>=c) 二、填空题(每空2分,共20分) 16.以下if语句执行后,a、b、c中的值分别为________。 int a=1,b=2,c=3; if(a>c) b=a; a=c; c=b; 17.若程序中用到strlen()函数,就在程序开头写上包含命令#include________。 18. 设有以下变量定义,并已赋确定的值

C语言期末考试试卷

2009─2010学年 第 二 学期 《C 语言程序设计》课程考试试卷( A 卷) 专业: 年级:2006级 考试方式:闭卷 学分:4.5考试时间:120分钟 (请.考生..将答案写在试卷后面的答题纸上..............,.考试结束....时.监考人员要.....将试卷与答题纸.......分开收齐.... 。) 一、选择题 (每小题2分,共20分) 1.C 语言中下列运算符的操作数必须是int 型的运算符是 。 A)% B)/ C) -- D)++ 2.若变量a,i 已正确定义,且i 已正确赋值,以下选项中合法的赋值语句是 。 A)a==1 B) ++i; C) a=a++=5; D) a=i ÷3; 3.已知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); 4.能正确表示逻辑关系:“a ≥10或a ≤0”的C 语言表达式是 。 A) a>=10 or a<=0 B) a>=0|a<=10 C) a>=10 && a<=0 D) a>=10‖a<=0 5.以下叙述正确的是 。 A)do-while 语句构成的循环不能用其他语句构成的循环来代替 B)do-while 语句中构成的循环只能用goto 语句或break 语句退出 C)用 do-while 语句构成的循环,在while 后的表达式为非零时结束循环 D) 用do-while 语句构成的循环,在while 后的表达式为零时结束循环 6.设有:int a[10],i=5;以下对数组元素的引用不正常的是 。

大学C语言期末考试试题与答案

大学 C 语言期末考试试题 一选择题( 7 分,每小题0.5 分) 1.C 语言源程序的基本单位是()。 A过程B函数C子程序 2.下列程序的输出结果是()。 D 标识符 main( ) { int a=7,b=5; printf("%d\n",b=b/a); } A 5 B 1 C 0 D 不确定值 3.假设变量 a,b 均为整型,表达式(a=5,b=2,a>b?a++:b++,a+b) 的值是()。 A 7 B 8 C 9 D 2 4.设 a 为 int 型变量,执行下列赋值语句后, a 的取值分别是()。 a=125.534;a=(int)125.521%4;a=5<<2; A 125,31,1 B 125,1,20 C 125,31,20 D 125.534,2,20 5.设有如下程序段,下面描述中正确的是()。 int k=10; while(k=0)k=k-1; A 循环执行一次 B 循环是无限循环 C 循环体语句一次也不执行 D 循环体语句执行一次 6.以下程序的输出结果为()。 int i; void prt( ) { for(i=5;i<8;i++)printf("%c",'*'); printf("\t"); } main( ) { for(i=5;i<=8;i++) } A *** B *** prt( ); ********* C ******D*** 7.在 C 语言程序中,以下说法正确的是()。 A 函数的定义可以嵌套,但函数的调用不可以嵌套 B 函数的定义不可以嵌套,但函数的调用可以嵌套C函数的定义和函数的调用都不可以嵌套 D函数的定义和函数的调用都可以嵌套 8.以下函数调用语句中含有()个实参。 func((e1,e2),(e3,e4,e5)); A 2 B 3 C 5 D 语法错误 9.以下程序的输出结果为()。 #define ADD(x)x*x main( ) { int a=4,b=6,c=7,d=ADD(a+b)*c; printf("d=%d",d); }

C语言期末考试试题及详细答案

选择练习题 1、C 语言中最简单的数据类型包括( B )。 A 、整型,实型,逻辑型 B 、整型,实型,字符型 C 、整型,字符型,逻辑型 D 、整型,实型,逻辑型,字符型 2、C 语言中,运算对象必须是整型数的运算符是(A )。 A 、% B 、/ C 、%和/ D 、* 3、为表示关系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) 4、C 语言程序的基本单位是( C )。 A 、程序行 B 、语句 C 、函数 D 、字符 5、C 语言的程序一行写不下时,可以( D )。 A 、用逗号换行 B 、用分号换行 C 、用回车符换行 D 、在任意一空格处换行 6、下述标识符中,( C )是合法的用户标识符。 A 、A&B B 、void C 、_student D 、 7、在C 语言中,字符型数据在内存中以( B A 、补码 B 、ASCII 码 C 、反码 D 、原码 8、一个程序由若干文件组成,共用同一变量,则此变量的存储类别应该为( B )。 A 、auto B 、extern C 、static D 、Register 9、以下关于switch 语句和break 语句的描述中,只有(B A 、在switch 语句中必须使用break 语句 B 、在switch 语句中,可以根据需要使用或不使用break 语句 C 、break 语句只能用于switch 语句中 D 、break 语句是switch 语句的一部分 10、C 语言规定:调用一个函数时,实参变量和形参变量之间的数据传递是(B )。 A 、地址传递 B 、值传递 C 、由实参传给形参,并由形参传回给实参 D 、由用户指定传递方式 11、下述C 语言转义符中( D )是非法的。 A 、'\b' B 、'\037' C 、'\0xf ' D 、'\'' 12、为了要计算s=10!(10的阶乘),则以下对s 的定义正确的是( D )。

C语言程序设计期末考试试卷B卷

C语言程序设计期末考 试试卷B卷 Company number【1089WT-1898YT-1W8CB-9UUT-92108】

广州轻工职业学校(大 2015-2016学年第二学期《C 语言程序设计》期末考试试卷(B 卷) 注意事项 1、请首先按要求在试 卷的标封处填写您的专业、姓名、学号和所在的班级名称; 2、请仔细阅读各种题 目的回答要求,在规定的位置填写您的答案; 3、不要在试卷上乱写 乱画,不要在标封区填写无关内容。 4、请将答案填写到答 题卡的相应位置。 使用对象:15计算机设计班 考试时间:120分钟考试方式:考(一)客观题部分 一、单项选择题(每小题1分,共 计40分): 1.C 语言中运算对象必须是 整型的运算符是 A )%= B )/ C )= D )<= 2.若变量已正确定义并赋 值,以下符合C 语言语法的表达式是 A )a:=b+1 B )a=b=c+2 C )int18.5%3 D )a=a+7=c+b 3.若变量a,i 已正确定义, 且i 已正确赋值,合法的语句是 A )a==1 B )++i ; C )a=a++=5; D )a=int (i ); 4.若有定义: inta=7;floatx=2.5,y=4.7;则表达

式x+a%3*(int)(x+y)%2/4的值 是 A)2.500000B)2.750000 C)3.500000D)0.000000 5.以下不正确的叙述是 A)在C程序中,逗号运算符的优先级最低 B)在C程序中,APH 和aph是两个不同的变量 C)若a和b类型相 同,在计算了赋值表达式a=b后 b中的值将放入a中,而b中的 值不变 D)当从键盘输入数据时,对于整型变量只能输入整型 数值,对于实型变量只能输入实 型数值 f 6.已知inti,a;执行语句i= (a=3,a++,--a,a+4,a+5,++a); 后,变量i的值为 A)2B)3 C)4D)5 7.设变量a是int型,f是float型,i是double型,则表达式10+′a′+i*f值的数据类型为 A)intB)floatC)doubleD)不确定 8.在C语言中,char型数据在内存中的存储形式是 A)补码B)反码C)原码D)ASCII码 9.字符型数据在机器中是用ASCII码表示的,字符’5’ 和’7’在机器中表示为 A)和01110111 B)01000101和 01100011 C)00110101和 00110111 D)01100101和 01100111

相关主题
相关文档
最新文档