c语言,骰子程序

c语言,骰子程序,第1张

 #include <stdio.h>

#include <time.h>

#include <stdlib.h>

int rollDie(void)

{

 return rand()%6+1

}

void drawDic(int* pdic,int 升答n)

{

 int i,sum=0

 for(i=0i<ni++)

 {

  pdic[i]=rollDie()

 }

 for(i=0i<ni++)

 {

  printf("----")

 }

 printf("\n")

 for(i=0i<ni++)

 {

  printf("|%d| ",pdic[i])

  sum+=pdic[i]

 }

 printf("\n"埋袜)

 for(i=0i<ni++)

 {

  printf("----")

 }

 printf("\nsum=%d\n",sum)

}

int main()

{

 int dic[100]

 吵液慧int n=1

 int i

 printf("输入骰子数目:")

 scanf("%d",&n)

 srand(time(0))

 drawDic(dic,n)

 return 0

}

结果:

1. 实验材料

Uno R3开发板

配套USB数据线

面包板及配套连接线

共阴极数码管

1个220Ω限流电阻

2. 实验步骤

1. 根据原理图搭建电路。

数码管的A,B,C,D,E,F,G,DP引脚分别接入开发板的数字管脚7,6,5,10,11,8,9,4。数码管公共端接限流电阻,电阻另一端接GND。

实验原理图如下图所拍埋示:

实验原理图

实物连接图如下图所示:

实物连接图

2. 新建sketch,拷贝如下代码替换自动生成的代码并进行保存。

/*

  Random

  通过Random随机显示0到9的数字

*///设置空悔控制各段的数字IO脚,具体几号引脚对应哪一段,来源为数码管官方引脚图。int pin_a = 7int pin_b = 6int pin_c = 5int pin_d = 10int pin_e = 11int pin_f = 8int pin_g = 9int pin_p = 4int num//根据共阴极数码管段码表定义0~9显示的各段开关状态int numTable[10][8] = {  //1为点亮,0为关闭

 //a  b  c  d  e  f  g  dp

 {1, 1, 1, 1, 1, 1, 0, 0},     //0

 {0, 1, 1, 0, 0, 0, 0, 0},     //1

 {1, 1, 0, 1, 1, 0, 1, 0},     //2

 {1, 1, 1, 1, 0, 0, 1, 0},     //3

 {0, 1, 1, 0, 0, 1, 1, 0},     //4

 {1, 0, 1, 1, 0, 1, 1, 0},     //5

 {1, 0, 1, 1, 1, 1, 1, 0},     //6

 {1, 1, 1, 0, 0, 0, 0, 0},     //7

 {1, 1, 1, 1, 1, 1, 1, 0},     //8

 {1, 1, 1, 1, 0, 1, 1, 0},     //9}void setup(){  for (int i = 4i <= 11i++)

 {

   pinMode(i, OUTPUT)//设置4~11引脚为输出模式

 }

 randomSeed(analogRead(0))

}//根据索引显示数字void showNum(int index){

 digitalWrite(pin_a, numTable[index][0])//设置a 引脚的电平

 digitalWrite(pin_b, numTable[index][1])//设置b 引脚的电平

 digitalWrite(pin_c, numTable[index][2])//设置c 引脚的电平

 digitalWrite(pin_d, numTable[index][3])//设置d 引脚的电平

 digitalWrite(pin_e, numTable[index][4])//设置e 引脚的电平

 digitalWrite(pin_f, numTable[index][5])//设置f 引脚的电平

 digitalWrite(pin_g, numTable[index][6])//设置g 引脚的电平

 digitalWrite(pin_p, numTable[index][7])//设置dp引脚的电平}void loop(){

 num = random(10)//产生随机数

 showNum(num)//显示随机数

 delay(500)

}

3. 连接袭亏蚂开发板,设置好对应端口号和开发板类型,进行程序下载。

**2. **创建Die类****

5.汇总

这个可以创建多种玩法,随机摇骰子只是其中的一种掘银空,还可以先让一个人输入一个幸运数字并储存起搏顷来,然后再执行程序,如果数字不等于幸运数字就不是幸运星,当数字等于时就是幸判瞎运星并结束程序——类似抽奖。。。。

总之玩法很多,看你怎么写,用最基础的知识来实现!


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12556595.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2025-08-26
下一篇2025-08-26

发表评论

登录后才能评论

评论列表(0条)

    保存