第十五周项目二 洗牌
2016-06-17 17:32
375 查看
/*copyright(c)2016.烟台大学计算机学院 * All rights reserved, * 作者:刘金石 * 完成日期:2016年6月17日 * 问题描述:在扑克牌游戏中,每次游戏开始都要求把54张牌 重新排列一下,称为洗牌。试编写程序将一副扑 克牌(用54个整数1~54表示)随机洗好后,顺序 输出54张牌的情况。 */ #include <iostream> #include <stdlib.h> #include <time.h> using namespace std; void Sort(int str[], int n) { int num; int i; for(i=n-1;i>0;--i) { num=rand()%(i+1); if(num!=i) swap(str[num], str[i]); } } int main() { int a[54]; int i; for(i=0;i<54;++i) a[i]=i+1; cout<<"未洗牌前:"<<endl; for(i=0;i<54;++i) { if((i+1)%20==0) cout<<a[i]<<endl; else cout<<a[i]<<" "; } cout<<endl<<"洗牌之后:"<<endl; Sort(a, 54); for(i=0;i<54;++i) { if((i+1)%20==0) cout <<a[i] <<endl; else cout<<a[i]<<" "; } return 0; }
运行结果:
相关文章推荐
- 签名Android应用程序
- Nginx服务器的搭建
- 财政一些概念
- 【操作系统】实验四 主存空间的分配和回收
- 曲演杂坛--为什么SELECT语句会被其他SELECT阻塞?
- ios开发——AirPlay相关文章
- 几何校正;正射校正;几何配准;影像配准,空间配准;辐射定标;大气校正;辐射校正的概念
- I2C设备地址详解
- PHP多线程数据交叉存储 防止读取重复数据
- 剑指offer(33)-两个链表的第一个公共结点
- 首次进入APP透明提示效果
- 你的经验正在蒙蔽你的双眼
- 程序员必知的七个图形工具
- camel 路由跳转组件使用
- 钉钉关联微信公众号刷步数思路
- 自定义锁超时
- H264的句法和语义(二)
- 如何在Latin 输入法中增加一种语言的词库
- Android 自定义View——分类与流程
- 面向对象编程