c语言选择填空

更新时间:2023-11-24 06:12:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

答案:D 答案B

答案:C

答案B

答案:C

答案C

答案B

答案A

答案B

答案D

答案D

答案:D

1

答案A

答案D

答案A

答案B

若K为int型变量且赋值11,请写出运算k++后表达式的值( )和变量的值( )。 答案 : 11 12

答案D

答案D

答案B

答案A

2

j=a++;k=b;

printf(\}

第二套

D 1有以下程序段 int n=0,p; do {

scanf(\ n++;

}while(p!=12345&&n<3);

此处do-while循环的结束条件是__D____。

A、i=1,j=1,k=2 B、i=2,j=1,k=3 C、i=1,j=1,k=3 D、i=4,j=2,k=4

A 7C语言中的简单数据类型有

A、整型、实型、字符型 B、整型、字符型、逻辑型 C、整型、实型、逻辑型

D、整型、实型、逻辑型、字符型 C 8C语言结构体类型变量在程序执行期间()。

A、部分成员驻留在内存中 B、只有一个成员驻留在内存中 C、所有成员一直驻留在内存中 D、没有成员驻留在内存中 A 9以下叙述中正确的是

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

B、C语言的函数不可以单独进行编译 C、C语言的源程序不必通过编译就可以直接运行

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

A 10执行下列语句后变量x和y的值是()。

y=10;x=y++;

A、p的值等于12345并且n的值大于等于3 B、p的值不等于12345并且n的值小于3 C、p的值不等于12345或者n的值小于3 D、p的值等于12345或者n的值大于等于3

D 2.C语言中的标识符只能由字母,数字和下划线三种字符组成, 且第一个字符(D )。

A、必须为下划线

B、可以是字母,数字和下划线中任一字符 C、必须为字母

D、必须为字母或下划线 A 3以下叙述中正确的是 A、C程序由函数组成。 B、C程序由函数和过程组成。 C、C程序由主函数组成。

D、在C程序中,无论是整数还是实数,只要在允许的范围内都能准确无误的表示。 A 4设有 int x=11; 则表达式 (x++ * 1/3) 的值

是()。

A、x=10,y=11 B、x=11,y=10 C、x=11,y=11 D、x=10,y=10

A 11以下标识符中,不能作为合法的C用户定义标

识符的是()。

A、3 B、4 C、12 D、11

B 5C语言源程序名的后缀是 A、cp B、c C、obj D、exe

C 6以下程序的输出结果是()。

main()

{int i,j,k,a=3,b=2; i=(--a==b++)?--a:++b;

A、signed B、_if C、to D、answer

C 12以下数据中,不正确的数值或字符常量是()。

A、10 B、0xff00 C、8.9e1.2 D、82.5

C 13下列运算符中是C语言关系运算符的是()。

A、&

3

B、~ C、!= D、!

D 14C语言中,char类型数据占()。

A、2个字节 B、8个字节 C、4个字节 D、1个字节

D 15以下标识符中,不能作为合法的C用户定义标

识符的是()。

C、i=1;do{i++;}while(i<=10); D、i=1;m:if(i<=10){i++;goto m;}

A、_double B、INT C、_123 D、putchar

D 16下面有关 for 循环的正确描述是()。

A、for 循环是先执行循环循环体语句,后判断表达式

B、在 for 循环中,不能用 break 语句跳出循环体

C、for 循环只能用于循环次数已经确定的情况

D、for 循环的循环体语句中,可以包含多条语句,但必须用花括号括起来

D 17C语言规定,在一个源程序中,main函数的位

置()。

1以下程序的输出结果是_____。

unsigned fun6(unsigned num) { unsigned k = 1;

do

{ k *= num % 10; num /= 10; } while( num); return k;

}

main()

【空 1】【参考答案】 12

2在C语言程序中,用关键字_____定义基本整型变量,用关键字_____定义单精度实型变量,用关键字_____定义双精度实型变量。

【空 1】【参考答案】 int

【空 2】 【参考答案】 float

【空 3】 【参考答案】 double

3以下程序段的输出结果是_____、_____、

A、必须在最开始

B、必须在系统调用的库函数的后面 C、必须在最后 D、可以任意

B 18以下叙述不正确的是()。 A、C程序的基本组成单位是函数

B、在C程序中,注释说明只能位于一条语句的后面

C、一个C源程序必须包含一个main函数 D、一个C源程序可由一个或多个函数组成 B 19C语言中要求对变量作强制定义的主要理由

是()。

_____、_____

double a = 513.789215;

printf(“a = %8.6f, a = %8.2f, a = .8f, a = .8lf\\n”, a, a, a, a);

【空 1】【参考答案】 a = 513.789215 【空 2】【参考答案】 a = 513.79

【空 3】 【参考答案】 a = 513.78921500 【空 4】【参考答案】 a = 513.78921500

4以下程序的运行结果是 _____。

A、便于编辑预处理程序的处理 B、便于确定类型和分配空间 C、便于移植 D、便于写文件

A 20以下语句中,循环次数不为10次的语句是()。

A、for(i=1;i<10;i++); B、i=10;while(i>0){--i;}

#include

typedef struct student { char name[10]; long sno; float score;

4

}STU; main()

{ STU a = {“Zhangsan”, 2001,95}, b = {“Shangxian”, 2002,90},

c = {“Anhua”, 2003, 95}, d = a, *p = &d;

if(strcmp(a.name, b.name) > 0) d = b;

if(strcmp(c.name, b.name) > 0) d = c;

printf(“%ld %s\\n”, d.sno, p ->name);

}

【空 1】 【参考答案】 30x

【空 1】 【参考答案】 a/c/b a/(b*c) a/b/c

【空 2】【参考答案】 a/c/b a/b/c a/(b*c)

【空 3】 【参考答案】 a/b/c a/c/b a/(b*c)

5阅读下面程序,程序执行后的输出结果是_____。

#include \main() {

int x,y,z;

x = 1; y = 2; z = 3; if(x>y)

if(x>z)printf(\); else printf(\); printf(\\n\); }

【空 1】 【参考答案】 3

9根据C语言运算符的优先顺序和结合性,按从先到后的顺序写出以下表达式中,运算符 “+”、“>”、“*”、“&&”、“!=”、“||”、“!”和“/”的先后顺序: _____、_____、_____、_____、_____、_____、_____、_____

*

(a+b)>c2&&b!=5||!(1/2)

【空 1】 【参考答案】 +

【空 2】 【参考答案】 *

【空 3】 【参考答案】 >

【空 4】【参考答案】 !=

【空 5】【参考答案】 &&

【空 6】 【参考答案】 /

【空 7】【参考答案】 !

【空 8】 【参考答案】 ||

10将下列数学式改写成C语言的关系表达式

6由\和\括起来的内容称为_____,它

的作用是_____。

【空 1】【参考答案】 注释

【空 2】 【参考答案】 提高程序的可读性

7若有定义:int a=8,b=5,c 执行语句c=a/b+0.4后,c的值为_____

【空 1】【参考答案】 1

或逻辑表达式是 A)_____B)_____。 A)a=b或a4

【空 1】 【参考答案】 a==b || a

【空 2】【参考答案】 abs(x)>4 x<-4 || x>4

8对以下数学式,写出三个等价的C语言表达式是_____、_____、_____

ab?c

5

/*----------------------------------------- A、include B、sizeof C、sqrt D、scanf

C 8在一个C程序中()。

第三套

D 1下面四个选项中,均是不合法的用户标识符的选项是()。

A、_123 temp int B、A P_0 do C、float la0 _A D、b-a goto int

C 2相同结构体类型的变量之间,可以()。

A、main函数必须出现在固定位置 B、main函数必须出现在所有函数之前 C、main函数可以在任何地方出现 D、main函数必须出现在所有函数之后

C 9以下程序段的输出结果是

A、比较大小 B、地址相同 C、赋值 D、相加

A 3下列运算符中优先级别最高的是

A、! B、% C、-= D、&&

D 4C语言中的标识符只能由字母,数字和下划线三种字符组成,

且第一个字符()。

main()

{ char x = ?A?; x = (x>=?A? x<=?Z?)?(x+32):x;

printf(“%c\\n”, x); }

&&

A、A B、Z C、a D、z

A 10以下叙述中正确的是()。

A、必须为下划线

B、可以是字母,数字和下划线中任一字符

C、必须为字母

D、必须为字母或下划线

B 5以下叙述不正确的是()。

A、构成C程序的基本单位是函数 B、所有被调用的函数一定要在调用之前进行定义

C、可以在一个函数中定义另一个函数 D、main()函数必须放在其它函数之前

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

A、C程序的基本组成单位是函数 B、在C程序中,注释说明只能位于一条语句的后面

C、一个C源程序必须包含一个main函数 D、一个C源程序可由一个或多个函数组成

C 6下列程序的输出为()。

main() { int y=10; while(y--);

printf(\ }

A、字符串

B、字符或字符型变量值 C、实型变量值 D、整型变量表达式值

B 12执行下列程序后,其输出结果是()。

main() {int a=9; a+=a-=a+a; printf(\}

A、18 B、-18 C、-9 D、9

A 13以下程序的执行结果是_______. main()

A、while构成无限循环 B、y=0 C、y=-1 D、y=1

B 7下列字符序列中,是C语言保留字的是()。

6

{ int num = 0;

while( num <= 2 ) { num++; printf( \

printf(“%d, %u\\n”, a, a);

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

D、-1,65535

D 19假定所有变量均已正确定义,下列程序段运行后x的值是()。

k1=1; k2=2; k3=3; x=15;

if(!k1) x--; else if(k2) x=4; else x=3;

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

D 14以下程序的输出结果是

main()

{ int x = 10, y = 3;

printf(“%d\\n” , y = x / y); }

A、不确定的值 B、0 C、1 D、3

D 15C语言规定,在一个源程序中,main函数的位置()。

A、15 B、14 C、3 D、4

C 20C语言中,逻辑\真\等价于

A、必须在最开始

B、必须在系统调用的库函数的后面 C、必须在最后 D、可以任意

D 16不合法的八进制数是

A、非零的整数 B、大于零的整数 C、非零的数 D、大于零的数

A、01 B、0 C、07700 D、028

C 17若有宏定义如下:

1组成C程序的基本单位是 _____,其组成部分包括_____和_____。

【空 1】【参考答案】 函数

【空 2】【参考答案】 #define MOD(x,y) x%y

函数首部 则执行以下程序段的输出为

int z, a = 15, b = 100;

z = MOD(b, a);

printf(“%d\\n”, z++);

【空 3】【参考答案】 函数体

2以下程序的输出结果是_____ 。

A、11 B、6 C、10 D、5

D 18若int类型占两个字节,则以下程序段

的输出是

int a=-1;

7

#include “string.h” #include “ctype.h” void fun(char str[]) { int i, j;

for(i = 0, j = 0; str[i]; i++) if(isalpha(str[i]) )

str[j ++] = str[i];

str[j] = ?\\0?; }

main()

{ char ss[80] = “it is!”; fun(ss);

printf(“%s\\n”, ss); }

【空 1】 【参考答案】 itis

3有以下宏定义和赋值语句,宏置换后的赋

{ double a = 2.5, b = 9.0;

printf(“%f\\n”, sub(b - a, a, b));

}

【空 1】 【参考答案】 15.500000

7当计算机用两个字节存放一个整数时,其

值语句的形式是_____。

#define A 3+5 … … p = A * A;

【空 1】 【参考答案】 p = 3+5*3+5 p = 3+5*3+5;

4为了建立如图所示的存储结构,请填空。

中能存放的最大十进制整数是_____、最小十进制整数是_____,它们的二进制形式是_____。

【空 1】【参考答案】 65535

【空 2】 【参考答案】 -32768

【空 3】 【参考答案】

1111 1111 1111 1111,1000 0000 0000 0000 8以下程序的输出结果是_____。

struct slink { char data; _____; } node;

main()

{ int x=100, a=10, b=20, ok1=5,

ok2=0;

if(a

x=1;

else if(ok2)x=10; else x=-1;

printf(\\n\); }

【空 1】 【参考答案】 -1

9若有定义:int a=8,b=5,c 执行语

struct node *link

【空 1】【参考答案】

5若有以下说明和输入语句,要求给c1、c2、c3输入字符A、B和C,请写出从键盘正确输入数据的形式是_____。

char c1, c2, c3;

句c=a/b+0.4后,c的值为_____

【空 1】【参考答案】 1

10表达式s = 10应当读做“_____”。 【空 1】 【参考答案】

scanf(“L”, &c1);

scanf(“L”, &c2); scanf(“L”, &c3);

【空 1】【参考答案】 AAAABBBBCCCC AAAABBBBCCCC↙

6以下程序的输出结果是_____。

8

double sub(double x, double y, double z)

{ y -= 1.0;

z = z + x; return z;

}

main()

第四套

D1 以下描述中正确的是()。

A 7有以下程序

A、do-while 循环中,根据情况可以省略 while

B、由于 do-while 循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句

C、do-while 循环由do开始,用while结束,在 while(表达式)后面不能写分号

D、在 do-while 循环体中,一定要有能使 while 后面表达式的值变为零(\假\的操作

A 2定义共用体的关键字是

main()

{

int i=1,j=1,k=2; if((j++||k++)&&i++)

printf(\\

n\);

}

执行后输出结果是

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

A 8求平方根函数的函数名为()。

A、union B、typedef C、enum D、struct

A 3 以下叙述中正确的是()。

A、sqrt B、cos C、pow D、abs

B 9若已定义x和y为double类型,则表达式x=1,y=x+3/2 的值是()。

A、宏替换不占用运行时间,只占编译时间 B、在以下定义中 C R 是称为\宏名\的标识符 #define C R 045

C、在程序的一行上可以出现多个有效的预处理命令行

D、使用带参的宏时,参数的类型应与宏定义时的一致

C 4以下叙述正确的是:

A、1 B、2.0 C、2.5 D、2

C 10在一个C程序中()。

A、用do-while构成循环时,只有在while后的表达式为非零时结束循环

B、do-while语句构成的循环不能用其它语句构成的循环来代替。

C、用do-while构成循环时,只有在while后的表达式为零时结束循环

D、do-while语句构成的循环只能用break语句退出。

C 5下列变量中合法的是

A、main函数必须出现在固定位置 B、main函数必须出现在所有函数之前 C、main函数可以在任何地方出现 D、main函数必须出现在所有函数之后

B 11以下程序段的输出是

float a=3.1415;

printf(“|%6.0f|\\n”, a);

A、|3.1415| B、| 3| C、| 3.0| D、| 3.|

D 12不合法的十六进制数是

A、B.C.Tom B、3a6b C、_6a7b D、$ABC

A 6以下运算符中,优先级最高的运算符是()。

A、0Xabc B、0x19 C、0x11 D、oxff

B 13设变量a是整型,f是实型,i是双精度型,

A、++ B、, C、?: D、&&

9

则表达式10+'a'+i*f值的

数据类型为()。

是()。

A、k=n,n=n+1 B、n=n+1,k=n C、k+=n+1 D、k=++n

1通常一个字节包含_____个二进制位。在

A、不确定 B、double C、int D、float

C 14下列程序的输出结果是()。

main()

{char c1=97,c2=98; printf(\}

一个字节中能存放的最大十进制整数是_____,

它的二进制数的形式是_____;最小十进制整数是_____,它的二进制形式是_____。

【空 1】 【参考答案】 8

【空 2】 【参考答案】 255

【空 3】【参考答案】 1111 1111

【空 4】 【参考答案】 -128

【空 5】【参考答案】 1000 0000

2以下main函数的功能是查找带有头结点的

A、a 98 B、a b C、97 b D、97 98

D 15以下标识符中,不能作为合法的C用户定义标识符的是()。

A、WORD B、Printf C、For D、sizeof

B 16C语言源程序文件经过C编译程序编译连接之后生成一个后缀为()的可执行文件

A、.obj B、.exe C、.c D、.bas

C 17下列程序段的输出结果为()。

float x=213.82631; printf(\

A、3.8 B、213.82 C、213 D、213.83

D 18下列正确的标识符是

A、%y B、a+b C、6a D、_do

D 19C语言的注释定界符是()。

单向链表中,结点数据域的

最小值作为函数值返回。请填空。

struct node { int data;

struct node *next; }

int main(struct node *first) { struct node *p; int m;

p = first ->next; m = p ->data;

for(p =p ->next; p != ?\\0?; p

=_____ ) if( _____ ) m = p -> data; return m; }

【空 1】【参考答案】 2002

【空 2】 【参考答案】 Shangxian

3以下程序的执行结果是_____。

A、\\* *\\ B、{ } C、[ ] D、/* */

A 20以下选项中,与k=n++完全等价的表达式

#define = %d\\t”,V)

PRINT(V) printf(“V

10

*(s+j)

【空 2】【参考答案】 i+1

【空 3】 【参考答案】 i

10以下程序的执行结果是_____。

#define DOUBLE(r) r*r main() {

int y1 = 1, y2 = 1, t; t = DOUBLE(y1 + y2); printf(“%d\\n”, t); }

【空 1】【参考答案】 3

第八套

C 设有语句char a= ?\\172?;,则变量a

A、说明不合法 B、包含2个字符 C、包含1个字符 D、包含3个字符 B 2 main()

{int x=1,a=0,b=0; switch (x) { case 0: b++; case 1: a++;

case 2: a++;b++;} printf(\

}该程序的输出结果是( )

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

C 3以下程序的输出结果是

main()

{ char c1 = ?A?, c2 = ?Y?; printf(“%d,%d\\n”, c1, c2); }

A、65,90 B、A,Y C、65,89

D、因输出格式不合法,无正确输出 A 4以下叙述中正确的是

A、在赋值表达式中,赋值号右边既可以是变量也可以是任意表达式

B、a是实型变量,C允许以下赋值a=10,因此可以这样说实型变量中允许存放整型值。

C、执行表达式a=b后,在内存中a和b存储单元中的原有值都将被改变,a的值已由原值改变为b的值,b的值由原值变为0 D、已有a=3, b=5。当执行了表达式a=b,b=a之后,已使a中的值为5,b中的值为3 D 5若有以下程序段:int a=3,b=4;

a=a^b;b=b^a;a=a^b;则执行以上

语句后,a和b的值分别是()。

A、a=4,b=4 B、a=3,b=3

21

C、a=3,b=4 D、a=4,b=3

d 6结构化程序设计所规定的三种基本控制结构

是()。

D、<=

B 12下面不正确的字符串常量是()。

A、\B、'abc' C、\D、\

C 13以下对宏替换的叙述不正确的是

A、宏名无类型,其参数也无类型 B、宏替换只是字符的替换

C、带参的宏替换在替换时,先求出实参表达式的值,然后代入形参运算求值

D、宏替换不占运行时间

B 14a,b为整型变量,二者均不为0,以下关

系表达式中恒成立的是()。

A、树形、网形、环形 B、输入、处理、输出 C、主程序、子程序、函数 D、顺序、选择、循环

A 7在C语言中,int、char和short三种类型数

据在内存中所占用的字节数()。

A、由所用机器的机器字长决定 B、由用用户自己定义 C、均为2个字节 D、是任意的

D 8以下程序中的for循环执行的次数是

A、a*b/a*b==1 B、a/b*b+a%b==a C、a/b*b==a D、a/b*b/a==1

C 15下列程序的输出为()。

M ain() { int y=10; while(y--); printf(\ }

#define N 2 #define M N + 1

#define NUM (M + 1) * M / 2 main()

{ int i;

for(i = 1; i <= NUM; i++); pritnf(“%d\\n”, i ); }

A、9 B、5 C、6 D、8

A 9以下for循环的执行次数是

for(x=0,y=0;(y=123)&&(x<4);x++);()。

A、while构成无限循环 B、y=0 C、y=-1 D、y=1

B 16C语言中,double类型数据占()。

A、4个字节 B、8个字节 C、1个字节 D、2个字节

B 17以下叙述正确的是()。

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

B、C语言本身没有输入输出语句 C、在C程序中,main函数必须位于程序的最前面

D、C程序的每行中只能写一条语句

C 18在C语言中,能代表逻辑值“真”的是()。

A、大于0的数 B、True C、非0的数

A、4次 B、是无限循环 C、3次

D、循环次数不定

C 10一个C语言程序是由()。

A、一个主程序和若干子程序组成 B、若干子程序组成 C、函数组成 D、若干过程组成

C 11下列运算符中优先j级别最低的运算

符是

A、+ B、!= C、||

22

D、非0整数

D 19有以下程序

nmain()

{ int i = 10, j = 1;

printf(\

}

执行后输出结果是

s??k?0k!

}

【空 1】【参考答案】 <= y

【空 2】 【参考答案】 z * x

5若k为int型变量且赋值11,请写出运算k++

A、10,1 B、9,2 C、9,1 D、10,2

D 20设 int x=1, y=1; 表达式(!x||y--)的值是

()。

后表达式的值_____和变量的值_____。

【空 1】 【参考答案】 11

【空 2】 【参考答案】 12

6以下程序段的输出结果是_____。

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

1计算机中内存储器的最小单位称为

_____ ,其中能容纳的数是_____个

【空 1】 【参考答案】 位

【空 2】 【参考答案】 0和1

int *var, ab;

ab = 100; var = &ab; ab = *var + 10;

printf(“%d\\n”, *var);

【空 1】 【参考答案】 110

7阅读下列程序,则程序的输出结果为

_____。

#include \struct ty { int data; char c; };

main()

{ struct ty a={30,′x′}; fun(a); printf(\); }

fun(struct ty b) {b.data=20; b.c=′y′; }

【空 1】 【参考答案】 B 65

8以下程序的输出结果是_____。

2有以下宏定义和赋值语句,宏置换后的赋

值语句的形式是_____。

#define A 3+5 … … p = A * A;

【空 1】【参考答案】 p = 3+5*3+5 p = 3+5*3+5;

3若变量x、y已定义为int类型且x的值

为99,y的值为9,请将输出语句printf(_____ ,x/y);补充完整, 使其输出的计算结果形式为:x/y=11

空 1】 \

4以下函数用以求x的y次方。请填空。

【参考答案】

double fun( double ,x double y) { int i; double z=1.0;

for( i = 1; i_____ ; i++) z = _____ ; return z;

23

unsigned fun6(unsigned num) { unsigned k = 1;

do

{ k *= num % 10; num /= 10; } while( num); return k;

}

main()

{ unsigned n = 26; printf(“%d\\n”, fun6(n)); }

空 1】 12

9以下fun函数的功能是将一个字符串的内容

【参考答案】

第九套

D 1以下非法的赋值语句是

A、j++ B、x=j>0 C、n=(i=2,++i) D、++(i+1)

A 2有以下程序

逆置。请填空。

#include “string.h” void fun( char str[]) { int i, j, k;

for(i = 0, j =_____ ; i < j;

i++,_____ ) { k = str[i] ;

str[i] = str[j]; str[j] = k; }

}

空 1】【参考答案】 strlen(str) - 1 【空 2】 【参考答案】 j --

10表达式s = 10应当读做“_____”。 空 1】

【参考答案】

将10赋给变量s

main() {

int i=1,j=1,k=2; if((j++||k++)&&i++)

printf(\\

n\);

}

执行后输出结果是

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

A 3以下叙述中正确的是

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

B、C语言的函数不可以单独进行编译 C、C语言的源程序不必通过编译就可以直接运行

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

B 4下列语句的结果是()。

main() { int j; j=3;

printf(\printf(\}

24

A、3,4 B、4,4 C、4,3 D、3,3

C 5C语言中,字符(char)型数据在微

机内存中的存储形式是

A、反码 B、EBCDIC码 C、ASCII码

D、补码

B 6以下叙述不正确的是()。

C、非0的数 D、非0整数

C 13下列关于单目运算符++、--的叙述中正确的是______。

A、C程序的基本组成单位是函数 B、在C程序中,注释说明只能位于一条语句的后面

C、一个C源程序必须包含一个main函数 D、一个C源程序可由一个或多个函数组成

C 7设a、b和c都是int变量,且a=3,b=4,

A、它们的运算对象可以是int型变量,但不能是double型变量和float型变量

B、它们的运算对象可以是任何变量和常量 C、它们的运算对象可以是char型变量、intc=5;则以下的表达式中,值为0的表达式是

A、a||b+c&&b-c B、a<=b

C、!((a

B 8C语言源程序文件经过C编译程序编译连接之后生成一个后缀为()的可执行文件

A、.obj

B、.exe

C、.c

D、.bas

C 9假设C语言中,int类型数据占2个字节,则unsigned类型数据占()。

A、8个字节 B、1个字节 C、2个字节 D、4个字节

C 10设有语句char a= ?\\172?;,则变量a

A、说明不合法 B、包含2个字符 C、包含1个字符 D、包含3个字符

B 11若有以下程序段,其输出结果是

int a = 0, b = 0, c = 0;

c = ( a -= a - 5), (a = b, b+3); printf(\

A、0,0,-10 B、0,0,5 C、-10,3,-10 D、3,3,-10

C 12在C语言中,能代表逻辑值“真”的是()。A、大于0的数 B、True

型变量和float型变量

D、它们的运算对象可以是char型变量和int型变量,但不能是float型变量

B 14为了避免在嵌套的条件语句 if-else 中产生二义性,C语言规定:

else子句总是与()配对。

A、其之后最近的if B、其之前最近的if C、缩排位置相同的if D、同一行上的if

B 15以下标识符中,不能作为合法的C用户定义标识符的是()。

A、_123 B、void C、a3_b3 D、IF

B 16已知i、j、k为int型变量,若从键盘

输入:1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是

A、scanf(\B、scanf(\C、scanf(\D、scanf(\

B 17在C语言中,要求运算数必须是整型的运算符是()。

A、> B、% C、! D、^

C 18以下程序的输出结果是()。

main()

{int i,j,k,a=3,b=2; i=(--a==b++)?--a:++b; j=a++;k=b;

25

printf(\}

}

【空 1】 【参考答案】 12

3表达式(int)((double)(5/2)

A、i=1,j=1,k=2 B、i=2,j=1,k=3 C、i=1,j=1,k=3 D、i=4,j=2,k=4

B 19以下程序段的输出是

+2.5)的值是_____.

【空 1】 【参考答案】 4

4以下程序的执行结果是_____。

float a=3.1415;

printf(“|%6.0f|\\n”, a);

A、|3.1415| B、| 3| C、| 3.0| D、| 3.|

B 20C语言中用于结构化程序设计的三种基本结构是()。

A、for、while、do-while

B、顺序结构、选择结构、循环结构 C、if、switch、break D、if、for、continue

1若从键盘输入58,则以下程序输出的结果是

main() {

int a, b, *p = &a, *q = &b; a = 10; b = 20; *p = b; *q = a;

printf(“a = %d, b = %d\\n”,

a, b);

}

【空 1】【参考答案】 a = 20, b = 20

5以下程序的运行结果是 _____。

_____。

main() {

int a;

scanf\);

if(a>50)printf(\); if(a>40)printf(\); if(a>30)printf(\); }

【空 1】【参考答案】 585858

2以下程序的输出结果是_____。

unsigned fun6(unsigned num) { unsigned k = 1;

do

{ k *= num % 10; num /= 10; } while( num); return k;

}

main()

{ unsigned n = 26; printf(“%d\\n”, fun6(n));

26

#include

typedef struct student { char name[10]; long sno; float score; }STU; main()

{ STU a = {“Zhangsan”, 2001,95}, b = {“Shangxian”, 2002,90},

c = {“Anhua”, 2003, 95}, d = a, *p = &d;

if(strcmp(a.name, b.name) > 0) d = b;

if(strcmp(c.name, b.name) > 0) d = c;

printf(“%ld %s\\n”, d.sno, p ->name);

}

【空 1】【参考答案】 30x

6把a1、a2定义成单精度实型变量,并赋初

值1的说明语句是_____。

【空 1】 【参考答案】

float a1 = 1.0, a2 = 1.0;

7由\和\括起来的内容称为_____,它

第十套

C 1在一个C程序中()。

的作用是_____。

【空 1】【参考答案】 注释

【空 2】 【参考答案】 提高程序的可读性

8以下程序段的输出结果是_____。

A、main函数必须出现在固定位置 B、main函数必须出现在所有函数之前 C、main函数可以在任何地方出现 D、main函数必须出现在所有函数之后

B 2若已定义x和y为double类型,则表达式x=1,y=x+3/2 的值是()。

char s[20] = “gooddog!”, *sp = s; sp = sp +2; sp = “to”; puts(s);

【空 1】 【参考答案】 gooddog!

9C语言中用_____表示逻辑真,用_____表示

A、1 B、2.0 C、2.5 D、2

C 3下列字符序列中,不可用作C语言标识符的是()。

逻辑假。

【空 1】【参考答案】 非0 【空 2】 【参考答案】 0

10描述算法的常用方法有:_____。 【空 1】 【参考答案】

自然语言 流程图 N-S图 伪代码和计算机语言

A、symbol B、a_1 C、#ab D、b70

C 4以下数据中,不正确的数值或字符常量是()。

A、10 B、0xff00 C、8.9e1.2 D、82.5

A 5结构化程序由三种基本结构组成,三种基本结构组成的算法______。

27

A、可以完成任何复杂的任务 B、只能完成一些简单的任务 C、只能完成符合结构化的任务 D、只能完成部分复杂的任务

A 6以下运算符中,优先级最高的运算符是()。

A、(类型) B、+ C、*= D、>=

C 7以下不符合C语言语法的赋值语句是()。

A、k=2*4,k*4; B、j++; C、y=float(j); D、j=j=5;

D 8C 语言程序的三种基本结构是顺序结构、选择结构和______结构.

A、递归 B、转移

C、嵌套 D、循环

D 9执行语句 for(i=1;i++<4;); 后变量 i 的值是()。

D、无输出

A 15定义结构体的关键字是

A、struct B 、union C、enum D、typedef

C 16while(fabs(t)<1e-5)if(!s/10)break;循环结束的条件是()。

A、不定 B、3 C、4 D、5

A 10以下程序的执行结果是_______. main()

{ int num = 0;

while( num <= 2 ) { num++; printf( \

A、fabs(t)<1e-5&&!s/10 B、fabs(t)<1e-5

C、t>=1e-5&&t<=-1e-5&&s>-10&&s<10 D、s/10==0

B 17为表示关系 x≥y≥z,应使用的C语言表达式是______。

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

C 11以下不是死循环的语句是 。

A、(x>=y)& (y>=z) B、(x>=y)&&(y>=z) C、(x>=y>=z) D、(x>=y)AND(y>=z)

D 18下面有关 for 循环的正确描述是()。

A、for(i=10; ; i++ ) sum+=i; B、while (1){x++;}

C、for(; (c=getchar())!=?\\n?;) printf(“%c”, c);

D、for(;; x+= i);

C 12下列运算符中是C语言关系运算符的是()。

A、for 循环是先执行循环循环体语句,后判断表达式

B、在 for 循环中,不能用 break 语句跳出循环体

C、for 循环只能用于循环次数已经确定的情况

D、for 循环的循环体语句中,可以包含多条语句,但必须用花括号括起来

D 19假设C语言中,一个int型数据在内存中占2个字节,则unsigned int

型数据的取值范围为()。

A、& B、~ C、!= D、!

D 13C语言中运算对象必须是整型的运算符是()。

A、0--255 B、0--32767 C、0--2147483647 D、0--65535

B 20下面不正确的字符串常量是()。

A、= B、/ C、〈= D、%=

B 14下列程序段的输出结果是

A、\B、'abc' C、\D、\

1下面不正确的字符串常量是()。

int a=1234;

float b=123.456;

double c=12345.54321;

printf(\);

A、\

A、1234,123.4,1234.5 B、1234,123.5,12345.5 C、12,123.5,12345.5

B、'abc' C、\D、\

28

【参考答案】 B

2当a = 1、b = 2、c = 3时,以下if语句执行后,

a、b、c中的值分别为:_____、_____、_____ if(a > c)

b = a; a = c; c = b;

【空 1】 【参考答案】 3

【空 2】 【参考答案】 2

【空 3】 【参考答案】 2

3在算法正确的前提下,评价一个算法

{ int a = 3, b = 2, c = 1; c -= ++b; b *= a + c;

{ int b = 5, c = 12; c /= b * 2;

a -= c;

printf(“%d, %d, %d, ”, a, b,

c );

a += --c;

}

printf(“%d, %d, %d\\n”, a, b, c); }

【空 1】 【参考答案】 2,5,1,2,3,-2

8当计算机用两个字节存放一个整数时,其

的两个标准是_____

【空 1】 【参考答案】 时间复杂度和空间复杂度 空间复杂度和时间复杂度

4若表达式(a+b)>c2&&b!=5||!(1/2)

*

中能存放的最大十进制整数是_____、最小

十进制整数是_____,它们的二进制形式是_____。

【空 1】【参考答案】 65535

【空 2】 【参考答案】 -32768

【空 3】 【参考答案】

1111 1111 1111 1111,1000 0000 0000 0000 9以下程序的输出结果是_____ 。

中,a、b、c的定义和赋值为

Int a=3,b=4,c=2; 则表达式的值为_____。

【空 1】 【参考答案】 1

5将下列数学式改写成C语言的关系表达式或逻辑表达式是 A)_____B)_____。 A)a=b或a4

【空 1】【参考答案】 a==b || a

【空 2】 【参考答案】 abs(x)>4 x<-4 || x>4

6以下程序的输出结果是_____ 。

#define PR(ar) printf(“ar = %d

“, ar)

main()

{ int j, a[] = { 1, 3, 5, 7, 9, 11, 13,

15}, *p = a + 5;

for(j = 3; j ; j--) switch( j ) { case 1:

case 2: PR(*p++);

break;

case 3: PR(*(--p) ); } }

【空 1】 【参考答案】 ar = 9 ar = 9 ar = 11

10若有定义:int a=8,b=5,c 执行语

main()

{ char *p[] = {“BOOL”,

“OPK”, “H”, “SP”};

int i;

for(i = 3; i >= 0; i--, i--)

printf(“%c”, *p[i]); printf(“\\n”); }

【空 1】【参考答案】 SO

7以下程序的输出结果是_____。

句c=a/b+0.4后,c的值为_____

【空 1】 【参考答案】 1

main()

29

十一套

C 1 以下运算符中,优先级最高的运算符是()。

B、赋值运算符<逻辑运算符<关系运算

符<算术运算符

C、算术运算符<关系运算符<赋值运算

符<逻辑运算符

D、逻辑运算符<关系运算符<算术运算

符<赋值运算符

A、== B、|| C、! D、%

D 2 不合法的八进制数是

A、01 B、0 C、07700 D、028

D 6 执行语句 for(i=1;i++<4;); 后变量 i 的值

是()。

A、不定 B、3 C、4 D、5

D 7 结构化程序由三种基本结构组成, 由这C 3若有宏定义如下:

三种基本结构组成的算法 #define MOD(x,y) x%y

A、只能完成一些简单的任务 则执行以下程序段的输出为

B、只能完成部分复杂的任务 。

C、可以完成任何复杂的任务 int z, a = 15, b = 100;

D、只能完成符合结构化的任务 z = MOD(b, a);

printf(“%d\\n”, z++); B 8 以下选项中不正确的实型常量是

A、11 B、6 C、10 D、5

A、456e-2 B、0.05e+1.5 C、2.670E-1 D、-77.77

A 4 以下程序中,while循环的循环次数是

______

main() { int i=0; while(i<10) {

if(i<1) continue; if(i==5) break; i++; } }

D 9 能将高级语言编写的源程序转换为目标程序

的是()。

A、编辑程序 B、解释程序 C、链接程序 D、编译程序

D 10 enum a {sum=9,mon=-1,tue}; 定义了()。

A、枚举变量 B、整数9和-1 C、3个标识符 D、枚举数据类型

A 11 在C语言中,char型数据在内存中的存储形

式是()。

A、死循环,不能确定次数 B、6 C、4 D、1

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

B 5 以下关于运算符优先顺序的描述中正确的

是()。

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

A、字符串

B、字符或字符型变量值 C、实型变量值

A、关系运算符<算术运算符<赋值运算符<逻辑运算符

30

本文来源:https://www.bwwdw.com/article/cg9t.html

Top