C语言程序设计,需要包含顺序结构、选择分支结构、循环结构,数组,指针,结构体
#include <stdio.h>
#include <stdlib.h>
struct dice{ //结构体 骰子(实现了6.包含结构体)
int value=0;//筛子值
int faces=0;//筛子面数
};
void set_face(int n,dice d) { //设置骰子面数函数
if (n < 10) //判断 设定值小于十(实现了分支结构)
{
if (n>0) //如果大于0
{
d.faces = n; //骰子面数为设定值
}
else //否则
{
d.faces = 1; //骰子面树为1
}
}
else //大于10
{
d.faces = 10; //骰子面数设置为10
}
}
void roll(dice *d) { //摇骰子函数(实现了4包含一个以上的函数)
int value; //定义一个临时整形值
while (true) //循环 (实现了循环结构)
{
value = rand() % 10; //随机值
if (value <d->faces )//判断值是否小于骰子面数
{
d->value = value+1;//如果小于则为骰子赋值
break;//跳出循环
}
}
}
int main()
{
int result[6];//骰子结果数组(实现了3包含数组)
int* p = result;//创建指针指向result数组(实现了5包含指针)
dice d;//创建骰子
d.faces = 8;//骰子面数赋值
for (int i = 0; i < 6; i++)//摇6次骰子
{
roll(&d);//调用函数摇筛子
*(p+i) = d.value;//通过指针操作将骰子结构赋值于result
}
for (int i = 0; i < 6; i++)//循环遍历result
{
printf("第%d次骰子结果为:%d\n", i+1, p[i]);//打印存储的6次结果
}
scanf_s("按任意键结束");//按任意键结束
}