本书主要介绍C语言程序设计实验内容及如何将C语言应用于人工智能实践,包含实验指导、实验内容参考答案、测试题及答案解析、附录。通过典型实例分析,帮助学生掌握重点和难点;通过实验内容练习,让学生掌握基本编程方法,培养学生编程应用能力;通过人工智能算法实践,帮助学生理解人工智能的原理。本书将C语言与人工智能相关理论相结合,将C语言应用于人工智能算法实践,有助于培养学生的人工智能相关实践能力。实例由浅入深分析讲解,实验内容也是从实例的模仿编程开始,由易到难安排,便于学生逐步深入学习。本书可作为高等学校“C语言程序设计”课程的教材,也可作为相关爱好者自学C语言程序设计和人工智能算法实践的参考书。
陈燕敏,中国计量大学系主任,主要从事自然语言处理和人工智能的研究工作。主要讲授C程序设计语言、高级程序设计语言、人工智能、计算复杂理论、操作系统、计算机导论等课程。负责全校计算机基础公共课。"C语言程序设计”省级一流本科课程负责人。
第一章 实验指导 1
实验一 上机环境简介 1
实验二 程序设计之顺序结构 10
实验三 程序设计之分支结构 15
实验四 程序设计之循环结构——基于贪心算法求解钱币找零问题 22
实验五 函数——基于遗传算法求解函数最值 36
实验六 数组——基于回溯法求解八皇后问题 50
实验七 指针——二维卷积 62
实验八 结构——基于梯度下降求解线性回归问题 74
实验九 共用体、枚举和位运算* 89
实验十 文件——基于k-近邻算法求解花卉分类问题 95
综合实验 简单动画制作、学生信息管理系统* 105
第二章 实验内容参考答案 108
实验一 上机环境简介 108
实验二 程序设计之顺序结构 108
实验三 程序设计之分支结构 110
实验四 程序设计之循环结构——基于贪心算法求解钱币找零问题 112
实验五 函数——基于遗传算法求解函数最值 118
实验六 数组——基于回溯法求解八皇后问题 132
实验七 指针——二维卷积 136
实验八 结构——基于梯度下降求解线性回归问题 144
实验九 共用体、枚举和位运算* 155
实验十 文件——基于k-近邻算法求解花卉分类问题 157
第三章 测试题及答案解析 163
测试题A 163
测试题A答案及解析 169
附录A ASCII码表 171
附录B 常用标准库函数 172
参考文献 174