您好,欢迎来到聚文网。 登录 免费注册
C程序设计教程(第4版)

C程序设计教程(第4版)

  • 字数: 445000
  • 装帧: 平装
  • 出版社: 清华大学出版社
  • 出版日期: 2022-08-01
  • 商品条码: 9787302610250
  • 版次: 4
  • 开本: 16开
  • 页数: 300
  • 出版年份: 2022
定价:¥49.9 销售价:登录后查看价格  ¥{{selectedSku?.salePrice}} 
库存: {{selectedSku?.stock}} 库存充足
{{item.title}}:
{{its.name}}
精选
编辑推荐
荣获首届全国优秀教材一等奖的《C程序设计(第五版)》的姊妹篇,全国高校出版社优秀畅销书一等奖,普通高等教育“十一五”重量规划教材
内容简介
C语言是国内外广泛使用的计算机语言。学会使用C语言进行程序设计是计算机工作者的一项基本功。本书系统地介绍怎样使用C语言进行程序设计。通过本书的学习,可以基本掌握C语言的主要内容、程序设计的方法及有关算法的基本知识,初步掌握用计算机解题的全过程。 本书作者具有丰富的教学经验和编写教材的经验,善于把复杂的问题简单化,化解了学生学习过程中的许多困难。作者所著的《C程序设计》一书受到专家和读者的一致好评,被公认为学习C程序设计的理想教材,被全国大多数高校选用,是学习C语言的主流用书,已累计发行逾1700万册,并荣获首届“全国优秀教材一等奖”。 根据国内普通高等学校的教学需要,作者在《C程序设计》一书的基础上重新改写并出版了《C程序设计教程》,适当减少内容,紧扣基本要求,突出重点,适合“少学时”的需要。根据近年来的教学实践,本书重新构建教材体系,进一步压缩内容,突出重点,加强算法训练,更加实用。用通俗易懂的方法和语言阐明复杂的概念,使读者更加容易学习,同时采取适当的方法,注意培养包括计算思维在内的科学思维能力。 本书可用作普通高等学校各专业的正式教材,同时也是一本供广大读者自学的好教材。本书配有辅助教材《C程序设计教程(第4版)学习辅导》和微课视频、在线作业等丰富的教学资源。
作者简介
谭浩强,我国有名计算机教育专家。全国高等院校计算机基础教育研究会荣誉会长,曾任教育部全国计算机应用水平考试委员会主任委员,享受国务院政府特殊津贴。曾获国家科技进步奖、重量教学成果奖,被评为全国优选科普工作者、北京市有突出贡献的专家。
目录
第1章 程序设计和C语言
1.1 计算机与程序、程序设计语言
1.2 C语言的特点
1.3 简单的C语言程序
1.4 C语言程序的结构
1.5 运行C程序的步骤与方法
1.6 程序设计的任务
1.7 算法——程序的灵魂
1.7.1 程序是什么
1.7.2 什么是算法
1.7.3 怎样表示一个算法
1.8 结构化程序设计方法
1.9 学习程序设计,培养科学思维
本章小结
习题
第2章 最简单的C程序设计——顺序程序设计
2.1 顺序程序设计举例
2.2 数据的类型及存储形式
2.2.1 C语言的数据类型
2.2.2 数据的表现形式——常量和变量
2.2.3 整型数据
2.2.4 字符型数据
2.2.5 浮点型数据
2.3 用表达式进行数据的运算
2.3.1 C表达式
2.3.2 C运算符
2.3.3 运算符的优先级与结合性
2.3.4 不同类型数据间的混合运算
2.3.5 强制类型转换
2.4 最常用的C语句——赋值语句
2.4.1 C语句综述
2.4.2 赋值表达式
2.4.3 赋值语句
2.5 数据的输入输出
2.5.1 C语言中输入输出的概念
2.5.2 用printf函数输出数据
2.5.3 用scanf函数输入数据
2.5.4 字符数据的输入输出
本章小结
习题
第3章 选择结构程序设计
3.1 简单的选择结构程序
3.2 选择结构中的关系运算
3.2.1 关系运算符及其优先次序
3.2.2 关系表达式
3.3 选择结构中的逻辑运算
3.3.1 逻辑运算符及其优先次序
3.3.2 逻辑表达式
3.4 用if语句实现选择结构
3.4.1 if语句的三种形式
3.4.2 if语句的嵌套
3.5 用条件表达式实现选择结构
3.6 利用switch语句实现多分支选择结构
3.7 选择结构程序综合举例
本章小结
习题
第4章 循环结构程序设计
4.1 程序需要循环
4.2 用while语句和do…while语句实现循环
4.2.1 用while语句实现循环
4.2.2 用do…while语句实现循环
4.2.3 while循环和do…while循环的比较
4.2.4 递推与迭代
4.3 用for语句实现循环
4.3.1 for语句的执行过程
4.3.2 for语句的各种形式
4.3.3 for循环应用举例
4.4 循环的嵌套
4.5 用break语句和continue语句改变循环状态
4.5.1 用break语句提前退出循环
4.5.2 用continue语句提前结束本次循环
4.6 几种循环的比较
4.7 循环程序举例
本章小结
习题
第5章 利用数组处理批量数据
5.1 数组的作用
5.2 怎样定义和引用一维数组
5.2.1 怎样定义一维数组
5.2.2 怎样引用一维数组元素
5.2.3 一维数组的初始化
5.2.4 利用一维数组的典型算法——递推与排序
5.3 怎样定义和引用二维数组
5.3.1 怎样定义二维数组
5.3.2 怎样引用二维数组的元素
5.3.3 二维数组程序举例
5.3.4 二维数组的初始化
5.4 利用字符数组处理字符串数据
5.4.1 怎样定义字符数组
5.4.2 字符数组的初始化
5.4.3 引用字符数组的元素
5.4.4 字符串和字符串结束标志
5.4.5 字符数组的输入输出方法
5.4.6 有关字符处理的算法
5.4.7 利用字符串处理函数
本章小结
习题
第6章 利用函数进行模块化程序设计
6.1 为什么要使用函数
6.1.1 函数是什么
6.1.2 程序和函数
……
摘要
     第3 章 选择结构程序设计 在顺序结构中,各语句是按排列的先后次序顺序执行的,是无条件的,不必事优选行 任何判断。但在实际生活中,常常有这样的情况: 要根据某个条件是否成立决定是否执 行指定的任务。例如: . 如果你在家,我去拜访你;(需要判断你是否在家) . 如果考试不及格,要补考; (需要判断是否及格) . 周末我们去郊游; (需要判断是否是周末) . 如果a>b,输出a。(需要判断a 是否大于b) 判断的结果应该是一个逻辑值: “是”或“否”,在计算机语言中用“真”和“假”表示。 例如,当a>b 时,满足“a>b”条件,就称条件“a>b”为真,如果a≤b,不满足“a>b”条件,就 称条件“a>b”为假。 由于程序需要处理的问题往往比较复杂,因此,在大多数程序中都会包含条件判断。 选择结构就是根据指定的条件是否满足,决定执行不同的操作(从给定的两组操作中选 择其一)。 3.1简单的选择结构程序 先通过以下几个程序,初步了解怎样在C 语言程序中用选择结构处理问题。 【例3.1】输入两个实数,按代数值由小到大的顺序输出这两个数。 解题思路: 有两个变量a 和b,若a≤b,则两个变量的值不必改变,若a>b,则把a 和b 的值互换,然后顺序输出a 和b,即可实现题目要求。因此此题的算法是: 做一次比较,然 后决定是否进行值的交换。关于两个变量互换值的方法,已在例2.8 中介绍了。 类似这样简单的问题可以不必先写出算法或画流程图,而直接编写程序。或者说,算 法在编程者的脑子里,相当于在算术运算中对简单的问题可以“心算”而不必在纸上写出 来一样。 编写程序: #include int main() 72 { float a,b,temp; printf("please enter a and b: "); scanf("%f,%f",&a,&b); if(a>b) {temp=a;a=b;b=temp;} printf("%7.2f,%7.2f\n",a,b); return 0; } 运行结果: please enter a and b: 3.6,-3.2 ↙ -3.20,3.60 【例3.2】输入a,b,c 三个数,要求按由小到大的顺序输出。 解此题的算法比上一题稍复杂一些。现在先用伪代码写出算法: begin if a>b 将a 和b 对换(a 是a,b 中的小者) if a>c 将a 和c 对换(a 是a,c 中的小者,因此a 是三者中最小者) if b>c 将b 和c 对换(b 是b,c 中的小者,也是三者中次小者) 输出a,b,c 的值 end 编写程序: 按以上算法编写程序。 #include int main() { float a,b,c,temp; printf("please enter a,b,c: "); scanf("%f,%f,%f",&a,&b,&c); if(a>b) {temp=a;a=b;b=temp;}//实现a 和b 的互换 if(a>c) {temp=a;a=c;c=temp;} //实现a 和c 的互换 if(b>c) {temp=b;b=c;c=temp;} //实现b 和c 的互换 printf("%7.2f,%7.2f,%7.2f\n",a,b,c); return 0; } 运行结果: please enter a,b,c: 33.52,-27.65,100.45 ↙ -27.65, 33.52, 100.45 73 3.2选择结构中的关系运算 3.1 节的程序中,在if 语句括号中式的值为3,按“真”处理。由此可见,表达式的类 型不限于逻辑表达式,可以是任意的数值类型(包括整型、实型、字符型、指针型数据等)。 下面的if 语句也是合法的: if('a') printf("%d",'a'); 执行时输出'a' 的ASCII 码97。 (2) if 语句中有内嵌语句,每个内嵌语句都要以分号结束。例如: if (x>0) print ("%f\n",x); else printf("%f\n",-x); 行末各有一个分号(;) 分号是C 语句中不可缺少的部分,即使是if 语句中的内嵌语句也不能例外。如果无此分 号,则出现语法错误。读者可以上机试验一下。 (3) 不要误认为上面是两个语句(一个if 语句和一个else 语句)。它们都是属于同 一个if 语句。else 子句不能作为独立语句单独使用,它只能是if 语句的一部分,与if 配对 使用。( 4) 在if 和else 后面可以只含一个内嵌的操作语句(如上例),也可以有多个操作语 句,但应当用花括号({})将几个语句括起来成为一个复合语句。例如: if (a+b>c && b+c>a && c+a>b) { s=0.5.(a+b+c); area=sqrt(s.(s-a).(s-b).(s-c)); printf("area=%6.2f",area); } else printf("it is not a trilateral"); 注意在else 上面一行的右花括号(})外面不需要再加分号。因为{}内是一个完整的 复合语句,不需要另附加分号。 3.4.2if 语句的嵌套 在if 语句中又包含一个或多个if

蜀ICP备2024047804号

Copyright 版权所有 © jvwen.com 聚文网