用C语言写某种彩票的获奖号码由两位非零数组成,获奖规则如下: 如果用户的号码和中奖号码完全相同,奖金为100元; 如果用户的号码能匹配中奖号码的所有数字,奖金为20元; 如果用户的号码能匹配中奖号码的一个数字,奖金为2元。
时间: 2024-03-08 18:46:14 浏览: 165
以下是一个简单的彩票获奖程序的C语言代码示例:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 2
int main() {
int i, j, k, num[N], win_num[N], match = 0, bonus = 0;
char choice;
srand(time(NULL)); // 初始化随机数种子
printf("是否要生成中奖号码?(y/n):");
scanf("%c", &choice);
if (choice == 'y' || choice == 'Y') {
for (i = 0; i < N; i++) {
win_num[i] = rand() % 9 + 1; // 生成两个随机非零数字作为中奖号码
}
printf("中奖号码为:%d %d\n", win_num[0], win_num[1]);
} else {
printf("请手动输入中奖号码:");
scanf("%d %d", &win_num[0], &win_num[1]);
}
printf("请输入您的彩票号码:");
scanf("%d %d", &num[0], &num[1]);
for (i = 0; i < N; i++) {
if (num[i] == win_num[i]) { // 如果两个数字完全相同
bonus = 100;
match = N; // 匹配的数字个数为2
break;
}
for (j = 0; j < N; j++) {
if (num[i] == win_num[j]) { // 如果两个数字中有一个相同
bonus = 2;
match++;
break;
}
}
}
if (match == N && bonus == 0) { // 如果两个数字都不相同
bonus = 20;
}
if (bonus > 0) {
printf("恭喜您中了%d元奖金!\n", bonus);
} else {
printf("很遗憾,您没有中奖。\n");
}
return 0;
}
```
该程序首先要求用户输入自己的彩票号码,然后让用户选择是否生成中奖号码。如果用户选择生成,则程序会随机生成两个非零数字作为中奖号码;如果用户选择手动输入,则程序会要求用户输入中奖号码。接着,程序会逐个比较用户的彩票号码和中奖号码的每个数字,统计匹配的数字个数和奖金金额。最后,程序会输出用户是否中奖和中奖金额。
阅读全文