扑克牌的结构定义
来源:互联网 发布:淘宝商家热线人工服务 编辑:程序博客网 时间:2024/05/18 00:56
使用结构定义一副扑克牌,并对变量赋值
扑克牌有四种花色:草花,方块,红心和黑桃,可将花色说明为枚举类型。扑克牌类型为结构类型,包含两个成分:分别存储牌的花色和牌的面值,其中面值为字符数组。
下面是代码的实现部分:
#include <stdio.h>#include <stdlib.h>#include <string.h>/** * 使用结构定义一副扑克牌, * 并对变量赋值 * * 扑克牌有四种花色:草花,方块,红心 * 和黑桃,可将花色说明为枚举类型。扑克牌类型 * 为结构类型,包含两个成分:分别存储 * 牌的花色和牌的面值,其中面值为字符数组 */enum suits{CLUBS,DIAMONDS,HEARTS,SPADES};/** 纸牌结构 **/struct card{ enum suits suit; char value[3];};/** 52张牌 **/struct card cards[52];/** 纸牌的面值 **/char values[][3] = {"A","2","3","4","5","6", "7","8","9","10","J","Q","K"};/** 纸牌类型名称 **/char names[][10] = {"CLUBS","DIAMONDS","HEARTS","SPADES"};int main(){ int i,j; enum suits s; for(i = 0;i < 13;i++){ for(s = CLUBS;s <= SPADES;s++){ j = i * 4 + s; cards[j].suit = s; strcpy(cards[j].value,values[i]); } } for(j = 1;j <= 52;j++){ printf("<%s\t%s>\t",names[cards[j].suit],cards[j].value); if(j % 4 == 0){ printf("\n"); } } return 0;}
下面是程序的输出结果:
总的来说,这个程序是相对比较简单的,在这里,我们学习使用了结构的定义,以及enum枚举的使用方法。
在实际问题中,有些变量的取值被限定在一个有限的范围内。例如一个星期有7天,一年只有12个月等,这些都可以使用枚举enum来定义。需要说明的是,枚举类型是一种基本数据类型,而不是一种构造结构。
1 0
- 扑克牌的结构定义
- 定义类的结构
- pthread_t结构的定义
- 结构体的定义
- 结构变量的定义
- 中间件的定义、结构
- 结构体的定义
- 结构体的定义
- 结构体的定义和结构变量的定义
- 三层结构的确切定义
- 流程定义的层次结构
- 结构的定义与使用
- C结构定义的问题
- 结构的定义和使用
- rtp-rtcp定义的结构
- 1.3 定义文件的结构
- 三层结构的确切定义
- 三层结构的确切定义
- 使用AVAudioPlayer播放音频文件
- 【第四章】 资源 之 4.4 Resource通配符路径 ——跟我学spring3
- jQuery AJAX提交表单并输出返回值
- 实现医技工作站的心电图功能的代码(十九)
- 十、反射机制
- 扑克牌的结构定义
- C# 的三种序列化方法
- 在开发Ext 项目中如果遇到 Uncaught TypeError: Cannot read property 'insertAdjacentHTML' of null
- 眼前事极致了,下一步也就清楚了
- Eclipse中导入Java Project/Java Web系统,如何发布到Tomcat
- 【第五章】Spring表达式语言 之 5.1 概述 5.2 SpEL基础 ——跟我学spring3
- Android 事件分发机制
- Java线程:概念与原理(一)
- 【第五章】Spring表达式语言 之 5.3 SpEL语法 ——跟我学spring3