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

上传人:b****3 文档编号:718755 上传时间:2022-10-12 格式:DOCX 页数:50 大小:38.48KB
下载 相关 举报
C语言期末考试试题及详细答案.docx_第1页
第1页 / 共50页
C语言期末考试试题及详细答案.docx_第2页
第2页 / 共50页
C语言期末考试试题及详细答案.docx_第3页
第3页 / 共50页
C语言期末考试试题及详细答案.docx_第4页
第4页 / 共50页
C语言期末考试试题及详细答案.docx_第5页
第5页 / 共50页
点击查看更多>>
下载资源
资源描述

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

《C语言期末考试试题及详细答案.docx》由会员分享,可在线阅读,更多相关《C语言期末考试试题及详细答案.docx(50页珍藏版)》请在冰豆网上搜索。

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

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&BB、voidC、_studentD、ab*

标识符由字母,数字和下划线组成

且第一个字符必须为字母或下划线

7、在 C 语言中,字符型数据在内存中以( B )形式存放。

A、补码B、ASCII 码C、反码D、原码

8、一个程序由若干文件组成,共用同一变量,则此变量的存储类别应该为( B)。

 

A、autoB、externC、staticD、Register

auto 自动变量

9、以下关于 switch 语句和 break 语句的描述中,只有(B )是正确的。

 register 寄存器变量

A、在 switch 语句中必须使用 break 语句

B、在 switch 语句中,可以根据需要使用或不使用 break 语句

extern 外部变量

static 静态变量

C、break 语句只能用于 switch 语句中

D、break 语句是 switch 语句的一部分

10、C 语言规定:

调用一个函数时,实参变量和形参变量之间的数据传递是(B)。

 

A、地址传递B、值传递

C、由实参传给形参,并由形参传回给实参D、由用户指定传递方式

11、下述 C 语言转义符中( D)是非法的。

1

A、'\b'B、'\037'C、'\0xf 'D、'\''

12、为了要计算 s=10!

(10 的阶乘),则以下对 s 的定义正确的是(D )。

A、int sB、unsigned sC、short sD、long s

13、判断变量 ch 中的字符是否为大写字母,最简单的正确表达式是( A)。

A、ch>='A'&&ch<='z'B、A<=ch<=Z

C、'A'<=ch<='z'D、ch>=A&&ch<=z

14、在 C 语言中,能表示无符号长整型常数的是(D)。

A、OLB、4962710UC、912374uD、2UL

15、能正确表示 C 语言的字符常量的是( C )。

A、'\0x41'B、''A''C、'\0'D、''\0''

16、C 语言中逻辑表达式的值为( A)。

A、0 或 1B、非零值或零值C、true 或 falseD、'true'或'false'

17、C 语言提供的基本数据类型关键字是( C )。

A、integerB、FLOATC、unsignedD、Double

18、若定义语句:

int b[ ]={1,2,3,4,5},*P=b;则表达式*p++的值是( A )。

A、1B、2C、b[0]的地址D、b[1]的地址

19、在下列选项中,不正确的表达式是( C)。

A、a>bB、c--, ++b, a+=1C、a=c+b>n-m=kD、p++

20、若有以下定义:

int a[ ]={1,2,3,4,5,6,7};

char cl='b',c2='2';

则数值不为 2 的表达式是( D)。

A、a[1]B、'd'-clC、a['3'-c2]D、c2-0

25、下述对 C 语言字符数组的描述中错误的是( C)。

A、字符数组可以存放字符串

B、字符数组中的字符串可以整体输入、输出

C、可以在赋值语句中通过赋值运算符"="对字符数组整体赋值

D、不可以用关系运算符对字符组中的字符串进行比较

27、以下程序的输出结果是( A)。

main( )

{int i=010, j=10, k=ox10;

2

 

printf(''%d,%d,%d\n'',i,j,k);

A、8,10,16B、8,10,10C、10,10,10D、10,10,16

28、以下程序的输出结果是( B)。

#include<stdio.h>

main( )

{printf(''%d\n'',NULL);}

A、不确定的值(因变量无定义)B、0C、-1D、1

29、以下程序的输出结果是( B)。

main( )

{char c1='6',c2='0';

printf(''%d,%d,%d\n'',c1,c2,c1-c2);

A、因输出格式不合法,输出出错信息B、54,48,6

C、6.0,7D、6,0,6

32、下述对 C 语言字符数组的描述中错误的是( C)。

A、字符数组可以存放字符串

B、字符数组中的字符串可以整体输入、输出

C、可以在赋值语句中通过赋值运算符''=''对字符数组整体赋值

D、不可以用关系运算符对字符组中的字符串进行比较

33、Turbo C 中,对于以下程序( A)。

main( )

{int x,y;

y=creat(&x);

printf(''%d \n'', y);

creat(int a)

{return a++;}

A、编译时会给出错信息

B、顺利进行编译、连接、执行;不报任何错误

C、顺利通过编译、连接、但不能执行

D、顺利通过编译,但连接出错

3

 

34、设有如下定义:

int x=10, y=4,z;

则语句:

printf(''%d\n'', z=(x%y, x/y));

的输出结果是( C)。

A、1B、0C、2D、3

35、下述程序段的输出结果是( D)。

main( )

{int x=10, y=10;

printf(''%d, %d\n'', x++, ++y);

A、10,10B、11,11C、11,10D、10,11

36、定义如下变量和数组:

int j;

int x[3][3]={1,2,3,4,5,6,7,8,9};

则下面语句的输出结果是( C)。

for(i=0;i<3;i++﹚

printf(''%d'', x[i][2-i]);

A、159B、147C、357D、369

37、若要求在 if 后一对圆括号中表示 a 不等于 0 的关系,则不能正确表示这一关系的

表达式为(  C )。

A、a<>0B、!

aC、a=0D、a

38、若 m,y,z 均为 int 型变量,则执行下面语句后 m 值是(A )。

m=1;x=2;y=3;z=4;

m=(m<x)?

m:

x;

m=(m<y)?

m:

y;

m=(m<z) ?

m:

z;

A、1B、2C、3D、4

39、若有定义:

int a=7;float x=2.5,y=4.7,则表达式 x+a%3*(int)(x+y)%2/4 的

值是( A)。

A、2.500000B、2.750000C、3.500000D、0.000000

4

 

40、如下说法不正确的是( C)。

A、c>a+b 等效于 c>(a+b)

B、若 a,b 均为真,则 a||b 为真

C、表达式'c'&&'d'的值为 0

D、逻辑运算符!

比逻辑运算符||的优先级高

41、putchar()函数可以向终端输出一个( B)。

A、整型变量表达式值B、字符

C、字符串D、实型变量值

42、表达式 18/4*sqrt(4.0)/8 值的数据类型为( C )。

A、intB、floatC、doubleD、不确定

43、若已定义 a 为整型变量:

a=-2L;

printf(''%d\n'',a);

则以上语句( B)。

A、赋值不合法B、输出值为-2C、输出为不确定值D、输出值为 2

45、若 int 类型数据占两个字节,则以下语句的输出为( D)。

int k= -1;

printf(''%d,%u\n'',k,k);

A、-1,-1B、-1,32767C、-1,32768D、-1,65535

46、已知字母 a 的 ASCII 码十进制值为 97,则执行以下语句后的输出为( C)。

yhg

char a='a';

a--;

printf(''%d,%c\n'',a+'2'-'0',a+'3'-'0');

A、b,cB、a—运算不合法,故有语法错

C、98,cD、格式描述和输出项不匹配,输出无定值

47、下面语句中( B )是 C 语言的正确赋值语句。

A、a=1,b=2B、I++;C、a=b=5D、y=int(x);

48、设有以下说明语句

struct stu

{int a;

A 中声明变量并初始化时:

int a=1,b=5;但是,只

赋值时是不能这样写的,应该写成 a=1;b=2;C

无分号,不是完整的语句,D 中 x 没有定义,

如果是  int x=3;int y; y=int(x);这样是对的

5

float b;

}stutype;

则下面的叙述不正确的是( C )。

A、struct 是结构体类型的关键字B、struct stu 是用户定义的结构体类型

C、stutype 是用户定义的结构体类型名D、a 和 b 都是结构体成员名

49、能正确表示:

当 x 的取值范围在[1,10]或[100,110]内为真,否则为假的表达式是

( C)。

A、(x>=1)&&(x<=10)&&(x>=100)&&(x<=110)

B、(x>=1)||(x<=10)||(x>=100)||(x<=110)

C、(x>=1)&&(x<=10)||(x>=100)&&(x<=110)

D、(x>=1)||(x<=10)&&(x>=100)&&(x<=110)

50、设 n 为整型变量,则循环语句 for(n=10;n>0;n--)的循环次数为( A )。

A、10B、9C、11D、12

51、在对文件进行操作时,若要求文件的位置指针回到文件的开头,则应当调用的库

函数是(  D )。

A、fopen()B、fseek()C、fclose()D、rewind()

52、下列哪个数组定义是正确的( D )。

A、int a[5.5];B、INT a[10];C、int a[n];D、int a[3+2];

53、一个变量的指针就是( A)。

A、变量的地址B、变量的值C、变量的名称D、变量的类型

55、下列正确的说法是(C)。

A、宏替换是在程序运行时进行的

B、函数调用是在程序编译时进行的

C、宏替换时,如果实参是表达式,应先求表达式的值,再替换

D、函数调用时,如果实参是表达式,应先求表达式的值,再替换

56、对于数学式 x /2a,下面正确的 C 语言表达式是( D)。

A、sqr(x)/2aB、sqr(x)/2*aC、sqrt(x)/(2*a)D、sqrt(x)/2*a

57、若 int 类型数据占 2 字节,则以下语句的输出为( D)。

int k=32768;

printf(''%d,%u\n'',k,k);

A、-1,65535B、-1,32767C、-1,-

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 预防医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1