一个c语言的问题:模拟掷骰子的游戏

Python012

一个c语言的问题:模拟掷骰子的游戏,第1张

一、涓字的拼音是juān,只有一个读音。二、涓字的偏旁是氵,是左右结构。三、涓字的基本释义:细小的流水:涓埃。涓滴。四、涓字的笔顺是点, 点, 提, 竖, 横折, 横, 竖, 横折钩, 横, 横。扩展资料相关组词 涓涓 涓埃 涓滴 涓壤 涓微 涓彭 涓_ 涓露 涓细 郦涓 涓选 末涓 尘涓 涓浍一、涓壤[juān rǎng] 犹涓埃。喻微小。对同义词,只有仔细地辩证,才能区分它们之间涓壤的差异。二、涓露[juān lù] 点滴露水。喻微小的事物。生活可以很自在,并非每天需要大鱼大肉,我们的快乐和享受,可以来自涓露。三、郦涓[lì juān] 黄帝八世孙,祖先是黄帝三妃彤鱼氏所生的次子夷彭。四、尘涓[chén juān] 微尘细流。犹言涓埃。喻微薄(之力)。父亲这一点尘涓的工资,是很难维持一家人的生活。五、微涓[wēi juān] 极小的水流。比喻微小的功绩。我做的事情就如微涓一般,所以请别太夸我了。

#include<stdio.h>

#include<string.h>

int

main()

{

int

a[6]={1,2,3,4,5,6},i,n,p,empty

char

b[10]

//printf("请输入命令条数:\n")

scanf("%d",&n)

//printf("请输入命令:\n")

for(i=1i<=ni++)

{

scanf("%s",b)

p=strcmp(b,"north")

if(p==0)

{

empty=a[0]

a[0]=a[4]

a[4]=a[5]

a[5]=a[1]

a[1]=empty

continue

}

p=strcmp(b,"south")

if(p==0)

{

empty=a[0]

a[0]=a[1]

a[1]=a[5]

a[5]=a[4]

a[4]=empty

continue

}

p=strcmp(b,"west")

if(p==0)

{

empty=a[0]

a[0]=a[3]

a[3]=a[5]

a[5]=a[2]

a[2]=empty

continue

}

p=strcmp(b,"east")

if(p==0)

{

empty=a[0]

a[0]=a[2]

a[2]=a[5]

a[5]=a[3]

a[3]=empty

}

}

//printf("游戏结束,骰子朝上的字数为:\n")

printf("%d",a[0])

return

0

}

实践1:函数编程练习 1.掷骰子游戏 编写程序模拟掷骰子游戏。已知掷骰子游戏的游戏规则为:每个骰子有6面,这些面包含1、2、3、4、5、6个点,投两枚骰子之后,计算点数之和。如果第一次投的点数和为7或11,则游戏者获胜;如果第一次投的点数和为2、3或12,则游戏者输;如果第一次投的点数和为4、5、6、8、9或10,则将这个和作为游戏者获胜需要掷出的点数,继续投骰子,直到赚到该点数时算是游戏者获胜。如果投掷7次仍未赚到该点数,则游戏者输。 【思考题】 将游戏规则改为:计算机想一个数作为一个骰子掷出的点数(在用户输入数据之前不显示该点数),用户从键盘输入一个数作为另一个骰子掷出的点数,再计算两点数之和。其余规则相同,然后请读者重新编写该程序。 2.学生成绩统计(一维数组)要求函数参数中包含一维数组。 从键盘输入一个班(全班最多不超过30人)学生某门课的成绩,当输入成绩为负值时,输入结束,分别实现下列功能: (1)统计不及格人数并打印不及格学生名单; (2)统计成绩在全班平均分及平均分之上的学生人数,并打印这些学生的名单; (3)以直方图方式统计各分数段的学生人数及所占的百分比。形式如下: 分数段 学生人数 图形 <60 3(10%) *** 60-69 8(…) ******** 70-79 7(…) ******* 80-89 8(…) ******** >=90 4(…) **** 实践2:结构体编程练习 在屏幕上模拟显示一个数字式时钟 按如下方法定义一个时钟结构体类型: struct clock { int hourint minuteint second}typedef struct clock CLOCK然后,将下列用全局变量编写的时钟模拟显示程序改成用CLOCK结构体变量类型重新编写。已知用全局变量编写的时钟模拟显示程序如下: #include <stdio.h>int hour, minute, second/*全局变量定义*/ /* 函数功能:时、分、秒时间的更新 函数参数:无 函数返回值:无 */ void Update(void) { second++if (second == 60) /*若second值为60,表示已过1分钟,则 minute值加1*/ { second = 0minute++} if (minute == 60) /*若minute值为60,表示已过1小时,则 hour值加1*/ { minute = 0hour++} if (hour == 24) /*若hour值为24,则hour的值从0开始计时*/ { hour = 0} } /*函数功能:时、分、秒时间的显示 函数参数:无 函数返回值:无 */ void Display(void) /*用回车符'\r'控制时、分、秒显示的位置*/ { printf("%2d:%2d:%2d\r", hour, minute, second) } /*函数功能:模拟延迟1秒的时间 函数参数:无 函数返回值:无 */ void Delay(void) { long tfor (t=0t<50000000t++) { /*循环体为空语句的循环,起延时作用*/ } } main() { long ihour = minute = second = 0/*hour,minute,second赋初值0*/ for (i=0i<100000i++) /*利用循环结构,控制时钟运行的时间*/ { Update()/*时钟更新*/ Display()/*时间显示*/ Delay()/*模拟延时1秒*/ } }