C语言程序设计实验指导与实训(第二版)
-
【作 者】主编 倪燃
【I S B N 】978-7-5226-2786-1
【责任编辑】鞠向超
【适用读者群】本专通用
【出版时间】2024-10-21
【开 本】16开
【装帧信息】平装(光膜)
【版 次】第2版第1次印刷
【页 数】284
【千字数】454
【印 张】17.75
【定 价】¥49
【丛 书】应用型高等院校改革创新教材
【备注信息】
简介
本书特色
前言
章节列表
精彩阅读
下载资源
相关图书
本书以实例为基础,紧密结合高校计算机基础教育的实验教学大纲,同时符合最新的全国计算机等级考试大纲要求。在保持第一版中18个课内实验项目和1个综合实训项目结构不变的情况下,编者对书中157个例题进行了精心改进及重新选取,并以例题、习题和训练三种形式呈现给读者。这样的设计旨在帮助学生和自学者通过由浅入深的练习,从基础编程语言学习逐步过渡到复杂编程问题的解决,从而培养学生的编程思维和解决问题的能力。
本书所有程序按照目前全国计算机等级考试二级C语言程序设计的考试环境要求,在Visual C++ 2010环境下进行编译执行。实验1中提供了Visual C++ 2010和Visual C++ 6.0两种编程环境下的编译、调试、运行全过程的步骤指导,为不同层次的学生提供有效的帮助。
本书适合作为高等院校计算机相关专业的程序设计课程的实验教材使用,也适用于其他工科专业计算机技术基础编程课程的上机实验指导和广大编程爱好者自学使用。通过本书的学习,读者将能够掌握C语言的核心知识和编程技能,为进一步的软件开发和系统设计打下坚实的基础。
本书提供实例的完整源代码,读者可以从中国水利水电出版社网站(www.waterpub.com.cn)或万水书苑网站(www.wsbookshow.com)免费下载。
内容全面,讲解细致 全书内容由浅入深,详细地讲解了C 语言程序设计基础内容。
理实一体,突出应用 书中以大量例题练习为主体,实验步骤详细明确、易学易懂。
资源丰富,方便教学 图文并茂,配有考试真题和程序运行结果,帮助理解和学习。
在快速发展的技术时代,C语言作为编程世界的基石,仍然在计算机科学教育中占据着举足轻重的地位。为了适应新时代的教学需求和全国计算机等级考试二级C语言程序设计的最新要求,《C语言程序设计实验指导与实训》(第二版)经过全面修订,以更好地服务于广大学生和教师。
本书在保持第一版的系统结构和实用性的基础上进行了内容的提升和更新,以求涵盖最新的技术和教学理念。我们深知实验教学至关重要,是理论与实践之间的桥梁,因此,在本次修订中,我们特别增加了实验内容的深度和广度,同时对每个实验的“习题与思考”部分进行了重点提升,设计编排了基础知识点、编程技巧及程序设计思维训练等方面的相关选择题及程序设计题,旨在通过混合式课堂的课前、课中、课后过程性考核,丰富教学手段,提高教学质量。同时,按照目前全国计算机等级考试二级C语言程序设计的考试环境要求,书中增加了在Visual C++ 2010环境下进行编译执行C语言程序的步骤指导,全部程序均适用于多个编程环境。
本书分为实验指导与综合实训两部分。实验指导部分包含了 18 个精心设计的课内实验项目,项目涵盖Visual C++集成开发环境、顺序结构程序设计、选择结构程序设计、循环结构程序设计、数组程序设计、函数综合应用、指针处理函数、指针结构体综合应用、文件综合应用等C语言程序设计基础内容。每个实验项目都包含实验目的、实验内容及步骤、典型习题讲解、二级考试提高训练和习题与思考五个部分,教师可以根据学生的实际情况,安排上机必做、选做及课后练习。综合实训部分则采用了一个完整的学生成绩信息管理系统案例,通过模块化的划分、流程设计和程序编写,为相关专业的C语言课程设计提供了开发模板和程序样例。作者提供所有程序源代码,读者可以从中国水利水电出版社网站和万水书苑网站下载,网址为:http://www.waterpub.com.cn和http://www.wsbookshow.com。
本书由倪燃任主编,负责全书的统稿、修改、定稿工作,樊保军、赵慧任副主编,并由吴昌平任主审。本书主要编写人员分工如下:实验1及综合实训部分由倪燃编写,实验2~4由樊保军编写,实验5~7由杨海编写,实验8、9由罗晨编写,实验10~12由吴媚编写,实验13~15由金继伟编写,实验16~18由赵慧编写。在编写本书的过程中,我们团队倾注了大量的心血和热情,希望能够为广大读者提供一本既有深度又易于理解的实验教材。在此,谨向本次改版和第一版的参编作者以及为本书出版付出辛勤劳动的同志表示感谢!我们坚信,通过本书的学习,学生将能够提升自己的编程能力和解决问题的能力,从而在未来的学习和工作中取得更大的成就。愿本书成为学生探索C语言世界之旅的良师益友,陪伴学生在编程的道路上不断前行,解锁新的技能,实现自我超越。
由于本书作者水平有限,书中难免存在缺点与错误,恳请广大读者批评指正。
编 者
2024年8月
实验1 Visual C++集成开发环境 1
一、实验目的 1
二、实验内容及步骤 1
【例题1.1】使用VC2010显示Hello,World! 1
【例题1.2】使用VC6显示HELLO WORLD! 10
三、典型习题讲解 13
【习题1.1】输出个性化欢迎词 13
【习题1.2】输入三个值并输出最大值 16
四、全国计算机等级考试介绍 18
实验2 顺序结构程序设计 19
一、实验目的 19
二、实验内容及步骤 19
【例题2.1】计算并输出商品的总价格 19
【例题2.2】单精度变量的赋值和输出 20
【例题2.3】字符型变量的赋值和输出 21
【例题2.4】基本数据类型变量的综合应用 22
【例题2.5】求解一元二次方程的根 23
【例题2.6】printf()函数应用 25
【例题2.7】putchar()函数应用 26
三、典型习题讲解 27
【习题2.1】计算国民生产总值增长百分比 27
【习题2.2】scanf()函数应用 28
【习题2.3】计算圆、球、圆柱的相关数据 29
四、二级考试提高训练 30
【训练2.1】自增和自减运算符的应用 30
【训练2.2】自增运算符前置和后置的区别 31
五、习题与思考 33
实验3 选择结构程序设计(1) 35
一、实验目的 35
二、实验内容及步骤 35
【例题3.1】输入两个实数并比较大小 35
【例题3.2】输入成绩,输出等级 37
三、典型习题讲解 39
【习题3.1】逻辑表达式的练习 39
【习题3.2】求三个数的最大值 39
【习题3.3】分段函数计算输出 40
四、二级考试提高训练 41
【训练3.1】组合表达式运算结果分析 41
【训练3.2】判断三角形是否是直角三角形 42
五、习题与思考 43
实验4 选择结构程序设计(2) 45
一、实验目的 45
二、实验内容及步骤 45
【例题4.1】使用断点和变量监视器调试程序 45
【例题4.2】四则运算程序 48
【例题4.3】使用break语句进行案例分析 49
三、典型习题讲解 50
【习题4.1】使用switch语句实现成绩等级输出 50
【习题4.2】整数排序器 51
四、二级考试提高训练 52
【训练4.1】逻辑表达式运算结果分析 52
【训练4.2】星期计算器 52
【训练4.3】日期计算器 53
五、习题与思考 54
实验5 循环结构程序设计(1) 57
一、实验目的 57
二、实验内容及步骤 57
【例题5.1】求s=1+3+5+…+99 57
【例题5.2】使用do…while语句求s=1+3+5+…+99 59
【例题5.3】字符分类计数器 60
【例题5.4】奇特的水仙花数 61
三、典型习题讲解 63
【习题5.1】求1!+2!+…+20!的值 63
【习题5.2】自由落体小球反弹路径计算 64
【习题5.3】猴子吃桃问题 65
四、二级考试提高训练 66
【训练5.1】整数的倒序输出 66
【训练5.2】辗转相减求最大公约数 67
五、习题与思考 68
实验6 循环结构程序设计(2) 70
一、实验目的 70
二、实验内容及步骤 70
【例题6.1】使用双重for循环语句求1!+2!+3!+…+20! 70
【例题6.2】星号创意图形 71
【例题6.3】分析双重for循环语句运行过程 73
【例题6.4】输出九九乘法表 75
三、典型习题讲解 76
【习题6.1】求最大公约数和最小公倍数 76
【习题6.2】求s=a+aa+aaa+…+aaa…a的值 77
【习题6.3】找出1000以内的所有完数 78
【习题6.4】求序列前20项之和 80
四、二级考试提高训练 80
【训练6.1】输出数字方阵 80
【训练6.2】袋中取球问题 82
五、习题与思考 83
实验7 顺序、选择、循环结构综合应用 85
一、实验目的 85
二、实验内容及步骤 85
【例题7.1】求1到100之间的奇数之和与偶数之和 85
【例题7.2】求分母为奇数的分数之和 87
【例题7.3】大小写字母转换 88
【例题7.4】百鸡问题求解 89
【例题7.5】输出数字金字塔 91
三、典型习题讲解 92
【习题7.1】乒乓球队比赛抽签 92
【习题7.2】菱形*号拼图打印 93
四、二级考试提高训练 95
【训练7.1】求整数num的各位数字之和 95
【训练7.2】斜三角形数字组合输出 96
五、习题与思考 97
实验8 数组程序设计(1) 99
一、实验目的 99
二、实验内容及步骤 99
【例题8.1】输出下标为奇数的数组元素 99
【例题8.2】求一维数组的最大值及其位置 100
【例题8.3】冒泡排序 101
【例题8.4】水仙花数 102
【例题8.5】求二维数组的最大值及其位置 103
三、典型习题讲解 104
【习题8.1】矩阵主对角线元素求和 104
【习题8.2】一维数组逆序 105
【习题8.3】杨辉三角形 106
【习题8.4】选择排序 107
四、二级考试提高训练 108
【训练8.1】折半查找法 108
【训练8.2】有序数组中插入数据 109
【训练8.3】求二维数组的鞍点 110
五、习题与思考 112
实验9 数组程序设计(2) 114
一、实验目的 114
二、实验内容及步骤 114
【例题9.1】计算并输出字符串长度 114
【例题9.2】字符数组中实现大小写转换 115
【例题9.3】复制字符数组 116
【例题9.4】求字符串中的最大值及其位置 117
【例题9.5】在字符串中摘取数值 118
三、典型习题讲解 119
【习题9.1】字符串的连接 119
【习题9.2】字符串的比较 120
【习题9.3】统计字符在字符串中出现的次数 121
【习题9.4】使用字符串输出图形 122
四、二级考试提高训练 122
【训练9.1】单词统计更改 122
【训练9.2】字符串排序 123
五、习题与思考 125
实验10 函数(1) 128
一、实验目的 128
二、实验内容及步骤 128
【例题10.1】素数判定函数 128
【例题10.2】最大公约数和最小公倍数求值函数 129
【例题10.3】创意菱形星号图形函数 130
三、典型习题讲解 132
【习题10.1】一元二次方程求根函数 132
【习题10.2】整数转字符函数 133
四、二级考试提高训练 134
【训练10.1】数值校正函数 134
【训练10.2】组合功能函数 135
【训练10.3】低位输出函数 136
五、习题与思考 137
实验11 函数(2) 141
一、实验目的 141
二、实验内容及步骤 141
【例题11.1】函数嵌套法求1!+2!+3!+…+20! 141
【例题11.2】快速排序递归函数 142
【例题11.3】字符逆序输出递归函数 144
三、典型习题讲解 145
【习题11.1】进制转换函数 145
【习题11.2】整数转字符串递归函数 146
四、二级考试提高训练 147
【训练11.1】斐波那契数列求值函数 147
【训练11.2】数组数据搬家函数 149
【训练11.3】成绩统计函数 151
五、习题与思考 153
实验12 函数综合应用 156
一、实验目的 156
二、实验内容及步骤 156
【例题12.1】分段函数 156
【例题12.2】水仙花数判定函数 157
【例题12.3】收敛级数近似值计算函数 158
【例题12.4】数组数据比较排序函数 159
【例题12.5】求二维整型数组最大值函数 161
三、典型习题讲解 162
【习题12.1】统计字符串长度函数 162
【习题12.2】字符串比较排序函数 163
【习题12.3】字符串子串删除函数 164
【习题12.4】二维数组按列获取最大值函数 166
四、二级考试提高训练 167
【训练12.1】奇数倒数求和函数 167
【训练12.2】整数按位求立方和函数 168
【训练12.3】二维数组数据求和函数 169
五、习题与思考 170
实验13 指针(1) 174
一、实验目的 174
二、实验内容及步骤 174
【例题13.1】使用指针输出变量值 174
【例题13.2】使用指针交换变量值 175
【例题13.3】使用指针输入输出数组数据 176
三、典型习题讲解 177
【习题13.1】使用指针从小到大输出变量 177
【习题13.2】使用指针对换数组数据 178
四、二级考试提高训练 180
【训练13.1】使用指针统计年龄段人数 180
【训练13.2】使用指针计算平均成绩 181
【训练13.3】使用指针获取数列 182
五、习题与思考 183
实验14 指针(2) 186
一、实验目的 186
二、实验内容及步骤 186
【例题14.1】使用指针输出年、月、日 186
【例题14.2】使用指针编写冒泡排序算法函数 187
【例题14.3】使用指针实现字符串大小写字母转换 189
三、典型习题讲解 190
【习题14.1】使用指针实现字符串排序 190
【习题14.2】使用指针求解约瑟夫环问题 191
【习题14.3】使用指针对矩阵进行转置 192
四、二级考试提高训练 193
【训练14.1】使用指针统计单词个数 193
【训练14.2】使用指针比较两个字符串的长度 194
【训练14.3】使用指针判定回文字符串 195
五、习题与思考 196
实验15 指针处理函数 199
一、实验目的 199
二、实验内容及步骤 199
【例题15.1】使用指针函数调用函数 199
【例题15.2】按要求顺序或逆序排序整数序列 200
【例题15.3】按要求顺序、逆序或原序排序字符串 201
三、典型习题讲解 203
【习题15.1】计算定积分函数 203
【习题15.2】使用指针在字符串中获取整数 204
四、二级考试提高训练 205
【训练15.1】使用指针函数找数组最大值 205
【训练15.2】使用函数指针输出学生成绩 207
五、习题与思考 208
实验16 结构体 211
一、实验目的 211
二、实验内容及步骤 211
【例题16.1】使用结构体管理学生成绩 211
【例题16.2】管理动物和他们爱吃的食物 213
【例题16.3】采用头插法操作单链表类型数据 214
三、典型习题讲解 215
【习题16.1】使用结构体计算今天是今年的第几天 215
【习题16.2】使用链表实现围圈报数 216
四、二级考试提高训练 218
【训练16.1】链表的合并问题 218
【训练16.2】链表信息查重 220
五、习题与思考 223
实验17 指针结构体综合应用 226
一、实验目的 226
二、实验内容及步骤 226
【例题17.1】使用结构体统计成绩 226
【例题17.2】使用结构体管理成绩 228
【例题17.3】使用结构体统计管理学生多门课成绩 229
三、典型习题讲解 231
【习题17.1】管理学生成绩段分布统计 231
【习题17.2】根据学号查询学生成绩数据 233
【习题17.3】根据成绩查询学生信息 234
四、二级考试提高训练 235
【训练17.1】设计链表结构统计管理学生成绩 235
【训练17.2】使用链表查询保存学生信息 237
【训练17.3】使用结构体实现查询年龄姓名 238
五、习题与思考 240
实验18 文件的应用 243
一、实验目的 243
二、实验内容及步骤 243
【例题18.1】将数据存入文件并读出 243
【例题18.2】处理输入的字符串并存入文件 244
【例题18.3】追加合并两个文件 246
三、典型习题讲解 247
【习题18.1】根据现有文件新建保存新文件 247
【习题18.2】存盘现有学生成绩数据 249
【习题18.3】统计现有文件信息 251
四、二级考试提高训练 251
【训练18.1】从文件中读取数据并存入其他文件 251
【训练18.2】存盘与数据读取 252
五、习题与思考 254
实训 C语言综合设计 257
参考文献 273
- 基于AI的Java技术项目实战 [主编 尹慧超 郭 娜 刘庆杰]
- 信息处理技术员真题及模考卷精析(适用机考) [主编 薛大龙]
- 工程测量 [主编 熊梅 王灼英]
- 复变函数与积分变换 [主编 李广柱]
- 航空工程材料英语 [主编 陈跃华 李完小]
- 飞机维修专业英语教程——飞机主要结构与部件(第二版) [主编 赵迎春 陈凯军]
- 1000MW级超超临界燃煤发电机组设计方案图集 [张斌 孙立刚]
- 600MW级超超临界燃煤发电机组设计方案图集 [张斌 孙立刚]
- 开心英语自然拼读 [主 编 秦小雅 谢红晶 马贵金]
- 系统集成项目管理工程师考前冲刺100题(第三版) [刘毅 朱小平 编著]
- 系统集成项目管理工程师(适用第3版大纲)一站通关 [指尖疯 编著]
- 高性能架构——多级网关与多级缓存实践 [李晨翔(@风间影月) 著]
- 皓月繁星:24位大咖的心理课堂 [主编 林赞歌]
- 系统集成项目管理工程师案例分析一本通(第二版) [王树文 编著]
- 信息安全工程师考前冲刺100题(第二版) [施 游 朱小平 编著]
- 信息系统项目管理师考前冲刺100题(配套第四版大纲) [刘毅 朱小平 编著]
- SQL Server 2019数据库实战教程 [主编 岳付强 曾陈萍 唐承佳]
- 大学生创新创业实践—机械类 [主编 林卿 史洪玮 沈洋]
- 程序思维与C语言实现 [张祎 王俊海 吕波]
- 国际交流英语 [金忍冬]
- 网络组建与互联 [马峰柏 李佼辉]
- 画屏—2023年中央媒体国家水网建设新闻报道汇编 [水利部宣传教育中心 编]
- 大学计算机基础教程(Windows 10+WPS Office 2019) [吴志攀 刘利]
- Python程序设计及实践教程 [肖朝晖]
- MySQL数据库技术项目化教程——基于OBE理念 [主编 刘崇巍 庞金龙]
- 新时代大学生入学教育 [主编 程静 周毅 周世兵]
- 计算机信息素养基础(第二版) [主编 陈艳]
- 计算机基础与应用(第二版) [主编 秦凯]
- 计算机网络技术实训教程(第二版) [主编 高良诚]
- 高职英语语法教程 [主编 汪莉 高小兵 张学仪]