admin 管理员组

文章数量: 1184232


2024年4月21日发(作者:帮助打开json的软件)

---------------------------------------------------------------------------------------------------------------

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

1. 以下叙述正确的是( )。

A) 在C程序中,main函数必须位于程序的最前面

B) C程序的每行中只能写一条语句

C) C语言本身没有输入输出语句

D) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误

2.一个C语言程序的基本单位是( )

A) 函数 B) 子程序 C) 过程 D) 命令

3.一个C语言的语句必须使用的结束符号是( )

A) , B) 。 C) : D) ;

4.下列选项中,可以作为C语言标识符的是( )

A) 3stu B) #stu C) stu3 D) stu.3

5.设有说明:char w; int x; float y; double z;则表达式w*x+z-y值的数据类型为( )

A) float B) char C) int D) double

6.下列叙述正确的是( )

A)赋值语句中的“=”是表示左边变量等于右边表达式

B)赋值语句中左边的变量值不一定等于右边表达式的值

C)赋值语句是由赋值表达式加上分号构成的

D)x+=y;不是赋值语句

7.若x为int型变量,则执行x=6; x+=x-=x*x; 语句后,x的值为( )

A) 36 B) -60 C) 60 D) -24

8.若有a=2,b=3,c=4,则表达式a= =3和a=3的值分别为( )

A) 0和0 B)1和3 C)3和3 D)0和3

9.使条件表达式(year%4==0&&year%100!=0)||(year%400==0)结果为假的值是( )

A) 1950 B) 2000 C) 1996 D) 2004

10. 若x、i、j、k都是int型变量,则计算下面表达式后,x的值为( )。

x=(i=4,j=16,k=32)

A) 4 B) 16 C) 32 D) 52

11. 逻辑运算符两侧运算对象的数据类型( )

A) 只能是0和1 B) 只能是0或非0正数

C) 只能是整型或字符型数据 D) 可以是任何类型的数据

12. 若希望当A的值为奇数时,表达式的值为“真”,A的值为偶数时,表达式的值为“假”。则以

下不能满足要求的表达式是( )

A) A%2==1 B) !(A%2==0) C) !(A%2) D) A%2

13.语句while(!E);中的表达式!E等价于( )。

A) E==0 B)E!=1 C)E!=0 D)E==1

14.下面程序段的运行结果是( )

a=1;b=2;c=2

while (a

printf(%d,%d,%d”,a,b,c);

A) 1,2,0 B) 2,1,0 C)1,2,1 D) 2,1,1

15.以下程序段( )

x=-1;

do{

第1页 共6页

x=x*x;

}

while(!x);

A)是死循环 B)循环执行二次

C)循环执行一次 D)有语法错误

16.以下正确的函数原形说明语句是( )

A) void fun (int x); B) float fun (void y);

C) double fun (x); D) int (char ch);

17.在C语言中,形参必须是( )

A) 常量 B) 变量 C.)数值 D)表达式

18.C语言的函数( )

A) 可以嵌套调用,不能递归调用 B) 可以嵌套定义

C) 既可以嵌套调用,也可以递归调用 D) 不可以嵌套调用

19.合法的数组定义是( )

A)int a[ ]=”string”; B)int a[5]={0,1,2,3,4,5};

C)char a=”string”; D)char a[ ]={0,1,2,3,4,5};

20.表达式strlen(“string”)+strlen(“C”)的运算结果为( )

A)9 B)10 C)7 D)8

21.若有定义和语句:char s[10]; s=“abcd”; printf(“%sn”,s); 则结果是( )(以下u代

表空格)

A)abcd B)a

C)abcd u u u u u D)编译不通过 正确形式char s[10] =“abcd”;

22.若已定义:int a[9],*p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式是( )

A)p+1 B)a+1 C)a++ D)++p

23.若有int x, *pb; 则正确的赋值表达式是

A)pb=&x B)pb=x; C)*pb=&x; D)*pb=*x

24.设有程序段:char s[ ]=”china”; char *p ; p=s ;则下面叙述正确的是( )

A)s和p完全相同 错,s是字符数组,p是指向字符串的指针

B)数组s中的内容和指针变量p中的内容相等 错, s内容与p指向的字符串内容相等才对

C)*p与s[0]相等

D)s数组长度和p所指向的字符串长度相等 错,字符串长度大于数组

25.下面对结构变量的叙述中错误的是( )

A)相同类型的结构变量间可以相互赋值

B)通过结构变量,可以任意引用它的成员

C)结构变量中某个成员与这个成员类型相同的简单变量间可相互赋值

D)结构变量与简单变量间可以赋值

26.若有结构类型定义如下:

struct bd

{

int x;

float y;

}r,*p=&r;

那么,对r中的成员x的正确引用是( )

A)(*p).r.x B)(*p).x C)p->r.x D)p.r.x

27.在一个函数里不能说明( )

第2页 共6页


本文标签: 变量 表达式 语句