热门关键字:  听力密码  听力密码  新概念美语  单词密码  巧用听写练听力

C语言程序设计

中国水利水电出版社
    【作 者】任正云 李素若 主编 【I S B N 】978-7-5084-4300-3 【责任编辑】陈洁 【适用读者群】高职高专 【出版时间】2007-03-01 【开 本】16开本 【装帧信息】平装(光膜) 【版 次】第1版 【页 数】284 【千字数】 【印 张】 【定 价】26 【丛 书】21世纪高职高专规划教材 【备注信息】教育部高等学校高职高专计算机类专业教学指导委员会优秀教材
图书详情

    本书遵照C语言标准,结合作者多年的教学和科研实践的经验和体会,全面系统、深入浅出地阐述了C语言的基本概念、语法和语义,以及用C语言进行程序设计的基本方法和技巧。

    本书的主要内容包括数据类型和表达式、流程控制、算法分析、函数与程序结构等。概念准确,结构合理,层次清晰,实例丰富,选材精心,语言通俗易懂。本章末都配有习题可供不同层次的读者练习。

    本书十分注重知识的应用,重点章节都给出了应用举例。本书的一个亮点是给出了学生成绩管理系统、大奖赛评分系统和万年历的程序,虽然所给出程序代码不一定最优化,但可以引导读者分析,给读者以启发,是学习编程人员一本很好的工具书。

    本书是一本准确而又较全面反映标准C语言的教材,还配有《C语言程序设计上机指导与习题集解答》一书。既可供高等学校计算机专业本、专科或培训班教学使用,也是广大科技工作者和编程爱好者的一本很好的参考书。

    1.概念准确,结构合理,层次清晰,实例丰富,选材精心,语言通俗易懂。本章末都配有习题可供不同层次的读者练习

    2.十分注重知识的应用,重点章节都给出了应用举例。

    3.本书的一个亮点是给出了学生成绩管理系统、大奖赛评分系统和万年历的程序

    C语言是一种结构化的程序设计语言。它功能丰富、表现力强、使用灵活、应用面广、目标程序效率高、可移植性好,既具有高级语言的特点,又具有低级语言的功能,因此它成为当今的主流程序设计语言之一。由于它简单易学,使用方便灵活,所以学习和使用C语言的人越来越多,国内高等院校理工科专业都开设了这门课程。同时,C语言也是全国计算机二级考试的指定考试科目之一。学好C 语言对进一步学习其他计算机语言具有积极的意义。

    C语言程序设计是一门实践性很强的课程,它包含理论学习、编程方法和程序调试三个方面的内容。由于它的语法现象比较复杂,数据类型转换和表示灵活多变,因此,在学习和掌握C语言时,要把实践分为三个层次和两个方面。三个层次是:阅读别人写好的程序(或函数),理解程序所要完成的任务(也就是程序的功能),从中学习编程的方法和技巧;模仿编写功能类似的程序;自己独立设计和编写完成指定任务的程序。两个方面是:在条件有限的情况下,动手在纸上严格按语法规则一丝不苟地写出程序;另一方面,在条件允许的情况下,应该尽量上机练习,调试自己所写的程序。根据当前的形式和教学的需要,从C语言教学实际出发,我们编写了这本《C语言程序设计》,希望本书能为广大读者提供有益的帮助。

    针对C语言在计算机专业课程以及计算机公共基础课程体系中的地位,本书从培养学生的理解、设计基本算法出发,结合掌握C语言的语法规则训练,培养学生基本编程能力。本书在编写过程中,着重体现以下特色:

    (1)语言通俗易懂、结构符合教学规律。考虑到学习者的基础,本书在编写过程中从语言的角度尽量做到通俗易懂,避免按C语言说明书、操作手册的内容安排和描述,内容及讲解由浅入深,符合C语言的特点,符合程序设计语言学习的特点。

    (2)理论讲解力求体现“必需、够用为度”。充分考虑学生的特点和C语言程序设计在课程体系中的地位,在内容的讲解上,尽量形象地描述算法产生的过程,突出学习重点,理论教学力求体现必需、够用为度,强调实际应用,有意回避一些C语言中出现频率很低或与语言实现版本有关的内容,把重点放在语言本身的难点和程序设计的技巧方面,为以后从事软件开发的学生提供良好的参考。

    (3)坚持“两个并重”,重视学生技能的形成过程。所谓两个并重,就是程序设计语言和程序设计技巧并重、典型案例和实际编程并重。本书在讲解理论后都有强化理论的例题,每章结束部分都安排有应用实例。这样做的目的就是力求使读者学完C语言程序设计之后,不仅能懂C语言的语法、语义,更重要的是具备编程解决实际问题的能力,通过给出的一些经典案例,让学生能够从中借鉴、模仿及改写,从而提高学习者的编程能力。

    特别值得一提的是:本书在讲解必要的理论知识的同时,十分注重知识的应用,重点章节都给出了应用举例,本书的一个亮点是给出了学生成绩管理系统,大奖赛评分系统,万年历的程序,是学习编程人员的一本很好的工具书。本书还配有《C语言程序设计上机指导与习题集解答》一书,供不同层次的读者练习。

    本书由任正云、李素若任主编,胡玉荣、张牧、肖衡任副主编,具体分工如下:第1、2、3、5、7章由任正云编写,第4、6章由胡玉荣编写,第8章由李素若编写,第9章由张牧编写,第10章由肖衡编写,全书由任正云统稿,所有的程序由张牧、胡玉荣负责调试,在编写过程中得到了主审田原副教授和相关专家的指导,在此一并表示衷心的感谢。

    本书存在一些不足之处,竭诚希望广大读者批评指正。

    编 者

    2006年12月

    前言
    第1章 C语言程序设计基础 1
    1.1 程序设计及程序设计语言 1
    1.1.1 程序设计语言的发展 1
    1.1.2 C语言的发展过程 2
    1.2 C语言的特点 3
    1.3 源程序的编辑、编译、连接与运行 4
    1.4 C程序结构 5
    1.4.1 简单的C程序介绍 5
    1.4.2 C程序结构 7
    习题 8
    第2章 C语言的数据类型与基本操作 10
    2.1 常量与变量 10
    2.1.1 常量 10
    2.1.2 变量 13
    2.2 标识符和关键字 15
    2.3 整型数在计算机中的存储方式 17
    2.4 有符号的数据类型和无符号的数据类型 18
    2.5 运算符和表达式 19
    2.5.1 赋值运算符和赋值表达式 21
    2.5.2 算术运算符和算术表达式 23
    2.5.3 长度测试运算符sizeof 25
    2.5.4 关系运算符和关系表达式 25
    2.5.5 逻辑运算符与逻辑表达式 26
    2.5.6 条件运算符与条件运算表达式 28
    2.5.7 逗号运算符与逗号表达式 30
    2.5.8 位运算 31
    2.6 不同类型数据间的转换 34
    习题 37
    第3章 顺序结构程序设计 42
    3.1 算法 42
    3.1.1 算法的组成要素 42
    3.1.2 算法的表示方法 43
    3.1.3 算法设计举例 46
    3.2 C语句概述 51
    3.2.1 控制语句 51
    3.2.2 表达式语句 52
    3.2.3 复合语句 52
    3.3 数据的输入和输出 53
    3.3.1 数据的输出函数 53
    3.3.2 scanf函数 58
    3.4 getchar函数与putchar函数 62
    3.4.1 字符输出函数putchar() 62
    3.4.2 字符输入函数getchar() 63
    习题 64
    第4章 选择结构程序设计 68
    4.1 if语句 68
    4.1.1 if语句的形式 68
    4.1.2 if语句的嵌套 72
    4.2 switch语句 75
    4.3 程序举例 77
    习题 79
    第5章 循环结构程序设计 84
    5.1 while语句 84
    5.2 do-while语句 90
    5.3 for语句 92
    5.4 三种循环语句的比较 96
    5.5 循环的嵌套 96
    5.6 break语句和continue语句 101
    5.6.1 break语句 102
    5.6.2 continue语句 102
    5.7 综合实例 103
    习题 109
    第6章 函数 115
    6.1 函数概述 115
    6.2 函数的定义与声明 116
    6.2.1 函数定义 117
    6.2.2 函数的参数和返回值 118
    6.2.3 函数的声明 118
    6.3 函数的调用 119
    6.3.1 调用函数的一般形式 119
    6.3.2 调用函数时数据的传递 119
    6.3.3 函数的嵌套调用 121
    6.3.4 函数的递归调用 122
    6.4 局部变量和全局变量 126
    6.4.1 局部变量 126
    6.4.2 全局变量 128
    6.5 变量的存储属性 131
    6.5.1 自动变量(auto) 131
    6.5.2 寄存器变量(register) 133
    6.5.3 静态变量(static) 133
    6.5.4 外部变量 134
    6.6 编译预处理 136
    6.6.1 宏定义 136
    6.6.2 文件包含 141
    6.6.3 条件编译 142
    习题 144
    第7章 数组 148
    7.1 一维数组 148
    7.1.1 一维数组的定义 148
    7.1.2 一维数组的初始化 149
    7.1.3 一维数组元素的引用 149
    7.1.4 一维数组的使用 149
    7.2 二维数组和多维数组 155
    7.2.1 二维数组和多维数组的概念及其定义 155
    7.2.2 二维数组和多维数组的引用 157
    7.2.3 二维数组的初始化 158
    7.2.4 二维数组的经典实例 159
    7.3 字符数组 162
    7.3.1 字符数组的定义 162
    7.3.2 字符数组的输入输出 163
    7.3.3 常用字符串函数 164
    7.3.4 字符数组的使用 167
    7.4 数组应用实例 168
    7.4.1 排序 168
    7.4.2 二分查找 171
    习题 173
    第8章 指针 175
    8.1 地址和指针 175
    8.1.1 地址 175
    8.1.2 指针 176
    8.2 指针变量 177
    8.2.1 指针变量的说明 177
    8.2.2 指针变量的运算 178
    8.3 指针作为函数参数 178
    8.3.1 指针常量作为函数参数 178
    8.3.2 程序实例 180
    8.4 指针与数组 181
    8.4.1 指向数组的指针变量 181
    8.4.2 通过指针引用数组元素 182
    8.4.3 通过指针引用数组元素时几个注意的问题 182
    8.4.4 数组名作函数参数 184
    8.4.5 程序实例 185
    8.5 指针的运算 186
    8.6 用指针访问字符串 186
    8.6.1 指针和字符串的关系 186
    8.6.2 用指针处理字符串 187
    8.7 指针数组和指向指针的指针 190
    8.7.1 指针数组 190
    8.7.2 指向指针的指针 191
    8.7.3 指向指针的指针的应用 191
    8.7.4 带形参的main函数 193
    8.8 指向函数的指针 195
    8.8.1 函数指针的概念 195
    8.8.2 函数指针的应用 196
    习题 198
    第9章 结构体和共用体 201
    9.1 概述 201
    9.2 结构体与结构体类型变量 201
    9.2.1 结构体类型的定义 201
    9.2.2 结构体类型变量的定义 202
    9.2.3 结构体变量的引用 204
    9.2.4 结构体变量的初始化 205
    9.3 结构体数组 205
    9.4 指向结构体类型数据的指针 207
    9.4.1 指向结构体变量的指针 207
    9.4.2 指向结构体数组的指针 209
    9.4.3 结构体指针变量作为函数的参数 210
    9.4.4 结构体与函数的类型 212
    9.5 链表 214
    9.5.1 链表的概念 214
    9.5.2 动态存储分配 215
    9.5.3 链表的基本操作 217
    9.6 共用体 221
    9.6.1 共用体的概念和定义 221
    9.6.2 共用体变量的引用 223
    9.7 枚举类型 225
    9.7.1 枚举的定义与说明 225
    9.7.2 枚举类型变量的赋值与引用 226
    9.8 用Typedef定义类型 227
    9.9 应用实例——学生成绩管理系统 228
    习题 239
    第10章 文件 242
    10.1 文件的概念 242
    10.1.1 文件的类型 242
    10.1.2 文件的访问方式 243
    10.2 格式化数据文件操作 243
    10.2.1 打开文件函数fopen() 244
    10.2.2 关闭文件函数fclose() 245
    10.2.3 从文件中格式化输入数据fscanf() 246
    10.2.4 向文件中格式化输出函数fprintf() 246
    10.2.5 文件建立 246
    10.2.6 文件访问 247
    10.2.7 文件修改 248
    10.3 字符数据文件操作 250
    10.3.1 从指定文件中读取一个字符 250
    10.3.2 putc()函数——指向文件输出一个字符 251
    10.3.3 fgets()函数——从文件中读一个字符串 251
    10.3.4 fputs()函数——向指定文件输出一个字符串 251
    10.3.5 feof ()函数——文件操作是否到文件尾的检测函数 252
    10.4 fread()与fwrite()函数 253
    10.5 文件位置定位与错误处理函数 254
    10.5.1 rewind()函数——将文件读写指针定位于文件头 254
    10.5.2 fseek()函数——重新定位文件位置指针 255
    10.5.3 ftell()函数——测试当前读写指针位置 255
    10.5.4 ferror()函数——检测文件流操作中的错误 256
    10.5.5 clearerr()函数——清除出错标志 256
    10.6 应用实例——大奖赛评分系统 257
    习题 261
    附录A ASCII字符编码一览表 266
    附录B C语言库函数 267
    参考文献 274
最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册