- 浏览: 279253 次
- 性别:
文章分类
最新评论
整理自:《C Primer Plus》第五版
此程序包含三个文件:
diceroll.cpp :包含两个函数 rollem(int)和roll_n_dice(int,int)
diceroll.h :头文件
manydice.cpp :主函数所在文件
diceroll.cpp文件:
//掷骰子的模拟程序 #include "diceroll.h" #include<stdio.h> #include<stdlib.h> //为rand()函数提供类库 int roll_count = 0; //外部链接 //掷骰子 static int rollem(int sides) //这个文件的私有函数 { int roll; roll = rand() % sides + 1; ++roll_count; return roll; } int roll_n_dice(int dice,int sides) { int d; int total = 0; int temp; if(sides < 2) //边数少于2条 { printf("Need at least 2 sides.\n"); return -2; } if(dice < 1) //骰子数少于一个 { printf("Need at least 1 dice.\n"); return -1; } printf("\n产生的骰子数:\n"); for(d = 0; d < dice;d++) { temp = rollem(sides); total +=temp; printf(" %d",temp); } putchar('\n'); return total; }
diceroll.h文件:
//diceroll.h extern int roll_count; //掷骰子数 int roll_n_dice(int dice,int sides);
manydice.c文件
//manydice.cpp -- 多次掷骰子的模拟程序 //与diceroll.cpp一起编译 #include<stdio.h> #include<stdlib.h> //为srand()函数提供原型 #include<time.h> //为time()函数提供原型 #include "diceroll.h" //为roll_n_dice()和roll_count 提供原型 int main(void) { int dice,roll; int sides; //骰子的边数 srand((unsigned int)time(0)); //随机化种子 printf("Enter the number of sides per dice,0 to stop.\n"); while((scanf("%d",&sides) == 1) && sides > 0) { printf("how many dice?\n"); scanf("%d",&dice); //骰子数 roll = roll_n_dice(dice,sides); //得到的总数 printf("you have rolled a %d using %d %d-sided dice.\n",roll,dice,sides); printf("How many sides? enter 0 to stop.\n"); } printf("the rollem() function was called %d times.\n",roll_count); printf("GOOD FUTUNE TO YOU !\n"); }
发表评论
-
C中结构体
2013-01-09 15:47 591把结构体保存到文件中,用fwrite()函数: fwrite ... -
关于socket编程中基本函数介绍
2012-11-03 13:57 997源自:http://blog.sina.com.cn/s/bl ... -
C中需要注意的小问题
2012-09-27 08:59 7831.在用scanf()函数读入double型数值时要用%lf的 ... -
指针和多维数组
2011-12-26 10:03 786摘自:《C primer plus》 指针和多位数组 ... -
C中<ctype.h>库
2011-12-19 20:21 695标准库<ctype.h> 1 ... -
C中double类型数据的输入和输出
2011-12-19 10:04 12347double a; scanf(" ... -
C中printf()和scanf()函数说明
2011-12-16 19:58 1559下面是对printf()和scanf()函数的说明: ... -
C中转义序列及其含义
2011-12-15 20:27 942转义序列: 序列 ... -
C中各数据类型取值范围
2011-12-15 19:31 13651.标准头文件<limits.h>中包含了 ... -
C中常用的类型转换函数
2011-12-14 17:34 785源自:http://hi.baidu.com/hao_%BF% ... -
C语言格式化输出系统时间
2011-12-14 17:04 5899源自:http://blog.csdn.net/jiadeli ... -
C中目标代码文件,可执行文件和库
2011-12-14 10:19 1932C编程的基本策略是使用程序将源代码文件转换为可执行 ... -
vs2008下vc的库函数及头文件存放位置
2011-12-13 22:14 4504在写C/C++程序时总会在开头包含一些头文件,如:#inclu ... -
malloc()函数
2011-12-12 17:35 0待写 -
C中字符串的输入输出及相关函数
2011-12-27 21:59 3821//本节内容摘自对Stephen Prata的《C Prime ... -
指针的基本操作以及关于指针的注意事项
2011-12-11 17:42 896一. 指针的基本操作有:赋值(assignment),求值(v ... -
关于*与++的优先级
2011-12-11 16:53 1663C中一元运算符*和++具有相等的优先级,但它们在结合时是从右向 ... -
C中关于数组参数的传递
2011-12-09 11:43 894编写一个对数组进行操作的函数,目的是返回数组内所用元素的和。 ... -
C中有关数组的说明
2011-12-09 11:10 747下面介绍一下关于数组的一些说明: 在数组声明时必须 ... -
C语言中对sizeof()和strlen()的说明
2011-12-09 10:01 10931.sizeof函数 sizeof函数返回表达式所占的内存空 ...
相关推荐
掷骰子小程序,利用C语言随机数生成函数,产生的随机数,模拟掷骰子随机出现的1-6数字,直接可以运行的小程序。
算法说明 1、初始投掷:如果总是点数:2、3、12,则庄家赢 如果总点数是:7、12,...2、初始投掷的总点数作为目标值,玩家继续掷两个骰子, 直到总点数匹配目标,或者总点数是7. 如果总点数是7,则庄家赢;否则玩家赢.
通过伪随机数模拟掷骰子的点数,设计并实现了一个基于多线程方式模拟4人掷骰子游戏程序,并对1 000次游戏中每个游戏者获胜的次数进行统计。可以看出,在多次游戏中,每个游戏者获胜的概率符合概率分布规律。程序运行...
我们将要模拟一个非常流行的游戏——掷骰子。 骰子的形式多种多样, 最普遍的是使用两个6面骰子。在一些冒险游戏中,会使用5种骰子:4面、6 面、8面、12面和20面。聪明的古希腊人证明了只有5种正多面体,它们的所 有...
假设有2个骰子,一个表示花色,一个表示牌点,模拟随机掷骰子,把骰子对应的牌翻过去,然后再掷骰子,再翻牌,.....如此100次。最后,输出还是正面向上的那些纸牌。 功能要求: 1) 能表示纸牌的花色和点数; 2) 能...
DiceZone是一个掷骰子模拟器应用程序,它确实使您进入了区域。 获得从命令行内掷骰子的能力。 用法 roll命令会将骰子掷到虚表上。 reset命令用于将所有骰子设置为其初始值,以便在您玩的游戏中重新使用。 您知道...
92 掷骰子游戏 93 弹力球 94 俄罗斯方块 95 24点扑克牌游戏 96 贪吃蛇 97 潜水艇大战 98 机器人大战 99 图形模式下的搬运工 100 十全十美游戏 101 强大的通信录 102 ...
实例92 掷骰子游戏 250 实例93 弹力球 252 实例94 俄罗斯方块 253 实例95 24点扑克牌游戏 257 实例96 贪吃蛇 260 实例97 潜水艇大战 262 实例98 机器人大战 265 实例99 图形模式下的搬运工 ...
实例92 掷骰子游戏 250 实例93 弹力球 252 实例94 俄罗斯方块 253 实例95 24点扑克牌游戏 257 实例96 贪吃蛇 260 实例97 潜水艇大战 262 实例98 机器人大战 265 实例99 图形模式下的搬运工 266 实例...
实例92 掷骰子游戏 250 实例93 弹力球 252 实例94 俄罗斯方块 253 实例95 24点扑克牌游戏 257 实例96 贪吃蛇 260 实例97 潜水艇大战 262 实例98 机器人大战 265 实例99 图形模式下的搬运工 266 实例...
实例92 掷骰子游戏 250 实例93 弹力球 252 实例94 俄罗斯方块 253 实例95 24点扑克牌游戏 257 实例96 贪吃蛇 260 实例97 潜水艇大战 262 实例98 机器人大战 265 实例99 图形模式下的搬运工 266 实例...
MATLAB数据字典生成代码数据分析基础 ...2020年11月2日:编写一个名为dicerolls的Python函数,该函数模拟掷骰子。 您的函数应采用两个参数:骰子k的数量和掷骰子n的次数。 该函数应模拟n次随机滚动k个
java模拟掷骰子2个 1个目标文件,输出演示。 java凭图游戏 一个目标文件,简单。 java求一个整数的因子 如题。 Java生成密钥的实例 1个目标文件 摘要:Java源码,算法相关,密钥 Java生成密钥、保存密钥的...
java模拟掷骰子2个 1个目标文件,输出演示。 java凭图游戏 一个目标文件,简单。 java求一个整数的因子 如题。 Java生成密钥的实例 1个目标文件 摘要:Java源码,算法相关,密钥 Java生成密钥、保存密钥的实例源码...
java模拟掷骰子2个 1个目标文件,输出演示。 java凭图游戏 一个目标文件,简单。 java求一个整数的因子 如题。 Java生成密钥的实例 1个目标文件 摘要:Java源码,算法相关,密钥 Java生成密钥、保存密钥的...
java模拟掷骰子2个 1个目标文件,输出演示。 java凭图游戏 一个目标文件,简单。 java求一个整数的因子 如题。 Java生成密钥的实例 1个目标文件 摘要:Java源码,算法相关,密钥 Java生成密钥、保存密钥的...
java模拟掷骰子2个 1个目标文件,输出演示。 java凭图游戏 一个目标文件,简单。 java求一个整数的因子 如题。 Java生成密钥的实例 1个目标文件 摘要:Java源码,算法相关,密钥 Java生成密钥、保存密钥的实例源码,...