【C语言程序设计第四版】例11-6代码
2021/9/25 17:11:58
本文主要是介绍【C语言程序设计第四版】例11-6代码,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
#include <stdio.h> #include <stdlib.h> #include <time.h> struct card{ int suit; int face; }; void deal(struct card *wdeck){ int i , m, t; static int temp[52] = {0}; srand(time(NULL)); // 放入时间戳作为随机种子 for (i = 0; i < 52; i++) { while (1) { m = rand() % 52; if (temp[m] == 0) { break; } } temp[m] = 1; // 找出一张还没定义的排 // 发牌的逻辑设计巧妙,值得学习 t = (i % 4) * 13 + (i /4); wdeck[t].suit = m / 13; wdeck[t].face = m % 13; } } int main(void){ int i; struct card deck[52]; const char *suit[] = {"Heart", "Diamond", "Club", "Spade"}; const char *face[] = {"A", "K", "Q", "J", "10", "9", "8", "7", "6", "5", "4", "3", "2"}; deal(deck); for (i=0; i<52; i++) { if (i % 13 == 0) { printf("Player %d:\n", i/13+1); } printf("%s of %s\n", face[deck[i].face], suit[deck[i].suit]); } return 0; }
这篇关于【C语言程序设计第四版】例11-6代码的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23增量更新怎么做?-icode9专业技术文章分享
- 2024-11-23压缩包加密方案有哪些?-icode9专业技术文章分享
- 2024-11-23用shell怎么写一个开机时自动同步远程仓库的代码?-icode9专业技术文章分享
- 2024-11-23webman可以同步自己的仓库吗?-icode9专业技术文章分享
- 2024-11-23在 Webman 中怎么判断是否有某命令进程正在运行?-icode9专业技术文章分享
- 2024-11-23如何重置new Swiper?-icode9专业技术文章分享
- 2024-11-23oss直传有什么好处?-icode9专业技术文章分享
- 2024-11-23如何将oss直传封装成一个组件在其他页面调用时都可以使用?-icode9专业技术文章分享
- 2024-11-23怎么使用laravel 11在代码里获取路由列表?-icode9专业技术文章分享
- 2024-11-22怎么实现ansible playbook 备份代码中命名包含时间戳功能?-icode9专业技术文章分享