C语言综合练习题

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

《C语言程序设计》综合练习题

一、单项选择题

1.下列( D )是字符串比较函数。

A. puts()

B.gets()

C. strcpy ()

D. strcmp()

2.构成一个完整的C源程序必须有且只有一个( C )。

A. 函数

B.过程

C. 主函数

D. 程序

3. 设有int i,j,k;则表达式i=1,j=2,k=3,i&&j&&k的值为( A )。

A. 1

B. 2

C. 63

D. 0

4.在C语言中,不同类型数据混合运算时,要先转化成同一类型后进行运算。设一表达式中包含有int、long、unsigned、char类型的变量和数据,则表达式最后的运算结果是(D)类型数据。

A.int B.char C.unsigned D.long 5.下列(D)不是构成标识符的字符。

A.字母

B.数字

C.下划线

D.标点符号

6.表达式:3>5&&-1||6<3-!-1的值是( A )。

A. 0

B.1

C. 表达是不合法

D. 均不对

7. 以下标识符中能做为合法的C用户标识符的是(D)。

A.A3+B3

B. float

C. 3dx

D. x3d

8. 以下数据中不正确的数值或字符常量是(B)。

A. 0.0

B. 3E2.7

C. 9861

D. 0xabcd

9. fp=fopen(''test.txt",''r''); 语句中,r对文件处理方式是(A)。

A. 只读打开文件

B. 只写打开文件

C. 追加打开文件

D. 读写打开文件

10.表示关系x<=y<=z的C语言表达式为(A)

A. (x<=y)&&(y<=z)

B. (x<=y)and(y<=z)

C. (x<=y)&(y<=z)

D. (x<=y<=z)

11.如果要把常量327存入变量a中,a不能定义的类型是(B)。

A. int

B. char

C. long

D. float

12. 在变量的存储结构中,( B )局部变量的初始化只有一次。

A. 自动

B. 静态

C.外部

D. 寄存器

13.下列能正确进行字符串赋值操作的语句是(C)。

A. char s[5]={ "ABCDE"};

B. char s[5]={ 'a', 'b', 'c', 'd', 'e'}

C. char *s;s="abcde";

D. char *s; scanf("%s",s);

14.语句if(3/4>1/2)a=1;else a=0; 运行后,a的值是(A)。

A. 1

B. 0

C.与机器有关

D.语法有错

15.下列( C )是合法自定义标识符。

A. 3ma

B. float

C. m3a

D.–ab

16.设a,b和c都是int型变量,且a=3,b=4,c=5,则下列表达式中,值为0的表达式是(D)

A. 'a' && 'b'

B. a<=b

C. c>=b||b+c&&b-c

D. a<=b+c&&c>=a+b

17.判断整型变量i,j可同时被2整除的表达式(i,j同时被2整除返回1,否则返回

0)是(B)。

A. !(i%2)||!(j%2)

B. !(i%2)&&!(j%2)

C. (i%2)&&!(j%2)

D. (i%2)||(j%2)

18.若x,y均为double型变量,正确的输入函数调用是(C)。

A. scanf("%f%f",&x,&y);

B. scanf("%d%d",&x,&y);

C. scanf("%lf%lf",&x,&y);

D. scanf("%lf%lf",x,y);

19. 设变量均为整型,表达式(a=2,b=5,a>b?a++:b++,a+b)的值是(B)。

A. 7

B. 8

C. 9

D. 2

20.当执行以下程序段时(A)。

x= -1;

Do {x=x*x;}while(!x);

A. 循环体将执行一次

B. 循环体将执行两次

C. 循环体将执行无限次

D. 系统将提示有语法错误

21.执行下列程序段后,a值为( A )。

a=1;b=0;

if((a++>++b)?a++;b--) a+=b;

A. 2

B. 3

C. 4

D. 5

22.若x为char型变量,y为int型变量,x,y均有值,正确的输出函数调用是(A)。

A. printf("%c%c",x,y);

B. printf("%c%s",x,y);

C. printf("%f%c",x,y);

D. printf("%f%d",x,y);

23.假定a和b为int型变量,则执行以下语句后b的值为(D)。

a=1;b=10

do

{b-=a;a++;

}while (b--<0);

A. 9

B. -2

C. -1

D. 8

24.设有说明语句:int x=43,y=0;char ch='A';,则表达式(x>=y && ch<'b' && !y)的值是( C )。

A. 0

B. 语法错

C. 1

D. 假

25.假定a和b为int型变量,则执行以下语句后b的值为(D)。

a=1;b=10;

do

{ b-=a;a++;

} while (b--<0);

A. 9

B. -2

C. -1

D. 8

26.下列不正确的转义字符是(C)。

A.'\\'

B.'\''

C.'074'

D.'\0'

27.已知字符'b'的ASCII码为98,语句printf(''%d,%c'','b','b'+1);的输出为(D)。

A. 98,b

B. 语句不合法

C. 98,99

D. 98,c

28.下列(B)说法,是对“int *p;”正确解释。

A.定义p是整型变量

B. 定义p为指向整型变量的指针变量

C. 定义p为数组名

D. 定义p的内容为整形地址

29.以下各组运算符中,优先级最高的运算符是( B )。

A. < =

B. /

C. ! =

D.& &

相关文档
最新文档