C语言模拟投掷两次骰子获取不同点数

代码实现c#include <stdio.h>#include <stdlib.h>#include <time.h>

int main() { int dice1, dice2; srand(time(NULL)); // 设置随机数种子 // 投掷第一个骰子 dice1 = rand() % 6 + 1; printf('第一次投掷的点数为: %d ', dice1); // 投掷第二个骰子,直到点数与第一个骰子不同 do { dice2 = rand() % 6 + 1; } while (dice2 == dice1); printf('第二次投掷的点数为: %d ', dice2); return 0;}

代码解读

  1. 引入头文件: * stdio.h: 提供标准输入输出函数,如 printf。 * stdlib.h: 提供通用工具函数,如 randsrand。 * time.h: 提供时间相关函数,如 time

  2. 设置随机数种子: * srand(time(NULL)); 使用当前时间作为种子来初始化随机数生成器,确保每次运行程序时生成不同的随机数序列。

  3. 模拟第一次投掷: * dice1 = rand() % 6 + 1; 使用 rand() 函数生成随机数,并通过 % 6 将其限制在0到5之间,然后加1得到1到6之间的随机整数,模拟一次骰子投掷。

  4. 模拟第二次投掷: * 使用 do-while 循环重复投掷骰子,直到第二次投掷的点数 dice2 与第一次 dice1 不同。

  5. 输出结果: * 使用printf函数打印两次投掷的点数。

总结

这段代码简洁地展示了如何使用C语言模拟投掷两次骰子并确保得到不同的点数,代码逻辑清晰,易于理解。

C语言模拟投掷两次骰子获取不同点数

原文地址: https://www.cveoy.top/t/topic/UYt 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录