C语言编程:字符串排序与常胜游戏小程序
版权申诉
133 浏览量
更新于2024-07-01
收藏 22KB PDF 举报
"C语言简单小程序简单算法.pdf 包含两个C语言程序示例,一个是字符串排序,另一个是21根常胜游戏的实现。这些程序适用于初学者学习和考试复习。"
在C语言中,编写小程序是学习编程的基础。这里有两个小程序,都是在Turbo C 2.0编译器环境下编译并通过的。
第一个程序是字符串排序,它使用了经典的冒泡排序算法。冒泡排序是一种简单的排序方法,通过比较相邻元素并交换位置来逐步将较大的元素移动到序列末尾。在这个程序中:
```c
void paixu(char *p[5]) {
int i, j;
char *q;
for (i = 0; i < 4; i++) // 遍历数组4次,因为最后一次排序已经保证了最大值在正确位置
for (j = 0; j < 4 - i; j++) // 比较并交换相邻的字符串
if (strcmp(p[j], p[j + 1]) > 0) { // 使用strcmp函数比较字符串大小
q = p[j]; // 保存当前元素的指针
p[j] = p[j + 1]; // 将较大的字符串移到前面
p[j + 1] = q; // 将较小的字符串移到后面
}
}
```
主函数`main()`部分,首先分配内存存储5个字符串,并通过`scanf`读取用户输入,然后调用`paixu`进行排序,最后打印排序后的结果。
第二个程序是一个简单的游戏模拟,称为21根常胜游戏。游戏规则是,两个人轮流从一叠总共有21根的棍子中取走1至4根,取走最后一根的人输。程序使用递归实现,当只剩1根棍子时,由当前玩家自动输掉游戏。核心部分在于根据剩余棍子数判断玩家可能的取法,然后模拟电脑的取法,直到游戏结束。
```c
stick(int left) {
int take;
if (left == 1) {
// 游戏结束,玩家输
} else {
// 获取玩家的取法
// 模拟电脑取法
// 继续游戏
}
}
```
这个程序可以帮助理解递归以及基本的游戏逻辑,是学习C语言控制流程和函数应用的好例子。
这两个小程序展示了C语言的基本语法、输入输出、内存管理(动态内存分配)以及基本算法的应用,适合初学者作为练习和备考使用。通过理解和运行这些程序,可以加深对C语言的理解,并提升编程能力。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2021-09-14 上传
2021-10-01 上传
2021-10-16 上传
2021-10-28 上传
2021-10-01 上传
2022-05-08 上传
cjd13107639592
- 粉丝: 0
- 资源: 5万+
最新资源
- MATLAB新功能:Multi-frame ViewRGB制作彩色图阴影
- XKCD Substitutions 3-crx插件:创新的网页文字替换工具
- Python实现8位等离子效果开源项目plasma.py解读
- 维护商店移动应用:基于PhoneGap的移动API应用
- Laravel-Admin的Redis Manager扩展使用教程
- Jekyll代理主题使用指南及文件结构解析
- cPanel中PHP多版本插件的安装与配置指南
- 深入探讨React和Typescript在Alias kopio游戏中的应用
- node.js OSC服务器实现:Gibber消息转换技术解析
- 体验最新升级版的mdbootstrap pro 6.1.0组件库
- 超市盘点过机系统实现与delphi应用
- Boogle: 探索 Python 编程的 Boggle 仿制品
- C++实现的Physics2D简易2D物理模拟
- 傅里叶级数在分数阶微分积分计算中的应用与实现
- Windows Phone与PhoneGap应用隔离存储文件访问方法
- iso8601-interval-recurrence:掌握ISO8601日期范围与重复间隔检查