#includeiostream#includefstream#includestring#includeconio.husingnamespacestd;structPerson{stringname;stringid;stringphone;boolvis;Person()//vis初始化为false{vis=false;}};Personp[50];ifstreaminfile(date1.txt,ios::in);//以输入内存的方式打开文件intnum=0;//记录总人数voidshuru()//将文件中的数据读入到结构提数组中{charch;intcount=0;while(infile.get(ch))//把文件中的数据进行分块(依据空格分隔){if(ch=='')count++;if(count%3==1)p[count/3].name+=ch;if(count%3==2)p[count/3].id+=ch;elseif(count%3==0)p[count/3].phone+=ch;}num=count/3;infile.close();}voidshuchu()//将文件中的所有信息输出{charc;strings;while(infile.get(c)){s+=c;}cout所有信息如下endl;coutsendl;}intchoujiang()//抽奖{staticinti;//静态局部变量while(!_kbhit()){i=rand()%num;while(p[i].vis){i=rand()%num;if(!p[i].vis)break;}coutp[i].idendl;system(cls);//这里调用系统清屏}coutp[i].idendl;p[i].vis=true;getchar();returni;//返回下标}intmain(){if(!infile){cout读取有误endl;exit(1);}strings1,s2,s3;shuru();intj;j=choujiang();cout一等奖信息p[j].namep[j].phone;getchar();j=choujiang();cout二等奖信息p[j].namep[j].phone;getchar();j=choujiang();cout三等奖信息p[j].namep[j].phone;getchar();return0;}