#include<stdio.h>
#include<time.h>
#include<stdlib.h>
#define num 20
int main()
{
srand((unsigned)time(NULL));
//存储num个字符串,每个不超50
int choose = 0;
int new = 0;
do
{
char s[num][50] = { 0 };
//输入数据(可以是字符串)
for (int i = 0; i < num; i++)
{
printf("请输入参与抽奖的人:\n");
scanf("%s", s[i]);
}
choose = rand() % num;
//打印数据
printf("中奖者为:%s\n", s[choose]);
printf("是否需要重新抽奖,输入1为重抽,0为结束\n");
scanf("%d", &new);
if(new==1)
system("cls");
}
while (new);
system("pause");
return 0;
}
说明
1.本抽奖每次固定20人参加,如需修改人数请在.c代码上修改num的数值
2.抽奖每输入一个参与者姓名需回车确认一下,再输入下一个人的名字,姓名最长50个字符
3.本程序公平公正
2.0版本
ps:可以指定抽奖人数
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
int main()
{
srand((unsigned)time(NULL));
//存储num个字符串,每个不超50
int choose = 0;
int new = 0;
int num = 0;
do
{
printf("请输入参与抽奖的人数:\n");
scanf("%d", &num);
char s[50][50] = { 0 };
//输入数据(可以是字符串)
for (int i = 0; i < num; i++)
{
printf("请输入参与者姓名:\n");
scanf("%s", s[i]);
}
choose = rand() % num;
//打印数据
printf("中奖者为:%s\n", s[choose]);
printf("是否需要重新抽奖,输入1为重抽,0为结束\n");
scanf("%d", &new);
if(new==1)
system("cls");
}
while (new);
system("pause");
return 0;
}