c语言彩票代码
# includestdio.h
#包含conio.h
#包含stdlib.h
#包含内存. h
#包含字符串. h
#包含时间. h
#定义订单编号10
typedef结构tag_award
{
Char ID用C语言写了一个简单的抽奖程序。 将以下内容保存在data.txt文件中:
13725528132李桂荣
13725528131李二来
13725528133张荣刚
13725528130榕南
13725528137王三
13725528138李悟
13725528139郭德纲
13725528140周星驰
13725528141张可颐
13725528142张艺谋
13725528152秦湘莲
13725528162潘金莲
13725528172李大嘴
13725528182展厅
//源代码如下
#包含stdio.h
#包含stdlib.h
#包含时间. h
#定义最大数量9999
//定义保存姓名和电话号码的数据结构。
结构人
{
char name[20];
char telno[15];
char奖;
};
int num = 0;//数一数人数
FILE * fp//文件指针
Person人[最大数量];//定义一个数组
int awarder _ 1[1]= {-1 };//一等奖
int awarder_2[2] = {-1,-1 };//二等奖
int awarder_3[5] = {-1,-1,-1,-1 };//三等奖
//读取文件
void readdata()
{
int I = 0;//数组下标
Person人;
//文件打开
fp = fopen("data.txt "," r ");
if (fp == NULL)
{
Printf("打开文件data.txt失败!\ n ");
返回;
}
//当文件不为空时
而(!feof(fp))
{
num
fscanf(fp," %s ",person . telno);
fscanf(fp," %s ",person . name);
person.award = ' F
persons[I]= person;
}
}
//初始化ID
void初始化()
{
for(int I = 0;i num我)
{
人[我]。award = ' F
}
}
//显示个人中奖信息。
无效信息(整数I)
{
Printf("手机号码:%s姓名:% s \ n ",persons [i]。telno,persons [i]。姓名);
}
void main()
{
char again = ' Y
//读取文件
read data();
Printf("简单彩票程序\ n ");
srand((长)时间(0));
while(again == 'Y' || again == 'y ')
{
//初始化ID
init();
printf(" \ n开始抽取一等奖(1等奖),按任意键开始...\ n ");
getchar();
awarder _ 1[0]= ABS(rand()% num);
while (persons[awarder_1[0]]。award == 'T ')
{
awarder _ 1[0]= rand()% num;
}
persons[awarder_1[0]]。award = ' T
info(awarder _ 1[0]);
printf(" \ n开始抽取二等奖(2名获奖者)\ n ");
for(int I = 0;I 2;我)
{
printf(" \ n第%d个二等奖,按任意键开始...\n ",I 1);
getchar();
awarder _ 2[I]= rand()% num;
while (persons[awarder_2[i]]。award == 'T ')
{
awarder _ 2[I]= rand()% num;
}
persons[awarder_2[i]]。award = ' T
info(awarder _ 2[I]);
}
printf(" \ n \ n开始抽三等奖(5)\ n ");
for(I = 0;i5;我)
{
printf(" \ n第%d个三等奖,按任意键开始...\n ",I 1);
getchar();
awarder _ 3[I]= rand()% num;
while (persons[awarder_3[i]]。award == 'T ')
{
awarder _ 3[I]= rand()% num;
}
persons[awarder_3[i]]。award = ' T
info(awarder _ 3[I]);
}
printf(" \ n是否要重新开始抽奖?(是或否)...\ n ");
again = getchar();
}
getchar();
返回;
}
用C语言写一个简单的抽奖程序,需要对文件的操作。 #包含位/标准数据。h
使用命名空间std
int n,a[233];
int main(){
freopen("a.in "," r ",stdin);
freopen("a.out "," w ",stdout);
scanf("%d ",n);
for(int I = 0;在;i ) scanf("%d ",a[I]);
printf("%d\n ",a[rand()% n]);
}
c语言,要求:一定范围(比如50)可以循环绘制,不能重复? 我写了五行,从左到右。如果需要一行代码,可以将第14行代码改为。
printf("%d\n ",prize);
#包含stdio.h
#包含stdlib.h
#包含时间. h
int main(void) {
int prize,a[51]= { 0 };
srand(time(NULL));
//j是目前成功生成的次数。
for (int i = 0,j = 0;i 50000j51i ) {
//prize是一个从1到50随机生成的数字。
prize = rand()% 50 1;
//如果一个【奖品】!=0,说明这代奖之前已经生成过了。
//然后继续循环,生成下一个数。
如果(获奖)
继续;
//如果这一轮之前没有奖,那就数j。
//并放一个[prize],这样a[prize]就不会是0了。
j;
a[奖];
printf("=%c ",prize,j%5==0?\ n ':' ');
}
返回0;
}
最后更新于 2023-10-11 10:25:41 并被添加「」标签,已有 位童鞋阅读过。
本站使用「署名 4.0 国际」创作共享协议,可自由转载、引用,但需署名作者且注明文章出处
相关文章