当前位置:文档之家› 书店的C语言从入门到精通第1章

书店的C语言从入门到精通第1章

第1章步入C的世界——Hello C了解C语言了解C语言C编程前的准备——C常用开发环境

开始C编程——第1个C程序

C程序的组成

跟我上机第1章步入C的世界——Hello C了解C语言了解C语言C编程前的准备——C常用开发环境

开始C编程——第1个C程序

C程序的组成

跟我上机第1章步入C的世界——Hello C了解C语言了解C语言C编程前的准备——C常用开发环境

开始C编程——第1个C程序

C程序的组成

跟我上机第1章步入C的世界——Hello C了解C语言了解C语言C编程前的准备——C常用开发环境

开始C编程——第1个C程序

C程序的组成

跟我上机第1章步入C的世界——Hello C了解C语言了解C语言C编程前的准备——C常用开发环境

开始C编程——第1个C程序

C程序的组成

跟我上机第1章步入C的世界——Hello C了解C语言了解C语言

C编程前的准备——C常用开发环境

开始C编程——第1个C程序

C程序的组成

跟我上机了解C语言 C的历史

C的特点

为什么要用C C 了解C语言C语言是一种计算机程序设计语言。它既有

高级语言的特点,又具有低级汇编语言的特

点。它可以作为系统设计语言,编写工作系

统应用程序,也可以作为应用程序设计语言,统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。正因为

此,它的应用范围广泛。 C的历史C语言的诞生及发展历程如图所示。A 语言

语言语言

语言

CPL 语言

语言语言

语言CPL 语言

语言语言

语言

BCPL 语言

语言语言

语言

B 语言

语言语言

语言

C 语言

语言语言

语言 C的历史第1阶段:A语言

C语言的发展颇为有趣,它的原型ALGOL

60语言,也成A语言。ALGOL60是一种面

向问题的高级语言,它离硬件比较远,不适向问题的高级语言,它离硬件比较远,不适合编写系统程序。ALGOL 60也就是算法语

言60,它是程序设计语言由技艺转向科学的

重要标志,其特点是局部性、动态性、递归

性和严谨性。 C的历史第2阶段:CPL语言

1963年,剑桥大学将ALGOL 60语言发展

成为CPL语言(Combined Programming

Language),CPL语言在ALGOL60的基Language),CPL语言在ALGOL60的基础上与硬件接近了一些,但规模仍然比较宏

大,难于实现。 C的历史第3阶段:BCPL语言

1967年,剑桥大学马丁·理察斯(Martin

Richards)对CPL语言进行了简化,推出了BCPL

语言(Basic Combined Programming 语言(Basic Combined Programming

Language)语言。BCPL语言是计算机软件人员

在开发系统软件时作为记述语言使用的一种结构化

程序设计语言,它能够直接处理与机器本身数据类

型相近的数据,具有与内存地址对应的指针处理方

式。 C的历史第4阶段:B语言

在1970 年代初期,时任美国贝尔实验室的肯·汤

普逊将BCPL进行了修改,设计出比较简单而且很

接近硬件的语言,取名B语言。B语言还包括了汤

普逊的一些个人偏好比如在一些特定的程序中减少普逊的一些个人偏好比如在一些特定的程序中减少

非空格字符的数量。和BCPL以及FORTH类似,B

语言只有一种数据类型,计算机字。大部分操作将

其作为整数对待,例如进行+、-、*、/操作,但

其余操作将其作为一个复引用的内存地址。在许多

方面B语言更像是一个早期版本的C语言,它还包

括了一些库函数,其作用类似于C语言中的标准输

入/输出函数库。 C的历史第5阶段:C语言

但是由于B语言过于简单,数据没有类型,

功能也有限,美国贝尔实验室的丹尼斯·里奇

(Dennis 在B语言的基础上最终(Dennis 在B语言的基础上最终

设计出了一种新的语言,他取名C语言,并

试着以C编写Unix。1972年,丹尼斯·里

奇完成C的设计,并成功地利用C编写操作

系统,降低了作业系统的修改难度。 C的历史1978年,C语言先后移植到大、中、小、微型计算

机上,风靡世界,成为最广泛的几种计算机语言之

一。

1983年,美国国家标准委员会(ANSI)对C语言1983年,美国国家标准委员会(ANSI)对C语言

进行了标准化,于1983年颁布了第一个C语言标准

草案(83 ANSI C),后来于1987年又颁布了另一

个C语言标准草案(87 ANSI C)。1994年,

ISO修订了C语言的标准。最新的C语言标准是在

1999年颁布并在2000年3月被ANSI采用的C99,

正式名称是ISO/IEC9899:1999。 C的特点 1. 功能强大、适用范围大、可移植性好

许多著名的系统软件都是由C 语言编写的。C语言

可以像汇编语言一样对位、字节和地址进行操作,

而这三者是计算机最基本的工作单元。而这三者是计算机最基本的工作单元。

C语言适合于多种操作系统,如DOS、UNIX等。

对于操作系统、系统使用程序以及需要对硬件进行

操作的场合,用C语言明显优于其它解释型高级语

言,一些大型应用软件也是用C语言编写的。 C的特点 2. 运算符丰富

C语言的运算符包含的范围很广泛,共有34

种运算符。C语言把括号、赋值、强制类型

转换等都作为运算符处理。从而使C语言的转换等都作为运算符处理。从而使C语言的

运算类型极其丰富,表达式类型多样化。灵

活使用各种运算符可以实现在其它高级语言

中难以实现的运算。运算符的介绍见第4章

中的相关内容。 C的特点 3. 数据结构丰富

C语言的数据类型有:整形、实型、字符型、

数组类型、指针类型、结构体类型、共用体

类型等。能用来实现各种复杂的数据结构的类型等。能用来实现各种复杂的数据结构的

运算。并引入了指针概念,使程序效率更高。

指针的介绍见第11、12两章中的相关内容。 C的特点 4. C是结构化语言

5. C语言允许直接访问物理地址,可以直接

对硬件进行操作

6. 其他特性,C语言语法限制不太严格,语

法比较灵活,生成目标代码质量高,程序执

行效率高。为什么要用C⑴C语言相比其他高级语言如(C++,Java,C#)

是低级语言,它可以让更好的了解计算机是如何工

作的。比如数据在内存中是如何存储的,如何直接

访问内存中的数据等等。

⑵可以不夸张的说,C语言是其他任何高级语言的⑵可以不夸张的说,C语言是其他任何高级语言的

基础,学好C语言,你就可以更容易掌握其他语言。

语言都是相通的,C更专注于语言的实质,而不需

要分散更多精力在集成开发环境的使用和抽象的数

据概念上。

⑶C语言执行效率高、速度快,这是毋庸置疑的最

优秀特性。 C编程前的准备——C常用开发环境认识Visual C++

认识Turbo C C编程前的准备——C常用开发环境C语言常用的集成开发环境主要有Microsoft

Visual C++ 、Microsoft Visual

C++.NET、Turbo C以及Borland C++

Builder等。Builder等。 C编程前的准备——C常用开发环境 1. Microsoft Visual C++

不仅是一个C++编译器,而且是一个基于Windows操作系统

的可视化集成开发环境。

2. Microsoft Visual C++.NET或Microsoft Visual C++

2005

Microsoft Visual Studio 的后续版本,是一套完整的开发Microsoft Visual Studio 的后续版本,是一套完整的开发

工具集,在.NET平台下,调用Framework的类库,功能强大,

其中包含了Visual C++开发组件。

3. Turbo C

美国Borland 公司的产品,目前的最常用的版本是Turbo C

4. Borland C++ Builder

Borland公司继Delphi之后又推出的一款高性能集成开发工具,

具有可视化的开发环境。认识Visual C++ 安装Microsoft Visual Studio 或单独

安装Visual C++ 之后,选择【开始】

【程序】【Microsoft Visual Studio

】【Microsoft Visual C++ 】菜】【Microsoft Visual C++ 】菜

单命令,即可启动Visual C++ 。认识Visual C++ 认识Visual C++ 1. 菜单栏

通过菜单栏中的菜单命令,你可以轻松地完成编辑程序和资源、编译、

链接及调试程序等各项工作。常用菜单如下。⑴【

File】文件菜单:包含了各种对文件进行操作的选项,如加载、保存、

打印和退出等。

⑵【Edit】编辑菜单:用来使用户便捷地编辑文件内容,如进行删除、复制

等操作,其中的大多数命令功能与Windows中的标准字处理程序的编辑等操作,其中的大多数命令功能与Windows中的标准字处理程序的编辑

命令一致。

⑶【View】查看菜单:主要用来改变窗口和工具栏的显示方式,激活调试时

所用的各个窗口等。

⑷【Insert】插入菜单:主要用于项目及资源的创建和添加。

⑸【Project】工程菜单:主要用于项目的操作,如项目中添加源文件等。

⑹【Build】编译菜单:主要用来应用程序的编译、连接、调试、运行。

⑺【Tools】工具菜单:主要用于选择或制定开发环境中的一些实用工具。

⑻【Windows】窗口菜单:主要用于文档窗口的操作。如排列文档、打开或

关闭一个文档窗口、重组或切分文档窗口等。

⑼【Help】帮助菜单:提供了大量详细的帮助信息认识Visual C++ 2. 工具栏

工具栏中提供了大部分常用的操作命令

3. Workspace(工作区)窗口工作区窗口共有以下

3个标签,分别代表3种视图形式。

⑴【Class View(类视图)】:用以显示项目中的所有的类信息。

⑵【ResourceView(资源视图)】:包含了项目中所有资源的层次列表。⑵【ResourceView(资源视图)】:包含了项目中所有资源的层次列表。

每一种资源都有自己的图标。在字符界面或者控制台界面中没有该项,只

有windows程序下才出现。

⑶【FileView(文件视图)】:可将项目中的所有文件分类显示,每一类文

件在【FileView】页面中都有自己的目录项。可以在目录项中移动文件,

还可以创建新的目录项,以及将一些特殊类型的文件放在该目录项中。

4. Output(输出)窗口

显示程序编译和连接错误和警告。

5. 编辑窗口

可进行输入、修改以及删除代码等操作。认识Turbo C 1. 启动Turbo C ⑴命令行方式启动

选择【开始】【程序】【附件】【命令提示符】,在

打开的命令行中输入Turbo C 的路径,如

C:\TURBOC2\TCEnterTC“C:\TURBOC2\TC”,按【Enter】键,即可进入TC集

成环境的主菜单窗口。

⑵从Windows环境进入

在Windows XP环境中,如果本机中已安装了Turbo C,可

以在桌面上建立一个快捷方式,双击该快捷方式即可进

入C语言开发环境。或者选择【开始】【运行】,在运

行对话框中输入程序的路径,单击【确定】按钮即可。认识Turbo C 2. Turbo C 开发环境介绍

Turbo C 的主界面可以分为四个部分,

由上至下分别为:菜单栏、编辑区、信息区

和功能键索引。和功能键索引。认识Turbo C 认识Turbo C ⑴菜单栏:包括【File】(文件)菜单、【Edit】

(编辑)菜单、【Run】(运行)菜单、

【Compile】(编译)菜单、【Project】(项目)

菜单、【Options】(选择)菜单、【Debug】

(调试)菜单和【Break/watch】(断点及监视)

菜单等。

(调试)菜单和【Break/watch】(断点及监视)

菜单等。

⑵编辑区:编辑区的第一行为编辑状态行,用来

指示游标所在位置、文件名称以及编辑相关的状态

信息。其他为代码编辑区域。

⑶信息区:显示程序编译和连接错误和警告。

⑷功能键索引:Turbo C 不支持鼠标操作,

功能键索引给出了功能按键的索引号。了解C语言程序编写及运行流程在Visual C++ 中开发C程序

在Turbo C中开发C程序 Turbo 程序编写及运行流程要转换C语言到可执行文件,需要借助的工

具是编译器(Compiler),转换的过程叫

做编译。经过编译,生成目标程序,目标文

件是机器代码,还是不能够直接执行的,它件是机器代码,还是不能够直接执行的,它

需要其他文件或者其他函数库辅助,才能生

成最终的可执行文件,这个过程称之为连接,

使用的工具叫做连接器。程序编写及运行流程在Visual C++ 中开发C程序【范例1-1】使用Visual C++ 创建C

程序并运行01 #include <>/*

包含标准输入输出头文件*/

02 int main (void)/*主函数*/02 int main (void)/*主函数*/

03 {/*函数体开始*/

04 printf(“Hello C!\n”);/*函数体*/

05 return 0; /*返回值*/

06 }/*函数体结束*/ C程序的组成完整的C程序

#include的秘密

程序的入口——main函数

数据集装箱——常量和变量

何以输出程序结果——输出函数

注释

代码的规矩完整的C程序【范例1-2】计算圆的周长。01 /*内容:计算圆周长

02 目的:了解C语法*/

03 #include <>/*包含标准输入输出头文件*/

04 #include <>/*包含数学函数库头文件*/

05 #define PI *定义常量PI,它的值是*/

06 int main()/*主函数*/06 int main()/*主函数*/

07 {

08 int radius;/*整型变量,存储半径值*/

09 float circum;/*浮点型变量,存储周长值*/

10 radius = 2;/*半径赋值*/

11 circum = 2 * PI * radius;/*计算周长*/

12 printf("变量radius地址是%d\n",&radius);/*输出变量radius存储地址*/

13 printf("半径开方值是%f\n",sqrt(radius));/*输出变量radius的开方值*/

14 printf("半径是%d,周长是%f\n",radius,circum);/*输出变量radius值和circum

值*/

15 return 0;/*返回值*/

16 }/*函数体结束*/ #include的秘密一个C程序可以由有若干个源程序文件组成,

每一个源文件可以有由若干个函数和预处理

命令以及全局变量声明部分组成,每一个函

数有函数首部和函数体组成。C程序的结构数有函数首部和函数体组成。C程序的结构如下图所示。 #include的秘密C程序

程序程序

程序

源文件

源文件源文件

源文件1源文件

源文件源文件

源文件2源文件

源文件源文件

源文件n

宏定义

宏定义宏定义

宏定义声明

声明声明

声明

函数

函数函数

函数1函数

函数函数

函数n

函数部首

函数部首函数部首

函数部首函数体

函数体函数体

函数体程序的入口——main函数每个c程序必须有而且只有一个主函数,也

就是main函数,它是程序的入口。使用

main函数有时也作为一种驱动,按次序控

制调用其他函数,c程序是由函数构成的,制调用其他函数,c程序是由函数构成的,这使得程序容易实现模块化;main函数后

的“( )”不可省略,表示函数的参数列

表;”“{”和“}”是函数开始和结束的标志,

不可省略。程序的入口——main函数main()Fun1()

Fun2()

第一步

第一步第一步

第一步

第二步

第二步第二步

第二步

返回

返回返回

返回

Fun2()

Fun3()

第二步

第二步第二步

第二步

第三步

第三步第三步

第三步

返回

返回返回

返回

返回

返回返回

返回程序的入口——main函数int main() {

Fun1();

Fun2();

函数名称

函数名称函数名称

函数名称

函数部首

函数部首函数部首

函数部首,

,,

,表示

表示表示

表示

函数返回类型

函数返回类型函数返回类型函数返回类型

空参数列表

空参数列表空参数列表

空参数列表

Fun2();

Fun2();

return 0;

}

函数体

函数体函数体

函数体

调用的函数

调用的函数调用的函数

调用的函数

函数返回值

函数返回值函数返回值

函数返回值数据集装箱——常量和变量常量是不能变动的数据,还可以理解它为字面值。如在范例1-

2代码的第5行中,定义了1个字符常量PI,并赋值为,后

面就可以使用PI来代替。

变量是可以改变的量。数学当中常用到变量x用来表示一个值,

比如经过计算x的值为2了,再计算y=x*x时,x就代表数值2,

从而可以得到y的值4;又经过计算x的值变为了5,再进行其他从而可以得到y的值4;又经过计算x的值变为了5,再进行其他

含有x的算式时,x就表示5而不再是2了,像x这样可以改变的

量就称为变量。如在范例1-2代码的第8、9行中,定义了2个

变量,分别用于存储半径和周长的值。

关于常量和变量,在第2章中详细介绍。何以输出程序结果——输出函数因为C语言是跨平台的,在不同的系统上输入、输

出的处理是不同的,所以C语言不提供输入/输出,

只是调用具体平台操作系统的库函数来实现输入、

输出。在主函数当中包含了标准输入输出头文件

“”后,调用了printf函数,用来实现输出“”后,调用了printf函数,用来实现输出

“Hello C!”的功能。

printf()函数功能是把数据发送到标准系统显示设

备上,并实现格式化输出,把这样的数据称为字符

串,字符串需要使用双引号引起来。

printf(“Hello C!\n”);/*调用函数*/ 何以输出程序结果——输出函数进一步对该函数做解释需要注意的是有以下几点:

⑴函数名称后必须有小括号,不能省略,这是函

数的特征;

⑵函数结束必须有分号,不能省略;

⑶字符串结尾有这样的内容“\n”,它叫做转义符,⑶字符串结尾有这样的内容“\n”,它叫做转义符,

表示的含义是把光标移动到下一行的行首,也就是

回车换行,因为无法直接通过键盘输入换行的指令,

所以需要使用转移符;又比如输出内容后希望返回

到该行的行首,重新输出内容,键盘上也没有对应

的功能键,就可以使用回车符转义符“\r“,来代替。

当然义移还包含其他内容,后续章节中会详细讲述。注释大家已经注意到,很多语句后面都跟有“/*”

和“*/”符号,它表示什么含义呢?

在前文已经说过,在编辑代码的过程中,希

望加上一些说明的文字,来表示代码的含义,望加上一些说明的文字,来表示代码的含义,

这是很有必要的。注释注释的要求如下。

⑴使用“/*”和“*/”表示注释的起止,注释内容写在这两个符

号之间,注释表示对某语句的说明,不属于是程序的代码的范

畴,比如范例1-1和1-2代码中“/*”和“*/”之间的内容。

⑵“/”和“*”之间没有空格。/”*

⑶注释可以注释单行也可以注释多行,而且注释不允许嵌套,

嵌套是会产生错误的,比如:

/*这样的注释/*特别*/有用*/

这段放在程序中不但没有起到说明的作用,反而使程序保存,

原因是“这样”前面的“/*”与“特别”后面的“*/”匹配,注

释结束,而“有用*/”就被编译器认为是违反语法规则的代码代码的规矩从书写代码清晰,便于阅读,理解,维护的角度出

发,在书写程序时应遵循以下规则:

⑴一个说明或一个语句占一行。把空格符、制表

符、换行符等统称为空白符。除了字符串,函数名符、换行符等统称为空白符。除了字符串,函数名

和关键字,C忽略所有的空白符,在其它地方出现

时,只起间隔作用,编译程序对它们忽略不计。因

此在程序中使用空白符与否,对程序的编译不发生

影响,但在程序中适当的地方使用空白符将增加程

序的清晰性和可读性。代码的规矩int

main(

){

printf(“Hello C!\n”printf(“Hello C!\n”

);

} /*这样的写法能运行,但是太乱,很不妥*/ 代码的规矩⑵用“{”和“}”括起来的部分,通常表示了

程序的某一层次结构。“{”和“}”一般与该

结构语句的第一个字母对齐,并单独占一行。int main()int main()

{

printf(“He llo C!\n”);

return 0;} /*这样的写法能运行,但是阅读

起来比较费事*/ 代码的规矩⑶低一层次的语句通常比高一层次的语句留有一个缩进,然后再书写。一般来说缩进指的是存在两

个空格或者一个制表符的空白位置。int main()

{{

printf(“Hello C!\n”);

{

printf(“Hello C!\n”);

}

return 0;

} 代码的规矩⑷在程序中书写注释,注释可以明白程序

做了什么,同样可以增加程序的清晰性和可

读性。跟我上机 1. 编写C程序,在命令行中输出如下一行内

容:

“你好,世界!” 跟我上机 2. 编写C程序,在命令行中输出如下的四行

内容:

one 123

two 456two 456

three 789

C语言第一章习题带答案

练习1-1答案 选择题 1.下列4组字符串中都可以用作C语言程序中的标识符的是( D )。 A.print 3d oodb B.I\m one_half start$it C.Pxq my->book line# D.str_1 Cpp into 2.下面的说法正确的是( C )。 A.C程序由符号构成B.C程序由标识符构成 C.C程序由函数构成D.C程序由C语句构成 3.与十进制数35相等的二进制数是( A )。 A.100011 B.01001 C.100110 D.100101 4.与47值相等的十六进制数是( A )。 A.2F B.215 C.32F D.115 5.(01101) 2 + (101101) 2 的值是( B )。 A.(101010) 2 B.(3A) 16 C.(2A) 16 D.57 6.将15向左移动2位后的值是( D )。 A.(3C) 16 B.(00111100) 2 C.(60) 10 D.都正确 7.将250与5进行按位与的结果是( A )。 A.0 B.1 C.(FF) 16 D.(F0) 16 8.将(AF) 16与(78) 16 进行按位异或的结果是( A )。 A.(D7) 16 B.(28) 16 C.(D8) 16 D.(27) 16 9.将(717) 8 按位取反的结果是( B )。 A.(110001) 2 B.(060) 8 C.(60) 10 D.都不正确练习2-1答案 选择题 1.C语言中的简单数据类型包括( B )。 A.整型、实型、逻辑型B.整型、实型、字符型 C.整型、字符型、逻辑型D.整型、实型、逻辑型、字符型 2.在C语言中,错误的int类型的常数是( A )。 A.32768 B.0 C.037 D.0Xaf 3.下列常数中不能作为C的常量的是( D )。 A.0x45 B.-2 C.3e2 D.0582 4.设int类型的数据长度为2个字节,则unsigned int类型数据的取值范围是( B)。 A.0至255 B.0~65535 C.-32768~32767 D.-256~255 5.下面4个选项中,均是合法转义字符的选项是( A )。 A.'\'','\\','\n' B.'\','\017','\' C.'\018','\f','xab' D.'\\0,'101','x1f 6.在C语言中,数字029是一个( D )。 A.八进制数B.十六进制数 C.十进制数D.非法数 7.下列可以正确表示字符型常数的是( B )。 A."a" B.'\t' C."\n" D.297

c语言第1、2章练习题答案

第1、2章练习题 1.以下叙述正确的是()。B A)C语言程序是由过程和函数组成的B)C语言函数可以嵌套调用,例如fun(fun(x)) C)C语言函数不可以单独编译D)C语言除了main函数外,其他函数不可以作为单独文件形式存在 2.以下叙述正确的是()。C A)C程序的基本组成单位是语句B)C程序中的每一行只能写一条语句 C)简单的C语句必须以分号结束D)C语句必须在一行内写完 3.以下叙述中正确的是()。C A)C程序中的注释只能出现在程序的开始位置和语句的后面 B)C程序书写格式严格,要求一行内只能写一条语句 C)C程序书写格式自由,一条语句可以写在多行上 D)用C语言编写的程序只能放在一个程序文件中 4.下列叙述中错误的是()。A A)一个C语言程序只能实现一种算法B)C语言程序可以由多个程序文件组成 C)C语言程序可以由一个或多个函数组成D)一个C函数可以单独作为一个C程序文件存在5.以下叙述中正确的是()。C 页脚内容1

A)C语言程序将从源程序中的第一个函数开始执行 B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行C)C语言规定必须用main作为主函数名,程序从此开始执行,在此结束 D)main可作为用户标识符,用以命名任意一个函数作为主函数 6.对于一个正常运行的C程序,以下叙述正确的是()。A A)程序的执行总是从main函数开始,在main函数中结束 B)程序的执行总是从程序的第一个函数开始,在main函数结束 C)程序的执行总是从main函数开始,在程序的最后一个函数中结束 D)程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束7.下列叙述正确的是()。D A)每个C语言程序文件中都必须有一个main( )函数 B)在C语言程序中main( )函数的位置是固定的 C)C语言程序中所有函数之间都可以相互调用,与函数所在的位置无关 D)在C语言程序的函数中不能定义另一个函数 8.下列叙述中错误的是()。B A)C程序在运行过程中所有计算机都以二进制方式进行 B)C程序在运行过程中所有计算机都以十进制方式进行 页脚内容2

C语言程序设计-第1-7章选择、填空习题及答案

习题一 一、选择题 1.C程序的基本单位是(A)。 A.函数B.文件C.语句D.字符 2.C程序中的变量(B)。 A.不用说明B.先说明后引用 C.先引用后说明D.引用和说明顺序无关 3.变量的说明在(B)。 A.执行语句之后B.执行语句之前 C.执行语句当中D.位置无关 4.C语言是一种(C)。 A.机器语言B.符号语言 C.高级语言D.面向对象的语言 二、填空题 1.一个C程序总是从主函数开始执行。 2.结构化程序由顺序、选择、循环三种基本结构构成。 3.一个C程序只有一个名为main的主函数。 4.C程序中的每个语句以分号结束。 5.C程序中,函数由函数首部和函数体组成。 6.每个基本结构有一个入口和一个出口,没有死循环和死语句。7.算法是计算机解决问题所依据的步骤。 习题二 一、选择题 1.下列数据中属于字符串常量的是( B)。 A.ABC B."ABC" C.'abc' D.'A' 2.在计算机内存中,'\n'占用的字节数是( C)。 A.4 B.3 C.1 D.2 3.字符串"ABC"在内存中占用的字节数是( D)。 A.6 B.8 C.3 D.4 4.在C语言中,合法的长整型常数是( B)。 A.568701400 B.0L C.0.03546287 D.2.654e11 5.char型常量在内存中存放的是( A)。 A.ASCII代码值B.BCD代码值 C.十进制代码值D.内码值 6.下列各项中正确的标识符是( D)。 A.?bb B.a=8 C. b.βD.b_4 7.下列不正确的转义字符是( D)。 A.\\ B.\ 0 C.\" D.0x4 8.设整型变量a、b的值均为5,则表达式(m=n=a++)/(n=b-2)的值为( B)。 A.0 B.1 C.2 D.3 9.设a的值为5,执行下列语句后,b的值不为2的是( C)。 A.b=a/2 B.b=6-(--a) C.b=a%2 D.b=(float)a/2 10.执行语句x=(a=3,b=a--)后,x、a、b的值依次是( C)。

C语言1-2章课后题

第一章C语言概述课后题 一、选择题 1、一个C语言程序总是从()。 A、主过程开始执行 B、主函数开始执行 C、子程序开始执行 D、主程序开始执行 2、C语言能直接执行的程序是()。 A、源程序 B、汇编程序 C、目标程序 D、可执行程序 3、以下叙述中正确的是()。 A、C语言程序中的注释部分可以出现在程序中任意合适的地方 B、花括号“{”和“”只能作为函数体的定界符 C、构成C语言程序的基本组成单位是函数,所有函数名都可以由用户命名 D、分号是C语言语句之间的分隔符,不是语句的一部分 4、以下选项中,不合法的C语言程序函数体是()。 A、{;} B、{ } C、{ printf(“computer”); } D、{int a=1;} 5、要把高级语言编写的源程序转换为目标程序,需要使用()。 A、编辑程序 B、驱动程序 C、编译程序 D、诊断程序 二、填空题 1、C语言程序的基本单位是()。 2、C语言源程序文件名的后缀是(),经过编译后生成的目标文件名的后缀是(),经过链接之后生成的可执行文件名的后缀是()。 3、计算机语言包括()、()和()。其中计算机能够直接识别的语言是(),()很接近人们习惯使用的自然语言和数学语言。 4、按照结构化程序设计原则,常见的程序基本结构有()、()和()。 5、循环结构包含()循环和()循环。 三、简单题 1、什么是程序?什么是程序设计? 2、解释源程序、目标程序和可执行程序的含义。 3、写出C语言的特点。 四、编程题 1、参照本章例题,编写一个C语言程序,输出以下信息:happy new year!

2、参照本章例题,编写程序求两个数中的较小值。 第二章C语言程序设计基础课后题 一、选择题 1、以下选项中,正确的整型数据是()。 A、1.2 B、-123 C、723 456 D、567 890 2、下面字符常量的表达形式中正确的是()。 A、“Z” B、“\’ C、‘1’ D、‘\378’ 3、ch为字符型变量,执行语句“ch=?C?+‘5’-…4?;”,将ch按字符类型输出的结果是()。 A、D B、68 C、56 D、不确定的值 4、C语言中要求运算对象必须是整型数据的运算符是()。 A、++ B、-- C、% D、/ 5、变量a为整型、b为实型、c为双精度型、d为字符型,则表达式a=a*b+d-c的类型是()。 A、整型 B、实型 C、双精度型 D、字符型 6、有以下定义语句,编译时会出现编译错误的是()。 A、char a=?a?; B、char a=?\n?; C、char a=?aa?; D、char a=?\x2d?; 7、设有语句“int a=3;”,执行语句printf(“%d %d”,a+1,a++);后输出的值是()。 A、4 3 B、3 4 C、4 4 D、3 3 二、填空题 1、在C语言中(以16位计算机为例),一个char型数据在内存中所占的字节数为(),其数值范围是();一个int型数据在内存中所占的字节数为(),其数值范围是();一个long型数据在内存中所占的字节数为(),其数值范围是();一个float型数据在内存中所占字节数为(),其数值范围是()。

书店的C语言从入门到精通第1章

第1章步入C的世界——Hello C了解C语言了解C语言C编程前的准备——C常用开发环境 开始C编程——第1个C程序 C程序的组成 跟我上机第1章步入C的世界——Hello C了解C语言了解C语言C编程前的准备——C常用开发环境 开始C编程——第1个C程序 C程序的组成 跟我上机第1章步入C的世界——Hello C了解C语言了解C语言C编程前的准备——C常用开发环境 开始C编程——第1个C程序 C程序的组成 跟我上机第1章步入C的世界——Hello C了解C语言了解C语言C编程前的准备——C常用开发环境 开始C编程——第1个C程序 C程序的组成 跟我上机第1章步入C的世界——Hello C了解C语言了解C语言C编程前的准备——C常用开发环境 开始C编程——第1个C程序 C程序的组成 跟我上机第1章步入C的世界——Hello C了解C语言了解C语言

C编程前的准备——C常用开发环境 开始C编程——第1个C程序 C程序的组成 跟我上机了解C语言 C的历史 C的特点 为什么要用C C 了解C语言C语言是一种计算机程序设计语言。它既有 高级语言的特点,又具有低级汇编语言的特 点。它可以作为系统设计语言,编写工作系 统应用程序,也可以作为应用程序设计语言,统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。正因为 此,它的应用范围广泛。 C的历史C语言的诞生及发展历程如图所示。A 语言 语言语言 语言 CPL 语言 语言语言 语言CPL 语言 语言语言 语言 BCPL 语言 语言语言 语言

B 语言 语言语言 语言 C 语言 语言语言 语言 C的历史第1阶段:A语言 C语言的发展颇为有趣,它的原型ALGOL 60语言,也成A语言。ALGOL60是一种面 向问题的高级语言,它离硬件比较远,不适向问题的高级语言,它离硬件比较远,不适合编写系统程序。ALGOL 60也就是算法语 言60,它是程序设计语言由技艺转向科学的 重要标志,其特点是局部性、动态性、递归 性和严谨性。 C的历史第2阶段:CPL语言 1963年,剑桥大学将ALGOL 60语言发展 成为CPL语言(Combined Programming Language),CPL语言在ALGOL60的基Language),CPL语言在ALGOL60的基础上与硬件接近了一些,但规模仍然比较宏 大,难于实现。 C的历史第3阶段:BCPL语言 1967年,剑桥大学马丁·理察斯(Martin Richards)对CPL语言进行了简化,推出了BCPL 语言(Basic Combined Programming 语言(Basic Combined Programming

C语言第一章基础练习题

第一章基础练习题 一、填空题 1、C语言是在70 年代初问世的。一九七八年由美国电话电报公司(AT&T)贝尔实验室正式发表了C语言。后来由美国国家标准协会(American National Standards Institute)在此基础上制定了一个C 语言标准,于一九八三年发表。通常称之为ANSI C。 2、目前最流行的C语言有以下几种:Microsoft C 或称MS C ,Borland Turbo C 或称Turbo C ,AT&T C ,这些C语言版本不仅实现了ANSI C标准,而且在此基础上各自作了一些扩充,使之更加方便、完美。 9 种控制语句,程序书写自由,主要用小写字母表示,压缩了一切不必要的成分。 Turbo C扩充了11个关键字: asm _cs _ds _es _ss cdecl far huge i nterrupt near pascal 注意:在C语言中,关键字都是小写的。 4、运算符丰富。共有34 种。C把括号、赋值、逗号等都作为运算符处理。从而使C 的运算类型极为丰富,可以实现其他高级语言难以实现的运算。 5、C源程序的结构特点 1>.一个C语言源程序可以由一个或多个源文件组成。 2>.每个源文件可由一个或多个函数组成。 3>.一个源程序不论由多少个文件组成,都有一个且只能有一个main函数,即主函数。 4>.每个函数由两部分组成:说明部分与函数体,其中说明部分主要包括返回类型、函数名、形参例表。函数体包括:说明部分与执行部分。在C语言中函数的定义是并列的,而函数的调用可嵌套。 5>.每一个说明,每一个语句都必须以分号结尾。但预处理命令,函数头和花括号“}”之后不能加分号。 6>.标识符,关键字之间必须至少加一个空格以示间隔。若已有明显的间隔符,也可不再加空格来间隔。 6、从书写清晰,便于阅读,理解,维护的角度出发,在书写程序时应遵循以下规则: 1>.一个说明或一个语句占一行。 2>.用{} 括起来的部分,通常表示了程序的某一层次结构。{}一般与该结构语句的第一个字母对齐,并单独占一行。 3>.低一层次的语句或说明可比高一层次的语句或说明缩进若干格后书写。以便看起来更加清晰,增加程序的可读性。 7、C语言字符集由字母,数字,空格,标点和特殊字符组成。在字符常量,字符串常量和注释中还可以使用汉字或其它可表示的图形符号。 8、Turbo C 2.0主菜单有:File Edit Run Compile Project Options Debug Break/watch 共10个。除Edit外, 其它各项均有子菜单, 只要用Alt 加上某项中第一个字母, 就可进入该项的子菜单中。 File菜单 Load :装入一个文件, 可用类似DOS的通配符(如*.C)来进行列表选择。也可装入其它扩展名的文件, 只要给出文件名(或只给路径)即可。该项的热键为F3, 即只要按F3即可进入该项, 而不需要先进入File菜单再选此项。 Pick :将最近装入编辑窗口的8个文件列成一个表让用户选择, 选择后将该程序装入编辑区, 并将光标置在上次修改过的地方。其热健为Alt-F3。 New :新建文件, 缺省文件名为NONAME.C, 存盘时可改名。 Save :将编辑区中的文件存盘, 若文件名是NONAME.C时, 将询问是否更改文件名, 其热键为F2。 Write to :可由用户给出文件名将编辑区中的文件存盘, 若该文件已存在, 则询问要不要覆盖。 Directory :显示目录及目录中的文件, 并可由用户选择。 Change dir:显示当前默认目录, 用户可以改变默认目录。 Os shell:暂时退出Turbo C 2.0到DOS提示符下, 此时可以运行DOS 命令, 若想回到 Turbo C 2.0中, 只要在DOS状态下键入EXIT即可。 Quit :退出Turbo C 2.0, 返回到DOS操作系统中, 其热键为Alt+X。 Run菜单 Run :运行由Project/Project name项指定的文件名或当前编辑区的文件。如果对上次编译后的源代码未做过修改, 则直接运行到下一个断点(没有断点则运行到结束)。否则先进行编译、连接后才运行, 其热键为Ctrl+F9。 Program reset:中止当前的调试, 释放分给程序的空间, 其热键为Ctrl+F2。 Go to cursor ::调试程序时使用, 选择该项可使程序运行到光标所在行。光标所在行必须为一条可执行语句, 否则提示错误。其热键为F4。 Trace into :在执行一条调用其它用户定义的子函数时, 若用Trace into项, 则执行长条将跟踪到该子函数内部去执行, 其热键为F7。 Step over :执行当前函数的下一条语句, 即使用户函数调用, 执行长条也不会跟踪进函数内部,

第一章 C语言基础知识

第一章C语言基础知识 考点 1 C语言程序的结构认识 本节通过一个简单的c程序例子,介绍c语言的基本构成、格式、以及良好的书写风格,使读者对c语言有个初步认识。 例1 计算两个整数之和的c程序: #include main() { int a,b,sum; /*定义变量a,b,sum为整型变量*/ a=20; /*把整数20赋值给整型变量a*/ b=15; /*把整数15赋值给整型变量b*/ sum=a+b; /*把两个数之和赋值给整型变量sum*/ printf(“a=%d,b=%d,sum=%d\n”,a,b,sum); /*把计算结果输出到显示屏上*/ } 重点说明: 1、任何一个c语言程序都必须包括以下格式: main() { } 这是c语言的基本结构,任何一个程序都必须包含这个机构。括号内可以不写任何内容,那么该程序将不执行任何结果。 2、main()----在c语言中称之为“主函数”,一个c程序有且仅有一个main函数,任何一个c 程序总是从main函数开始执行,main函数后面的一对圆括号不能省略。 3、被大括号{ }括起来的内容称为main函数的函数体,这部分内容就是计算机要执行的内容。 4、在{ }里面每一句话后面都有一个分号(;),在c语言中,我们把以一个分号结尾的一句话叫做一个c语言的语句,分号是语句结束的标志。 5、printf(“a=%d,b=%d,sum=%d\n”,a,b,sum); ----通过执行这条c语言系统提供给我们直接使用的屏幕输出函数,用户即可看到运行结果,本程序运行后,将在显示器上显示如下结果: a=20,b=15,sum=35 6、#include 注意:(1)以#号开头(2)不以分号结尾 这一行没有分号,所以不是语句,在c语言中称之为命令行,或者叫做“预编译处理命令”。 7、程序中以/*开头并且以*/结尾的部分表示程序的注释部分,注释可以添加在程序的任何位置,为了提高程序的可读性而添加,但计算机在执行主函数内容时完全忽略注释部分,换而言之就是计算机当做注释部分不存在于主函数中。 考点 2 C程序的生成过程 C程序是先由源文件经编译生成目标文件,然后经过连接生成可执行文件,如图所示。 编译过程

第一章-C语言基础知识

第一章C语言基础知识 (C语言概述、算法、数据类型运算符表达式、位运算)一、判断题 R1.在C语言中,逗号运算符的优先级最低。 2.在C语言可执行程序的开始执行点是程序中第一个函数。 3.“5ch”是合法的变量名。 R4.C语言程序书写格式自由,一行内可以写几个语句,一个语句可以分写在多行上。5.当输入数据时,必须指明变量的地址,如scanf("%f",&f) N6.表达式i++与++i在任何场合功能完全相同。 7.在赋值表达式中,赋值号左边的变量和右边的表达式之值的数据类型可以不相同。Float a; int b=1;a=b; R8.C语言程序中,语句以逗号结尾。() 9.在 C 程序中,APH 和aph 代表不同的变量。( ) 10. a-=7等价于a=a-7。( ) N11. printf函数中用到格式符%5s ,其中数字5表示输出的字符串占用5列。如果字符串长度大于5,则输出按原字符长从左向右全部输出。( ) 12.如果x>y为真或ay)&&(a

第一章 C语言基础知识1

第一章 C语言基础知识 1.1 选择题 1. 以下不是C语言的特点的是()。 A.语言简洁紧凑 B.能够编制出功能复杂的程序 C.C语言可以直接对硬件操作 D.C语言移植性好 2.下列字符序列中,不可用作C语言标识符的是()。 A.abc123 B.no.1 C._123_ D._ok 3. 正确的C语言标识符是()。 A._buy_2 B.2_buy C.?_buy D.buy? 4. 请选出可用作C语言用户标识符的一组标识符()。 A.void B.a3_b3 C.For D.2a define _123 -abc DO WORD IF Case sizeof 5. 下列符号中,不属于转义字符的是()。 A.\\ B.\0xAA C.\t D.\0 6. 不属于C语言关键字的是()。 A.int B.break C.while D.character 7. 是C语言提供的合法关键字的是()。 A.Float B.signed C.integer D.Char 8. 以下不能定义为用户标示符的是()。 A.scanf B.Void C._3com_ D.int 9. 一个C程序是由()。 A.一个主程序和若干子程序组成 B.一个或多个函数组成 C.若干过程组成 D.若干子程序组成 10. C语言程序的基本单位是()。 A.程序行 B.语句 C.函数 D.字符 11. 下列说法中,错误的是()。 A.每个语句必须独占一行,语句的最后可以是一个分号,也可以是一个回 车换行符号 B.每个函数都有一个函数头和一个函数体,主函数也不例外 C.主函数只能调用用户函数或系统函数,用户函数可以相互调用 D.程序是由若干个函数组成的,但是必须有、而且只能有一个主函数 12. 以下说法中正确的是()。 A.C语言程序总是从第一个定义的函数开始执行 B.在C语言程序中,要调用的函数必须在main( )函数中定义 C.C语言程序总是从main( )函数开始执行

第一章C语言基础知识

第一章C语言基础知识 一、选择题 1.计算机能直接执行的程序是( ) A.源程序 B.目标程序 C.汇编程序 D.可执行程序 2.用户自定义标识符正确的是( ) A.3ab B.int C.fa2_a D.sin(x) 3.可用于C语言用户标识符的是( ) A.void,define B.2c,DO C.For,-abc D.as_b3,_123 4.下列为C语言保留字的是( ) A.real B.long C.pointer D.integer 5.下列不.属于保留字的是() A. default B. printf C. struct D.unsigned 6.下列用户自定义标识符正确的是() A. 4a B. b_1 C. -& D. *p 7.以下正确的C语言自定义标识符是() A._la B.2a_ C.do D.a.12 8.合法的用户标识符是() A. default B. #define C. a+b D. book 9.自定义标识符正确的是() A.5d_m B.const C.x4y D.book-1 10.以下属于C语言保留字的是() A.fopen B.include C.get D.unsigned 11.以下选项中,能用作用户标识符的是() A.void B.8_8 C._0_ D.unsigned 12.可以作为自定义标识符的是() A.2 B.break C.m-n D.m_n 13.以下选项中合法的标识符是( ) A. 1_1 B.1―1 C._11 D.1_ _ 14.以下C语言用户标识符中,不合法的是( ) A._1 B.AaBc C.a_b D.a--b 15.可以用作C程序标识符的一组是() A.print B.i\am C.Pxq D.Cpp oodb one-half line# pow aBc 3pai His.age while 16.下列不属于C语言保留字的是( ) A. char B. while C. for D. look 17.C语言的保留字是( ) A. define B. scanf C. do D. include 18.错误 ..的实型常数是( )

《数据结构(C语言版 第2版)》(严蔚敏 著)第一章练习题答案

《数据结构(C语言版第2版)》(严蔚敏著) 第一章练习题答案 第1章绪论 1.简述下列概念:数据、数据元素、数据项、数据对象、数据结构、逻辑结构、存储结构、 抽象数据类型。 答案: 数据:是客观事物的符号表示,指所有能输入到计算机中并被计算机程序处理的符号的总称。 如数学计算中用到的整数和实数,文本编辑所用到的字符串,多媒体程序处理的图形、图像、声 音、动画等通过特殊编码定义后的数据。 数据元素:是数据的基本单位,在计算机中通常作为一个整体进行考虑和处理。在有些情况 下,数据元素也称为元素、结点、记录等。数据元素用于完整地描述一个对象,如一个学生记录, 树中棋盘的一个格局(状态)、图中的一个顶点等。 数据项:是组成数据元素的、有独立含义的、不可分割的最小单位。例如,学生基本信息表 中的学号、姓名、性别等都是数据项。 数据对象:是性质相同的数据元素的集合,是数据的一个子集。例如:整数数据对象是集合 N={0,±1,±2,…},字母字符数据对象是集合C={‘A’,‘B’,…,‘Z’,‘a’,‘b’,…, ‘z’},学生基本信息表也可是一个数据对象。 数据结构:是相互之间存在一种或多种特定关系的数据元素的集合。换句话说,数据结构是 带“结构”的数据元素的集合,“结构”就是指数据元素之间存在的关系。 逻辑结构:从逻辑关系上描述数据,它与数据的存储无关,是独立于计算机的。因此,数据 的逻辑结构可以看作是从具体问题抽象出来的数学模型。 存储结构:数据对象在计算机中的存储表示,也称为物理结构。 抽象数据类型:由用户定义的,表示应用问题的数学模型,以及定义在这个模型上的一组 操作的总称。具体包括三部分:数据对象、数据对象上关系的集合和对数据对象的基本操作的集 合。 2.试举一个数据结构的例子,叙述其逻辑结构和存储结构两方面的含义和相互关系。 答案: 例如有一张学生基本信息表,包括学生的学号、姓名、性别、籍贯、专业等。每个学生基本 信息记录对应一个数据元素,学生记录按顺序号排列,形成了学生基本信息记录的线性序列。对 于整个表来说,只有一个开始结点(它的前面无记录)和一个终端结点(它的后面无记录),其他的 结点则各有一个也只有一个直接前趋和直接后继。学生记录之间的这种关系就确定了学生表的逻 辑结构,即线性结构。 这些学生记录在计算机中的存储表示就是存储结构。如果用连续的存储单元(如用数组表示) 来存放这些记录,则称为顺序存储结构;如果存储单元不连续,而是随机存放各个记录,然后用 指针进行链接,则称为链式存储结构。 即相同的逻辑结构,可以对应不同的存储结构。 3.简述逻辑结构的四种基本关系并画出它们的关系图。 答案:

第一章 C语言基础知识

第一章 C语言基础知识 一、选择题 1.C语言规定,必须用作为主函数名。 A)Function B)include C)main D)stdio 2.一个C程序可以包含任意多个不同名的函数,但有且仅有一个,一个C程序总是从开始执行。A)过程B) 主函数C)函数 D)include 3.是C程序的基本构成单位。 A)函数 B) 函数和过程 C) 超文本过程 D) 子程序4.下列说法正确的是。 A)一个函数的函数体必须要有变量定义和执行部 分,二者缺一不可 B)一个函数的函数体必须要有执行部分,可以没有 变量定义 C)一个函数的函数体可以没有变量定义和执行部 分,函数可以是空函数 D)以上都不对 5.下列说法正确的是。 A)main函数必须放在C程序的开头 B)main函数必须放在C程序的最后 C)main函数可以放在C程序的中间部分,但在执行 C程序时是从程序开头执行的 D)main函数可以放在C程序的中间部分,但在执行 C程序时是从main函数开始的 6.下列说法正确的是。 A)在执行C程序时不是从mian函数开始的 B)C程序书写格式严格限制,一行内必须写一个语句 C)C程序书写格式自由,一个语句可以分写在多行上 D)C程序书写格式严格限制,一行内必须写一个语 句,并要有行号 7.在C语言中,每个语句和数据定义是用结束。 A)句号 B)逗号 C)分号 D)括号 8.下列字符串是标识符的是。 A)_HJ B)9_student C)long D)LINE 1 9.以下说法正确的是。 A)C语言程序总是从第一个定义的函数开始执行 B)在C语言程序中,要调用的函数必须在main() 函数中定义 C)C语言程序总是从main()函数开始执行 D)C语言程序中的main()函数必须放在程序的开始 部分 10.不是C语言提供的合法关键字。 A)switch B)print C)case D)default 12.C语言提供的合法关键字是。 A)continue B)procedure C)begin D)append 13. C语言规定: 在一个源程序中, main函数的位置。 A) 必须在最开始 B) 必须在系统调用的库函数的后面 C) 可以在任意位置 D) 必须在源文件的最后 14. 一个C语言程序是由。一个主程序和若干个子程序组成; A)函数组成, 并且每一个C程序必须且只能由一个主 函数; B)若干过程组成; C)若干子程序组成. 二、填空题 1.一个C程序至少包含一个,即。 2.一个函数由两部分组成,它们是和。 3.函数体的范围是。 4.函数体一般包括和。 5.C语言是通过来进行输入输出的。 6.在C语言中,凡在一个标识符后面紧跟着一对圆括弧,就表明它是一个。 7.主函数名后面的一对圆括号中间可以为空,但一对 圆括号不能。 第二章 C语言程序设计的初步知识 一、选择题(该作业中空类型不属于基本类型) 1.在C 语言中,下列类型属于构造类型的是。 A)整型 B)字符型 C)实型 D)数组类型 2.在C 语言中,下列类型属于构造类型的是。 A)空类型 B)字符型 C)实型 D)共用体类型 3.在C 语言中,下列类型属于构造类型的是。 A)整型B)指针类型 C)实型 D)结构体类型4.在C 语言中,下列类型属于基本类型的是。 A)整型、实型、字符型 B)空类型、枚举型 C)结构体类型、实型 D)数组类型、实型 5.下列类型属于基本类型的是。 A)结构体类型和整型 B)结构体类型、数组、指针、空类型 C)实型D)空类型和枚举类型 6.下列字符串属于标识符的是。 A)INT B)5_student C)2ong D)!DF 7.下列字符串属于标识符的是。 A)_WL B)3_3333 C)int D)LINE 3 8.下列字符串不属于标识符的是。 A)sum B)average C).day_night D)M.D.JOHN 9.下列字符串不属于标识符的是。 A)total B)lutos_1_2_3 C)_night D)$ 123 10.下列字符串不属于标识符的是。 A)_above B)all C)_end D)# dfg 11.C语言中不能用来表示整常数的进制是。A)十进制 B)十六进制 C)八进制 D)二进制12.C语言中能用来表示整常数的进制是。 A)十进制、八进制、十六进制 B)十二进制、十进制 C)六进制、八进制 D)二进制、十进制13.在C语言中,回车换行符是。 A)\n B)\t C)\v D)\b 14.在C语言中,退格符是。 A)\n B)\t C)\v D)\b

《C语言程序设计》习题及解答1-4章

《C语言程序设计》习题及解答1-4章 第1章习题 一、单项选择题 1.C语言程序的执行,总是起始于【】。 A)程序中的第一条可执行语句 B)程序中的第一个函数 C) main函数 D) 包含文件中的第一个函数 分析:在一个C语言源程序中,无论main函数书写在程序的前部,还是后部,程序的执行总是从main函数开始,并且在main函数中结束。 本题正确答案为C。 2.下列说法中正确的是【】。 A) C程序书写时,不区分大小写字母 B) C程序书写时,一行只能写一个语句 C) C程序书写时,一个语句可分成几行书写 D) C程序书写时每行必须有行号 分析:C语言严格区分大小写字母,如"A1"和"a1"被认为是两个不同的标识符,C程序的书写非常灵活,既可以一行多句,又可以一句多行,且每行不加行号。 本题正确答案为C。 3.下面对C语言特点,不正确描述的是【】。 A) C语言兼有高级语言和低级语言的双重特点,执行效率高 B) C语言既可以用来编写应用程序,又可以用来编写系统软件 C) C语言的可移植性较差 D) C语言是一种结构式模块化程序设计语言 分析:C语言是介于汇编语言和高级语言之间的一种语言,由于它可以直接访问物理地址,对硬件操作,所以C语言既可以编写应用程序,又可以开发系统软件,而且C程序可移植性好于汇编语言,程序清晰具有模块化的特点。 本题正确答案为C。 4.C语言源程序的最小单位是【】。 A)程序行 B)语句 C)函数 D)字符 分析:程序行、语句、函数都是由字符构成的,字符是C语言的最小单位。 本题正确答案为D。 5.以下四项中属于C语言关键字的是【】。 A)CHAR B)define C)unsigned D)return 分析:C语言有32个关键字(或称保留字),它们都有特定的含意,并且由小写字母组成,所以选项A是错的,选项B不是保留字,选项D是return的错误拼写。 本题正确答案为C。

C语言第1-2章练习题

C语言第1、2章练习题 一、选择题 1.下列运算符中,(C)结合性从左到右。 A. 三目 B. 赋值 C. 比较 D. 单目 2.下列for循环的次数为(B):for ( i=0,x=0;! x && i<=5;i++) A. 5 B. 6 C. 1 D. 无限 3.下述关于循环体的描述中,(C )是错误的。 A.循环体中可以出现break语句和continue语句;B.循环体中还可以出现循环语句; C.循环体中不能出现goto语句; D.循环体中可以出现开关语句。4.下列变量名中,(A)是合法的。 A.CHINA;B.student-num;C.double D.A+b 5.有以下程序段:int n=0,p;do {scanf(”%d”, &p);n++;} while(p!=12345&&n<3); 此处do-while循环的结束条件是(D)。 A.p的值不等于12345并且n的值小于3 B.p的值等于12345并且n的值大于等于3 C.p的值不等于12345或者n的值小于3 D.p的值等于12345或者n的值大于等于3 6.若有定义:int a=8,b=5,C;,执行语句C=a/b+0.4;后,c的值为(B)A.1.4 B.1 C.2.0 D.2 7.以下程序中,while循环的循环次数是(D) main( ) { int i=0; while(i<10) { if(i<1) continue; if(i==5) break; i++; } ..... A.1 B.10 C.6 D.死循环,不能确定次数8.下列while循环的执行次数是(A)while(i=0) i- -; A.0 B.1 C.5 D.死循环 9.以下说法中正确的是:C A.C语言程序总是从第一个的函数开始执行; B.在C语言程序中,要调用的函数必须在main()函数中定义; C.C语言程序总是从main()函数开始执行; D.C语言程序中的main()函数必须放在程序的开始部分。 10.以下程序的输出结果是:D main() { int x=10,y=10; printf("%d %d\n",x - -, - - y); } A. 10 10 B.9 9 C. 9 10 D. 10 9 11.int a=1,b=3;,则下列表达式的结果为“真”的是:D A. a>=2||!b&&b<4 B. b-a&&!a||a-b&&a/b C. a-!a%b&&!b-!b%b D.a+b&&a-b&&b-3&&a||b

C语言1-5章复习题及参考答案(2021年整理精品文档)

C语言1-5章复习题及参考答案 编辑整理: 尊敬的读者朋友们: 这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望(C语言1-5章复习题及参考答案)的内容能够给您的工作和学习带来便利。同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。 本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为C语言1-5章复习题及参考答案的全部内容。

一.选择题 1、若a为int类型,且其值为3,则执行完表达式a+=a—=a*a后,a的值是()。 A .-3 B.9 C.-12 D.6 2、若有定义:int a=8, b=5, c;执行语句c=a/b+0。4; 后,c的值为(). A 。1。4 B。1 C.2。0 D。2 3、有如下程序: void main() { int i,sum; for(i=1;i<=3;sum++) sum+=i; printf("%d\n”,s um); } 该程序的执行结果是( )。 A .6 B。3 C。死循环 D。0 4、下列关于表达式的描述中,错误的是( )。 A . 常量和变量都是表达式。 B. 运算符类型对应表达式的类型。 C. 每一个表达式都有自己的值。 D. 表达式必须以分号结尾。 5、C语言中,合法的长整型常数是( )。 A 。’\t’ B。” A” C。65 D.a 6、若已定义x 和y为double 类型,则表达式x=1;y=(x+3)/2 的值是(). A .1 B。2 C.2.00000 D。2。50000 7、表达式:10!=9的值是( ). A . true B. 非零值 C.0 D.1

C语言第1 9章基本概念练习题ans最全

第一单元( 1-5 章)基本概念练习题 一、单选选择(直接在正确的选项上打勾,每题) 1、下面关于C 语言特点的描述,不正确的是 ()。D C 语言兼有高级语言和低级语言的双重特点,执行效率高 C 语言既可以用来编写应用程序,又可以用来编写系统软件 C 语言是一种结构式模块化程序设计语言 C 语言的可移植性较差 A 、 B 、 C 、 D 、 2、 C 语言规定,在一个源程序中, A 、必须在最开始 丨 C 、必须在最后 I 3、 下列说法中正确的是 ( ) C 程序书写时,不区分大小写字母 C 程序书写时,一行只能写一个语句 C 程序书写时,一个语句可分成几行书写 C 程序书写时每行必须有行号 main 函数的位置 ( ) B 可以任意 D 必须在系统调用的库函数的后面 I O C A 、 B 、 C 、 D 、 4、 C 语言编译程序的首要工作是 () A 、检查C 语言程序的语法错误 C 、 检查程序的完整性 。A B 、 D 、 检查C 语言程序的逻辑错误 生成目标文件 ()。C C 、 .exe 5、 C 语言程序经过连接以后生成的文件名的后缀为 A 、 .c B 、 .obj 6、 以下关于算法的说法中,错误的是 ( ) 。 一个算法应包含有限个步骤 在计算机上实现的算法是用来处理数据对象的 算法的目的是为了求解 算法中指定的操作 , 不能通过已经实现的基本运算执行有限次后实现 D 、 .cpp A 、 B 、 C 、 D 、 7、 算法是指为解决某个特定问题而采取的确定且有限的步骤,下面不属于算法的五个特性之一的是 A 、 确定性 B 、 有穷性 8、 以下不属于结构化程序设计三种基本结构之一的是 A 、 顺序 B 、 递归 C 、 9、 下列数据中,不合法的 C 语言实型数据是() A 、 0.123 B 、 123e3 C 、 10、 若变量 a 、 i 已正确定义,且 i A 、 a==1 B 、 ++i; 11、 已有定义 int a=6; 则执行语句 A 、 36 B 、 0 12、 若有以下程序段,其输出结果是 int a = 0, b = 0, c = 0; c = ( a -= a - 5), (a -= 3,++b); printf( “%d,%d,%d n ”,a, b, c); A 、 0,0,-10 B 、 2,1,5 13、 有以下定义: int i = 10, j = 1; A 、 9,2 B 、 10,2 14、 字符串 "\t\"\065\xff\n" 的长度为 ( ) A 、 5 B 、 14 C 、8 D 输出项不合法,无正常输出 15、 已有定义: char c; 执行赋值语句 c=('z'-'a')/2+'A'; C 零个或多个输出 ( ) 循环 。C D 、 D 、 零个或多个输入 选择 B 、 123e3 已正确赋值,以下属于合法的 C 、 a=a++=5; a+=a-=a*a; 后, a 的值为 ( -24 2.1e3.5 D 、 C 语句是()。 D 、 a=int(i); O D 789.0 C 、 D 、-60 C 、 执行语句 C 、 O A -10,-3,-10 printf("%d,%d\n",i--, ++j); 9,1 D 、 10,1 D 、 3,3,-10 后输出结果是 ( ) 后,变量 c 的值为 ( )

相关主题
文本预览
相关文档 最新文档