程序设计基础_第1页
程序设计基础_第2页
程序设计基础_第3页
程序设计基础_第4页
程序设计基础_第5页
已阅读5页,还剩117页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

程序设计基础(C语言)

C语言程序设计基础

1.1.1为什么要学习c语言

一、多选题供100.00分)

1.

为什么要学习C语言?它具有哪些特性?

A.功能强大

B.应用广泛

C.通用性好

D.晦涩难懂

E.富有挑战性

满分:100.00分

得分:0分

你的答案:

ABE

正确答案:

ABCE

教师评语:

1.1.2什么是程序设计语言_

一、单选题供100.00分)

以下关于程序设计语言的描述,错误的是:

A.程序设计语言是人与计算机沟通的桥梁。

B.程序设计语言是用于书写计算机程序的语言。

C.程序设计语言是一种自然语言.

D.程序设计语言有3个方面的因素:语法、语义和语用。

满分:50.00分

得分:50.00分

你的答案:

C

正确答案:

C

教师评语:

2.

在计算机内一切信息的存取、传输和处理都是以形式进行的。

A.ASCII码

B.二进制

C.十进制

D.国标码

满分:50.00分

得分:50.00分

你的答案:

B

正确答案:

B

教师评语:

1.1.3程序设计语言发展的三个阶段

一、单选题供100.00分)

1.

能够被计算机直接识别并执行的是程序。

A.自然语言

B.汇编语言

C.机器语言

D.高级语言

满分:50.00分

得分:50.00分

你的答案:

C

正确答案:

C

教师评语:

2.

C语言程序能够在不同的操作系统运行,这说明C语言具有很好的

A.适应性

B.移植性

C.兼容性

D.操作性

满分:50.00分

得分:50.00分

你的答案:

B

正确答案:

B

教师评语:

1.2.1C语言的发展史

一、多选题供100.00分)

1.

C语言具有哪些特点?

A.可移植性好

B.运算符与数据类型丰富

C.属于强类型语言

D.语法检查严格

E.简洁灵活

F.结构化

满分:100.00分

得分:100.00分

你的答案:

ABEF

正确答案:

ABEF

教师评语:

1.2.2C语言的应用以及其他语言

一、多选题(共100.00分)

1.

C语言具有哪些特点?

A.可移植性好

B.运算符与数据类型丰富

C.属于强类型语言

D.语法检查严格

E.简洁灵活

F.结构化

满分:100.00分

得分:100.00分

你的答案:

ABEF

正确答案:

ABEF

教师评语:

1.2.3C语言的应用以及其他语言的关系

一、多选题供100.00分)

1.

C语言的主要应用有哪些?

A.开发系统软件

B.开发大型应用软件

C.编写个人网页

D.编写硬件设备的驱动程序

E.开发游戏软件

F.编写通信程序

G.编写广告文案

满分:100.00分

得分:100.00分

你的答案:

ABDEF

正确答案:

ABDEF

教师评语:

1.3.1最简单的C语言程序

一、单选题供60.00分)

1.

C语言程序的语句都是以结尾。

A..

B.,

C.;

D.无符号

满分:30.00分

得分:30.00分

你的答案:

C

正确答案:

C

教师评语:

2.

C语言程序的执行,总是起始于。

A.程序中的第一条语句

B.main函数

C.本程序中的第一个函数

D.包含的文件中的第一个函数

满分:30.00分

得分:30.00分

你的答案:

B

正确答案:

B

教师评语:

二、填空题供40.00分)

1.

C语言程序的函数组成包括了两个部分,和,后者被包含在一个花括号里。

满分:40.00分

得分:0分

你的答案:

第1空:

声明部分

第2空:

执行部分

正确答案:

第1空:

函数首部

第2空:

函数体

教师评语:

1.3.2计算机输入的两个整数的和

一、单选题供50.00分)

1.

C语言程序注释语句的格式是:

A.以“/%”开始,“%/”结束

B.以“/*”开始,“*/”结束

C.以“/*”开始,“/*”结束

D.以“/**”开始,“**/”结束

满分:50.00分

得分:50.00分

你的答案:

B

正确答案:

B

教师评语:

二、填空题供50.00分)

1.

scanf是_______函数,prin廿是函数,它们俩都带有参数。

满分:50.00分

得分:50.00分

你的答案:

第1空:

输入

第2空:

输出

正确答案:

第1空:

输入

第2空:

输出

教师评语:

1.4.1编写C程序的步骤

一、单选题供100.00分)

1.

编写C++程序一般需要经过的几个步骤依次是

A.编译,编辑,链接,调试

B.编辑,编译,链接,调试

C.编译,调试,编辑,链接

D.编辑,调试,编译,链接

满分:50.00分

得分:50.00分

你的答案:

B

正确答案:

B

教师评语:

2.

C语言编译程序的首要工作是

A.检查C语言程序的语法错误

B.检查C语言程序的逻辑错误

C.检查程序的完整性

D.生成目标文件

满分:50.00分

得分:50.00分

你的答案:

A

正确答案:

A

教师评语:

1.5习题

一、单选题(共50.00分)

1.

C++语言程序的后缀为O

A..C

B..cpp

C..obj

D..exe

满分:25.00分

得分:25.00分

你的答案:

B

正确答案:

B

教师评语:

2.

十进制数35转换成二进制数是

A.100011

B.100010

C.100110

D.100101

满分:25.00分

得分:25.00分

你的答案:

A

正确答案:

A

教师评语:

二、填空题(共50.00分)

1.

存储器是计算机中具有记忆能力的部件,用来存放或

满分:25.00分

得分:25.00分

你的答案:

第1空:

程序

第2空:

数据

正确答案:

第1空:

程序

第2空:

数据

教师评语:

2.

()

voidmain()

(

inta,b,product;

scanf("%d%d",&a,&b);

product=a*b;

printf("Productis%d\n",product);

)

为了让上面的程序能顺利运行,必须在空白处填入语句:

满分:25.00分

得分:25.00分

你的答案:

第1空:

#include<stdio.h>

正确答案:

第1空:

#include<stdio.h>

教师评语:

基本数据类型、运算符与表达式

2.1.1计算机系统组成

一、填空题供100.00分)

1.

软件系统由和组成。

满分:50.00分

得分:50.00分

你的答案:

第1空:

系统软件

第2空:

应用软件

正确答案:

第1空:

系统软件

第2空:

应用软件

教师评语:

2.

存储器是计算机中具有记忆能力的部件,用来存放或、

满分:50.00分

得分:50.00分

你的答案:

第1空:

程序

第2空:

数据

正确答案:

第1空:

程序

第2空:

数据

教师评语:

2.1.2计算机中数的表示及进制转换

一、单选题供60.00分)

1.

在以下不同进制的4个数中,最小的一个数是:

A.(11000110)2

B.(307)8

C.(200)10

D.(B6)16

满分:30.00分

得分:30.00分

你的答案:

D

正确答案:

D

教师评语:

2.

己知8位机器码是10110100,若其为补码,则所表示的十进制真值是:

A.-76

B.-74

C.76

D.74

满分:30.00分

得分:30.00分

你的答案:

A

正确答案:

A

教师评语:

二、填空题供40.00分)

1.

内存是以为单位组成的,而一般是由个二进制组成。

满分:40.00分

得分:40.00分

你的答案:

第1空:

字节

第2空:

8

正确答案:

第T空:

字节

第2空:

8

教师评语:

2.3.2常量

一、单选题(共100.00分)

1.

将100声明为符号常量NUM的正确的预处理命令是

A.defineNUM100

B.defineNUM100;

C.#defineNUM100

D.#defineNUM100;

满分:50.00分

得分:0分

你的答案:

D

正确答案:

C

教师评语:

2.

下列常量中不是字符型常量的是

A.'\x44'

C.'W

D."m"

满分:50.00分

得分:50.00分

你的答案:

D

正确答案:

D

教师评语:

2.3.3变量

、单选题(共100.00分)

下列选项中合法的变量名为

A.#define

B.float

C.a123

D.sqrt(x)

满分:50.00分

得分:0分

你的答案:

A

正确答案:

C

教师评语:

2.

下列不正确的变量定义方法是

A.inta;b=a;

B.floata,b=12.34;

C.inta=1,b=a+1;

D.inta=5;

满分:50.00分

得分:50.00分

你的答案:

A

正确答案:

A

教师评语:

2.4.1整型数据

、单选题(共100.00分)

1.

下列哪些是合法的整型常量?

A.8A

B.069

C.ox2B

D.0033

满分:100.00分

得分:100.00分

你的答案:

D

正确答案:

D

教师评语:

2.4.5实型数据

、单选题(共100.00分)

1.

下列实型常量指数形式中,正确的是

A.-1.23E0

B.-1.23e5.5

C.E-8

D.1.23E(-5)

满分:100.00分

得分:100.00分

你的答案:

A

正确答案:

A

教师评语:

2.4.6字符数据和字符串常量

一、单选题供100.00分)

1.

下列选项中与其他3个不是表示同一个字符的是

A.'a'

B."a"

C.'\141'

D.'\x61'

满分:50.00分

得分:50.00分

你的答案:

B

正确答案:

B

教师评语:

2.

语句printf("a\bre\'hi\'y\Wbou\n");的输出结果是

A.a\bre\'hi\'y\\\bou

B.a\bre\'hi\'y\bou

C.re'hi'you

D.abre'hi'yXbou

满分:50.00分

得分:50.00分

你的答案:

C

正确答案:

C

教师评语:

2.5.1赋值运算符、赋值表达式

一、单选题供100.00分)

1.

下面程序的输出结果是:

#include<cstdio>

usingnamespacestd;

intmain()

(

inta=3;

printf(na=%d,",a);

a=a+1;

printf(,'a=%d,",a);

a*=2;

printf(na=%d\nM,a);

return1;

)

A.程序出错,不能正确运行,因为a=a+1不成立

B.a=3

C.a=3,a=4,a=8

D.a=33=3a=3

满分:50.00分

得分:50.00分

你的答案:

C

正确答案:

C

教师评语:

2.

以下程序的输出结果是

#include

usingnamespacestd;

intmain()

(

inta=2.5+3.6;

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

return1;

)

A.a=6.1

B.a=5.0

C.a=6

D.a=5

满分:50.00分

得分:50.00分

你的答案:

C

正确答案:

C

教师评语:

2.5.3算术运算符、算术表达式

一、单选题供100.00分)

1.

若有定义intk=7,x=12;则能使值为3的表达式是

A.x%=(k%=5)

B.x%=(k-k%5)

C.x%=k-k%5

D.(x%=k)-(k%=5)

满分:50.00分

得分:50.00分

你的答案:

D

正确答案:

D

教师评语:

2.

若变量已正确定义并赚值,则下面符合C语言语法的表达式是

A.a:=b+1

B.a=b=c=1

C.int18.5%3

D.a=a+7=c+b

满分:50.00分

得分:50.00分

你的答案:

B

正确答案:

B

教师评语:

2.5.4自增自减运算符、符号运算符

一、填空题(共100.00分)

1.

#include

usingnamespacestd;

intmain()

(

inti=1,j=2,k=3;

printf(H%d\n",i++);

printf("%d\n”,++j);

printf(M%d\nn,(++k)*2);

printf("%d\n”,i+j+k);

return1;

)

以上程序的输出结果是

()

()

满分:100.00分

得分:100.00分

你的答案:

第1空:

1

第2空:

3

第3空:

8

第4空:

9

正确答案:

第1空:

1

第2空:

3

第3空:

8

第4空:

9

教师评语:

2.5.5算术运算符中数据类型转换规则

一、单选题(共100.00分)

1.

inti=3;

floatf=2.3f;

doubled=3.2;

long1=10;

则表达式10+,a'+i*f-d/l的结果是

A.不确定

B.113.58

C.113

D.120

满分:50.00分

得分:50.00分

你的答案:

B

正确答案:

B

教师评语:

2.

若有定义

inta=7;

floatx=2.5,y=4.7;

则表达式x+a%3*(int)(x+y)%2/4的值是

A.2.500000

B.2.750000

C.3.500000

D.0.000000

满分:50.00分

得分:50.00分

你的答案:

A

正确答案:

A

教师评语:

2.5.6位运算符、位运算表达式

一、填空题供100.00分)

1.

计算以下式子的结果。(计算结果为十进制)

71&52=

满分:25.00分

得分:25.00分

你的答案:

第1空:

4

正确答案:

第1空:

4

答案解析:

将十进制数转换成二进制,对二进制数进行相应的位运算,再将运算结果转换回十进制即可。

教师评语:

2.

计算以下式子的结果。(计算结果为十进制)

71|52=

满分:25.00分

得分:25.00分

你的答案:

第1空:

119

正确答案:

第1空:

119

教师评语:

3.

计算以下式子的结果。(计算结果为十进制)

71A52=

满分:25.00分

得分:25.00分

你的答案:

第1空:

115

正确答案:

第1空:

115

教师评语:

4.

计算以下式子的结果。(计算结果为十进制)

71&52=

71|52=

71A52=

〜8=

16«4=

16»4=

满分:25.00分

得分:25.00分

你的答案:

第1空:

4

第2空:

119

第3空:

115

第4空:

-9

第5空:

256

第6空:

1

正确答案:

第1空:

4

第2空:

119

第3空:

115

第4空:

-9

第5空:

256

第6空:

1

答案解析:

将十进制数转换成二进制,对二进制数进行相应的位运算,再将运算结果转换回十进制即可。

教师评语:

2.5.7逗号运算符、逗号表达式

一、填空题供100.00分)

1.

假设a为整型变量,则表达式(a=3,a++,a+5,a*6)的值是()

满分:100.00分

得分:100.00分

你的答案:

第1空:

24

正确答案:

第1空:

24

教师评语:

258其他运算:sizeof运算符

一、单选题(共100.00分)

1.

sizeof(double)是

A.一个双精度型表达式

B.一个整型表达式

C.一种函数调用

D.一个非法的表达式

满分:100.00分

得分:100.00分

你的答案:

B

正确答案:

B

教师评语:

基本输入输出和顺序程序设计

3.1程序的控制结构

一、单选题供100.00分)

1.

以下关于当型循环和直到型循环的描述不正确的是。

A.两者可以互相转换

B.直到型循环的循环体可能一次都不执行

C.当型循环的循环体可能一次都不执行

D.直到型循环的循环体至少执行一次

满分:50.00分

得分:50.00分

你的答案:

B

正确答案:

B

教师评语:

2.

C语言中用于结构化程序设计的3种基本结构是。

A.顺序结构、选择结构、循环结构

B.if>switch>break

C.for、while^do-while

D.if>for>continue

满分:50.00分

得分:50.00分

你的答案:

A

正确答案:

A

教师评语:

3.2格式化输出printf

一、单选题(共100.00分)

1.

下面程序运行后的输出结果是

inta=1,b=0;

printf("%d,",b=a4-b);

printf(M%d\nH,a=2*b);

A.0,0

B.1,0

C.3,2

D.1,2

满分:25.00分

得分:25.00分

你的答案:

D

正确答案:

D

教师评语:

2.

下面程序的输出结果是

intk=11;

printf("%d,%o,%x\n”,k,k,k);

A.11,12,11

B.11,13,13

C.11,013,0xb

D.11,13,b

满分:25.00分

得分:25.00分

你的答案:

D

正确答案:

D

教师评语:

3.

以下程序运行后的输出结果是_

intx=011;

printf("%d\n”,++x);

A.12

B.11

C.10

D.9

满分:25.00分

得分:25.00分

你的答案:

c

正确答案:

c

教师评语:

4.

下面程序段的输出结果是o

inta=2,b=5;

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

A.a=%d,b=5

B.a=2,b=5

C.a=%%d,b=5

D.a=%d,b=2

满分:25.00分

得分:25.00分

你的答案:

D

正确答案:

D

教师评语:

3.3格式化输入scant

一、单选题供100.00分)

1.

若有说明语句:inta;floatb;,以下输入语句正确的是

A.scanf(,,%d#%.f,,,&a,&b);

B.scanf("%f%f",&a,&b);

C.scanf("%f,%d",&a,&b);

D.scanf("%d%f",&a,&b);

满分:25.00分

得分:25.00分

你的答案:

D

正确答案:

D

教师评语:

2.

已知inta,b;用语句scanf("%d%d",&a,&b);输入a,b的值时,不能作为输入数据分隔符的

是■>

A.,

B.空格

C.回车

D.Tab键

满分:25.00分

得分:25.00分

你的答案:

A

正确答案:

A

教师评语:

3.

执行下面程序时,欲将25和2.5分别赋给a和b,正确的输入方法是。

inta;

floatb;

scant(Ha=%d,b=%f",&a,&b);

A.252.5

B.25,2.5

C.a=25,b=2.5

D.a=25b=2.5

满分:25.00分

得分:25.00分

你的答案:

C

正确答案:

C

教师评语:

4.

已有如下定义和输入语句,若要求a1、a2、c1、c2的值分别为10、20、A和B,当从第一

列开始输入数据时,正确的数据输入方式是o(答案中#代表空格)

inta1,a2;

charc1,c2;

scanf(H%d%c%d%cn,&a1,&c1,&a2,&c2);

A.10A#20#B

B.10#A#20#B

C.10A20B

D.10A20#B

满分:25.00分

得分:25.00分

你的答案:

C

正确答案:

C

教师评语:

3.4字符串数据的非格式化输入输出

一、单选题供100.00分)

1.

有以下程序

chara,b,c,d;

scanf(,,%c%c,,,&a,&b);

c=getchar();

d=getchar();

当执行程序时,按下列方式输入数据(,不代表回车)

12

34

后,a>b、c^d的值分别是c

A.1、2、3、4

B.1>2、\n、3

C.1、2、\n、4

D.程序出错

满分:25.00分

得分:25.00分

你的答案:

B

正确答案:

B

教师评语:

2.

阅读以下程序,当输入数据的形式为:12a345b789(回车),正确的输出结果为

voidmain()

(

charc1,c2;

inta1,a2;

c1=getchar();

scanf("%2d”,&a1);

c2=getchar();

scanf(H%3dn,&a2);

printf(H%d,%d,%c,%c\nn,a1,a2,c1,c2);

)

A.2,345,1,a

B.12,345,a,b

C.2a,45b,1,3

D.2,789,1,a

满分:25.00分

得分:25.00分

你的答案:

A

正确答案:

A

教师评语:

3.

执行下面的程序时,假设用户输入为1#22#333(此处#表示空格),则ch1、ch2和ch3

的值为。

charch1,ch2,ch3;

scanf(H%1c%2c%3cn,&ch1,&ch2,&ch3);

A.T、2、'3'

B.’1‘、'#'、'2'

C.T、2、

D.T、'#‘、‘3'

满分:25.00分

得分:25.00分

你的答案:

B

正确答案:

B

教师评语:

4.

有以下程序段:

charch1,ch2;

scanf("%c",&ch1);

ch1=ch1+4

ch2=ch1+5-3;

printf("%d%c\nH,ch1,ch2);

如果输入字符A,则程序运行后输出的结果是。

A.AC

B.AE

C.C67

D.67E

满分:25.00分

得分:25.00分

你的答案:

D

正确答案:

D

教师评语:

3.5顺序程序设计举例

一、单选题供100.00分)

1.

假设三位正整数X,以下是正确分解x的各位的语句。

A.a=x/100,b=x/10%10,c=x%10;

B.a=x/100,b=x%100/10,c=x-b*100-a*10;

C.a=x/100;b=x/10/10;c=x%10;

D.a=x%10,b=x%100/10,c=x-a-b*10;

满分:25.00分

得分:25.00分

你的答案:

A

正确答案:

A

教师评语:

2.

以下程序段的输出结果是O

intx=102,y=012;

printf("%2d,%2d\n",x,y);

A.10,01

B.02,12

C.102,10

D.02,10

满分:25.00分

得分:25.00分

你的答案:

C

正确答案:

C

教师评语:

3.

下列程序的输出结果是

doubled=3.2;intx=1.2,y;

y=(x+3.8)/5.0;

printf("%d\n",d*y);

A.3

B.3.2

C.O

D.3.07

满分:25.00分

得分:25.00分

你的答案:

C

正确答案:

c

教师评语:

4.

阅读以下程序

intcase;floatprintF;

scanf("%d%f",&case,&printF);

printf("%d%f\n",case,printF);

该程序编译时产生错误,其出错原因是。

A.定义语句出错,case是关键字,不能用作用户自定义标识符

B.定义语句出错,printF不能用作用户自定义标识符

C.定义语句无错,scanf不能作为输入函数使用

D.定义语句无错,printf不能输出case的值

满分:25.00分

得分:25.00分

你的答案:

A

正确答案:

A

教师评语:

选择结构程序设计

4.1C程序中语句的分类

一、单选题供100.00分)

1.

用于控制程序的流程,实现程序的选择结构和循环结构。

A.选择语句

B.循环语句

C.控制语句

D.函数调用语句

满分:50.00分

得分:50.00分

你的答案:

C

正确答案:

C

教师评语:

2.

用。将多条语句括起来组成,程序中将其看成是单条语句。

A.表达式语句

B.复合语句

C.空语句

D.控制语句

满分:50.00分

得分:50.00分

你的答案:

B

正确答案:

B

教师评语:

4.1C程序中语句的分类

一、单选题供100.00分)

1.

用于控制程序的流程,实现程序的选择结构和循环结构。

A.选择语句

B.循环语句

C.控制语句

D.函数调用语句

满分:50.00分

得分:50.00分

你的答案:

C

正确答案:

C

教师评语:

2.

用{}将多条语句括起来组成,程序中将其看成是单条语句。

A.表达式语句

B.复合语句

C.空语句

D.控制语句

满分:50.00分

得分:50.00分

你的答案:

B

正确答案:

B

教师评语:

4.2.1关系运算符和关系表达式

、单选题(共100.00分)

1.

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

则以下不能满足要求的表达式是。

A.A%2==1

B.!(A%2==0)

C.!(A%2)

D.A%2

满分:50.00分

得分:50.00分

你的答案:

C

正确答案:

C

教师评语:

2.

设变量ch的值为小写字母d,将其转为大写字母D的表达式是

A.ch-a+A

B.ch+32

C.ch-'a'+'A'

D.以上都不正确

满分:50.00分

得分:50.00分

你的答案:

C

正确答案:

C

教师评语:

4.2.2逻辑运算符和逻辑表达式

一、单选题供100.00分)

1.

逻辑运算符两侧运算对象的数据类型_____。

A.只能是。或1

B.只能是0或非。正数

C.只能是整型或字符型数据

D.可以是任何类型的数据

满分:50.00分

得分:50.00分

你的答案:

D

正确答案:

D

教师评语:

2.

已知x=43,ch='A',y=0;则表达式(x>=y&&chv'B'&&!y)

的值是。

A.O

B.语法错

C.1

D.“假”

满分:50.00分

得分:50.00分

你的答案:

C

正确答案:

C

教师评语:

4.2.3条件运算符和条件表达式

一、单选题供100.00分)

1.

对于条件表达式(k)?(i++):(i—)来说,其中的表达式k等价于

A.k==O

B.k==1

C.k!=O

D.k!=1

满分:50.00分

得分:50.00分

你的答案:

C

正确答案:

C

教师评语:

2.

已知intx=-5,y=5;

执行语句y=x>0?1:x<0?-1:0;后变量y的值为

A.1

B.5

C.-1

D.0

满分:50.00分

得分:50.00分

你的答案:

C

正确答案:

C

教师评语:

4.3.1if语句

一、单选题供100.00分)

1.

当a=l,b=3,c=5Zd=4时,执行完下面一段程序后x的值是

if(a<b)

if(c<d)x=1;

else

if(a<c)

if(b<d)x=2;

elsex=3;

elsex=6;

else

x=7;

A.1

B.2

C.3

D.6

满分:20.00分

得分:20.00分

你的答案:

B

正确答案:

B

教师评语:

2.

多重if-else语句嵌套使用时,寻找与else配对的if方法是,

A.缩排位置相同的if

B.其上最近的if

C.下面最近的if

D.其上最近的未配的if

A.缩排位置相同的if

B.其上最近的if

C.下面最近的if

D.其上最近的未配的if

满分:20.00分

得分:20.00分

你的答案:

D

正确答案:

D

教师评语:

3.

阅读以下程序,如果从键盘上输入5,则正确的输出结果是

voidmain()

(

intx;

scanf("%d",&x);

if(x-<5)

printf("%d",x);

else

printf("%d”,x++);

)

A.3

B.4

C.5

D.6

满分:20.00分

得分:20.00分

你的答案:

B

正确答案:

B

教师评语:

4.

关于以下三条语句的描述中,正确的是

1.if(a)a=l;elsea=2;

2.if(a==0)a=2;elsea=l;

3.if(a!=0)a=l;elsea=2;

A.三条语句相互等效

B.三条语句中2与3等效

C.三条语句中1与2等效

D.三条语句各不等效

满分:20.00分

得分:20.00分

你的答案:

A

正确答案:

A

教师评语:

5.

对if语句中表达式的类型,下列正确的描述是

A.必须是关系表达式

B.必须是关系表达式或逻辑表达式

C.必须是关系表达式或算法表达式

D.可以是任意表达式

满分:20.00分

得分:20.00分

你的答案:

D

正确答案:

D

教师评语:

4.3.2switch语句

一、单选题供100.00分)

1.

若有定义:floatw;inta,b;则合法的switch语句是

A.switch(w){

case1.0:printf(”*\n");

case2.0:printf(,,**\nn);

)

B.switch(a){

case1printf("*\nu);

case2printf('***\nn);

)

C.switch(b){

case1:printf("*\n");

default:printf(,,\nn);

casea:printf(,,**\nM);

)

D.switch(a+b){

case1:printf(,,*\nH);

case2:printf(,,**\n");

default:printf(n\n");

)

满分:50.00分

得分:50.00分

你的答案:

D

正确答案:

D

教师评语:

2.

下列关于switch语句的描述中,正确的是。

A.switch语句中default子句可以没有,也可以有一个

B.switch语句中的每个语句序列中必须有break语句

C.switch语句中的case子句后面的表达式可以是包含变量的整型表达式

D.switch语句中default子句只能放在最后

满分:50.00分

得分:50.00分

你的答案:

A

正确答案:

A

教师评语:

4.4.1例1计算员工当月薪水

、单选题(共100.00分)

1.

与y=(x>0?1:xv0?-1:0);功能相同的if语句是。(平台问题,导致格式乱。答案

只有不换行。)

A.if(x>0)y=1;elseif(x<0)y=-1;elsey=0;

B.if(x)if(x>0)y=1;elseif(x<0)y=-1;

C.y=-1;if(x)if(x>0)y=1;elseif(x==0)y=0;elsey=-1;

D.y=O;if(x>=0)if(x>0)y=1;elsey=-1;

满分:100.00分

得分:100.00分

你的答案:

A

正确答案:

A

教师评语:

4.4.2例2判断闰年

一、单选题供100.00分)

1.

闰年能被400整除或者能被4整除但不能被100整除。以下不是判定year是闰年的正

确表达式。

A.year%400==0||year%4==0&&year%100!=0

B.!(year%400)||(!(year%4)&&year%100)

C.!year%40011!year%4&&year%100

D.year%400==0||(year%4==0&&year%100!=0)

满分:100.00分

得分:100.00分

你的答案:

C

正确答案:

C

教师评语:

4.4.3例3简单表达式计算

一、单选题供100.00分)

1.

请阅读以下程序,其运行结果是。

voidmain()

(

charc='A';

if('O'v=cv='9')print*"YES");

elseprintfCNO");

)

A.YES

B.NO

C.YESNO

D.语句错误

满分:100.00分

得分:100.00分

你的答案:

A

正确答案:

A

教师评语:

循环结构程序设计

5.1.1while语句

一、单选题供100.00分)

1.

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

A.E==0

B.E!=1

C.E==1

D.E!=0

满分:20.00分

得分:20.00分

你的答案:

A

正确答案:

A

教师评语:

2.

设有以下程序段

intx=O,s=O;

while(!x!=0)s+=++x;

printf("%d",s);

则o

A.运行程序段后输出0

B.运行程序段后输出1

C.程序段中的控制表达式是非法的

D.程序段执行无限次

满分:20.00分

得分:20.00分

你的答案:

B

正确答案:

B

教师评语:

3.

有如下程序

voidmain()

(

intn=9;

while(n>6){n-;printf(M%dH,n);}

}

该程序段的输出结果是o

A.876

B.987

C.8765

D.9876

满分:20.00分

得分:20.00分

你的答案:

A

正确答案:

A

教师评语:

4.

下面程序段的运行结果是

x=y=0;

while(x<15)y++,x+=++y;

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

A.20,7

B.6,12

C.20,8

D.8,20

满分:20.00分

得分:20.00分

你的答案:

D

正确答案:

D

教师评语:

5.

设有程序段:

intk=10;

while(k=O)k-;

则下列描述中正确的是。

A.while循环执行10次

B.死循环

C.循环体语句一次也不执行

D.循环体语句执行一次

满分:20.00分

得分:20.00分

你的答案:

C

正确答案:

C

教师评语:

5.1.2do-while语句

一、单选题(共100.00分)

1.

下面程序段中,循环体的执行次数是

inta=10,b=0;

do{

b+=2;

a-=2+b;

}while(a>=0);

A.2

B.3

C.4

D.5

满分:20.00分

得分:20.00分

你的答案:

B

正确答案:

B

教师评语:

2.

下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除,请选择填

空。

#include<cstdio>

voidmain()

(

inti=O,j,k;

do{

i++;

k=316-13*i;

}while();

j=k/11;

printf("316=13*%d+11*%d\n",i,j);

)

A.k/11

B.k%11

C.k/11==0

D.k%11==0

满分:20.00分

得分:20.00分

你的答案:

B

正确答案:

B

教师评语:

3.

在C语言中,下列说明正确的是。

A.do-while构成的循环,当while中的表达式值为零时结束循环

B.do-while构成的循环必须用break才能退出

C.do-while允许从外部转到循环体内

D.do-while的循环体不能是复合语句

满分:20.00分

得分:20.00分

你的答案:

A

正确答案:

A

教师评语:

4.

下面程序的运行结果是。

#include<cstdio>

voidmain()

inty=10;

do{

}while(-y);

printf("%d\n",y-);

)

A.O

B.-1

C.1

D.2

满分:20.00分

得分:20.00分

你的答案:

A

正确答案:

A

教师评语:

5.

以下描述不正确的是。

A.使用while和do-while循环时,循环变量初始化的操作应在循环体语句之前完成

B.while循环是先判断表达式,后执行循环语句

C.do-while和for循环均是先执行循环语句,后判断表达式

D.for,while和do-while循环中的循环体均可以由空语句构成

满分:20.00分

得分:20.00分

你的答案:

C

正确答案:

C

教师评语:

5.1.3for语句

一、单选题供100.00分)

1.

以下不是无限循环的语句是。

A.for(y=0,x=1;x>++y;x=i++)i=x;

B.for(;;x++=i);

C.while。){x++;}

D.for0=10;;i-)sum+=i;

满分:20.00分

得分:20.00分

你的答案:

A

正确答案:

A

教师评语:

2.

执行语句:for(i=1;i++v4;);后变量i的值是

A.3

B.4

C.5

D不定

满分:20.00分

得分:20.00分

你的答案:

C

正确答案:

C

教师评语:

3.

以下程序运行后的输出结果是.

voidmain()

(

ints=O,k;

for(k=7;k>=0;k-)

(

switch(k)

(

case1:

case4:

case7:s++;break;

case2:

case3:

case6:break;

case0:

case5:s+=2;break;

)

)

printf("s=%d\n",s);

}

A.s=5

B.s=1

C.s=3

D.s=7

满分:20.00分

得分:20.00分

你的答案:

D

正确答案:

D

教师评语:

4.

对for(表达式1;;表达式3)可理解为

A.for(表达式1;0;表达式3)

B.for(表达式1;1;表达式3)

C.for(表达式1;表达式1;表达式3)

D.for(表达式1;表达式3;表达式3)

满分:20.00分

得分:20.00分

你的答案:

B

正确答案:

B

教师评语:

5.

若i为整型变量,则以下程序的输出结果是—

for(i=2;i!=0;)

printf("%d

A.210

B.21

C.10

D.死循环

满分:20.00分

得分:20.00分

你的答案:

C

正确答案:

C

教师评语:

5.1.4循环嵌套

、单选题(共100.00分)

1.

以下程序段的输出结果是

intk,j,s=0;

for(k=2;k<6;k+=2,s=0)

(

for(j=k;j<6;j++)

s+=j;

printf("%d\t",s);

)

A.149

B.14

C.1423

D.1490

满分:25.00分

得分:25.00分

你的答案:

A

正确答案:

A

教师评语:

2.

运行以下程序后,如果从键盘上输入:6514V回车>,则输出结果为

voidmain()

(

intm,n;

printf("Enterm,n:");

scanf("%d%du,&m,&n);

while(m!=n)

{while(m>n)m-=n;

while(n>m)n-=m;

)

printf("m=%d\n",m);

)

A.m=0

B.m=1

C.m=2

D.m=3

满分:25.00分

得分:25.00分

你的答案:

B

正确答案:

B

教师评语:

3.

若i,j已定义为int型,则以下程序段中内循环的总次数是

for(i=3;i;i-)

for(j=0;j<2;j++)

for(k=0;k<=2;k++)

{.■■)

A.30

B.36

C.27

D.18

满分:25.00分

得分:25.00分

你的答案:

D

正确答案:

D

教师评语:

4.

下列程序的输出结果是。

voidmain()

inti,j,m=0,n=0;

forgo;i<2;i++)

for(j=0;j<2;j++)

if(j>=i)m=1;n++;

printf("%d\n",n);

)

A.4

B.2

C.1

D.O

满分:25.00分

得分:25.00分

你的答案:

C

正确答案:

C

教师评语:

5.1.5break与continue语句

一、单选题供100.00分)

1.

以下程序段的运行结果是=

inti,j;

for(i=10;i<16;i++)

for(j=2;j<=(int)sqrt(i);j++)

if(!(i%j))break;

if(j>(int)sqrt(i))

printf("%d",i);

)

A.101112131415

B.101214

C.111315

D.1113

满分:20.00分

得分:20.00分

你的答案:

D

正确答案:

D

教师评语:

2.

以下描述正确的是。

A.continue语句的作用是结束整个循环的执行

B.只能在循环体内和switch语句体内使用break语句

C.在循环体内使用break和continue语句的作用相同

D.从多层循环嵌套中退出时;可以使用continue语句

满分:20.00分

得分:20.00分

你的答案:

B

正确答案:

B

教师评语:

3.

以下程序的输出结果是

voidmain()

(

inti;

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

(

if(i%2)

printf("*");

else

continue;

printf("#");

)

printf("$\n");

)

A.***#$

B.#*#*#*$

C.*#*#*#$

D.**#*$

满分:20.00分

得分:20.00分

你的答案:

C

正确答案:

C

教师评语:

4.

以下程序的输出结果是O

voidmain()

(

inta,b;

for(a=1,b=1;a<=100;a++)

(

if(b>=10)break;

if(b%5==1){b+=5;continue;}

)

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

)

A.101

B.6

C.4

D.3

满分:20.00分

得分:20.00分

你的答案:

D

正确答案:

D

教师评语:

5.

下面程序的输出结果是O

voidmain()

inty=9;

for(;y>0;y-)

(

if(y%3==0)

(

printf("%d",-y);

continue;

)

)

)

A.741

B.852

C.963

D.875421

满分:20.00分

得分:20.00分

你的答案:

B

正确答案:

B

教师评语:

5.1.6exit。函数

一、单选题(共100.00分)

1.

不是程序控制语句,是C语言的标准库函数,但可以用于控制程序的流程。

A.break

B.continue

C.goto

D.exit

满分:50.00分

得分:50.00分

你的答案:

D

正确答案:

D

教师评语:

2.

exit()函数的作用是»

A.结束本轮循环

B.终止操作系统

C结束循环

D.终止程序的执行,强制返回到操作系统

满分:50.00分

得分:50.00分

你的答案:

D

正确答案:

D

教师评语:

5.2循环结构类型的选择及转换

一、单选题(共100.00分)

1.

假设整型n已输入值。以下不能正确计算1*2*3*...*n的程序段是

(1)for1=1,s=1;iv=n;i++)

s*=i;

⑵i=1;s=1;

while(i<=n)

s*=i++;

(3)i=0,s=1;

do{

i++,s*=i;

}while(i<=n);

(4)for(i=1,s=1;;i4-4-)

{s=s*i,

if(i==n)break;

)

A.1

B.2

C.3

D.4

满分:100.00分

得分:100.00分

你的答案:

C

正确答案:

C

教师评语:

5.3循环结构程序设计举例

一、单选题供100.00分)

1.

下列程序的输出结果是。

voidmain()

(

intnum,k,s,temp;

num=100,k=1,temp=1,s=0;

do{

s=s+num%8*temp;

num/=8;

temp*=10;

}while(num);

printf(,,%d\n",s);

}

A.100

B.441

C.144

D.64

满分:50.00分

得分:50.00分

你的答案:

c

正确答案:

c

教师评语:

2.

假设输入4818,下列程序的运行结果是

voidmain()

(

intn,m,r;

scanf(H%d%d",&n,&m);

do{

r=n%m;

n=m,m=r;

}while(r);

printf("%d\n",n);

}

A.12

B.6

C.3

D.2

满分:50.00分

得分:50.00分

你的答案:

B

正确答案:

B

教师评语:

数组

6.1.1数组的定义

、单选题(共100.00分)

1.

在VC6.0中,定义了数组

inta[10];

则a数组在内存中占用了个字节

A.10

B.20

C.40

D.不确定

满分:50.00分

得分:50.00分

你的答案:

C

正确答案:

c

教师评语:

2.

以下错误的数组定义是

A.doubled[1+2+3];

B.#defineN10inta[N+2];

C.floatf[10+'A']

D.intn=10;inta[n+2];

满分:50.00分

得分:50.00分

你的答案:

D

正确答案:

D

教师评语:

6.1.2数组的引用

、单选题(共100.00分)

1.

以下对数组元素正确引用的是:

A.floatf[10];f[10]=3.14;

B.chars[20];s[5-6]='A*;

C.doubled[5];d[5-5]=8;

D.a[1]=2;inta[8];

满分:100.00分

得分:100.00分

你的答案:

C

正确答案:

C

教师评语:

6.1.3一维数组的赋值

一、单选题(共100.00分)

1.

以下正确的定义语句是:

A.float2.2,3.3,4.4,5.5};

B.inta[5]={-1.0,6,1,2,3);

C.charch[]={'a','b','c',

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论