⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tiyu2.cpp

📁 一个彩票统计源代码
💻 CPP
字号:
#include "iostream.h" 
#include "strstrea.h"
#include "fstream.h"
#include "string.h"
#include "stdlib.h"
#define   recfile "rec.txt"//用宏指令指定记录文件文件名

		enum boolean{false1,true1};
		const unsigned Line_Size=128;
		const unsigned Name_Size=64;

		char character;
		char string[Line_Size+1][14];
		int  bit[10]={0,0,0,0,0,0,0,0,0,0};
  		int  rectab[11][8];
		int  i,j,k;
 
/************************************************/
void trimstr(char *s)
{
	int i=strlen(s)-1;
	while(i>0&&s[i]==' ')  i--; 
	s[i+1]='\0';
}
/***************************************************/
void getInputFilename(char *inFile,fstream&f)
{
	enum boolean ok;
do {
    ok=true1;
//	cout<<"Enter the input file:";
    inFile=recfile;  //指定记录文件文件名
	Name_Size==11;
//  cin.getline(inFile,Name_Size);
	f.open(inFile,ios::in);
	if(!f){
	cout<<"Cannot open the file:"<<inFile<<"\n\n";
	ok=false1;
	}
}while(!ok);
}
/************************************************/
void processLines(fstream&fin,fstream&fout)
{
    char line[Line_Size+1];
    int  i=1;
    while(fin.getline(line,Line_Size)) 
  {
    trimstr(line);
    fout<<line<<"\n";
    strcpy(string[i],line);
//  cout<<string[i]<<"\n";
    i++;
  }
}
/************************************************/
void identify()// 识别字符并存储结果表格  
{ 
       int i,j,k; 		
       for(i=0;i<=7;i++)
			{	   

		for(k=0;k<=Line_Size;k++)
		{
	      	character=string[k][i];
		    switch(character)
				{
				case'0':
				   bit[0]++;
				   break;
				case'1':
				   bit[1]++;
    			   break;
				case'2':
			       bit[2]++;
				   break;
				case'3':
				   bit[3]++;
				   break;
		    	case'4':
				   bit[4]++;
				   break;
				case'5':
				   bit[5]++;
				   break;
				case'6':
				   bit[6]++;
				   break;
				case'7':
				   bit[7]++;
				   break;
		  		case'8':
				   bit[8]++;
				   break;
				case'9':
				   bit[9]++;
				   break;
                default:
		   		   break;
				} //0~9判别、计数
		
		} // 第1期~ 第Line_Size期中奖号码"k"
    	for(j=0;j<=9;j++)//存储结果
			{
       	    rectab[j][i]=bit[j];
		    bit[j]=0;
			} 
		} //Line_Sizeo.1~Line_Sizeo.7位数字"i"

}
/************************************************/
	 void display()//显示
	 {
     int i,j;
     cout<<"             湖北省电脑体育彩票统计"<<"\n";
	 cout<<"===================================================="<<"\n";


/*      Output the result         */
	cout<<"     第1位 "<<"第2位 "<<"第3位 "<<"第4位 "<<"第5位 "<<"第6位 "<<"附加位"<<"\n";

		for(j=0;j<=9;j++)   //行显示
			{
		   	cout<<"["<<j<<"]"<<": ";
			for(i=0;i<=7;i++) //列显示
			{	
				if (i==6) i=i+1;
				if (rectab[j][i]<10) cout<<"  "<<rectab[j][i]<<"   ";
				else  //十、个位数对齐
				cout<<" "<<rectab[j][i]<<"   ";
			} //列显示
				cout<<"\n";
		}   //行显示

	 }

/********************************************************/

	 void input_direction()  //输入提示
	 {
	     char affirm;
	     char in_str[14];
		 char cha[14];
		 char * recFile;
		 recFile=recfile;//指定记录文件文件名
//		 fstream infile;
	     fstream outfile;
		 int i; 

		 //		 int i,j;
	     cout<<"¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥"<<"\n";
	     cout<<"¥                                  ¥"<<"\n";
         cout<<"¥    湖北省电脑体育彩票统计软件    ¥"<<"\n";
 	     cout<<"¥                                  ¥"<<"\n";
		 cout<<"¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥"<<"\n";
		 cout<<"\n";
		 cout<<"\n";
		 cout<<"请按以下格式输入最新一期中奖号码:";
		 cout<<"xxxxxx+x(yyy)"<<"\n";
		 cout<<"其中xxxxxx+x是中奖号码,yyy是期数。"<<"\n";
		 cout<<"例如2000年第39期中奖号码是:277227+0,则应输入277227+0(039)"<<"\n";
   		 cout<<"您要输入最新一期中奖号码吗?(y/n):";
         cin>>affirm; 
    if ((affirm!='y')&&(affirm!='Y'))   goto continu;  
	 
DATA_in: cout<<"请输入最新一期中奖号码xxxxxx+x(yyy):";
         cin>>in_str;
   		 cout<<"最新中奖号码:"<<in_str<<"\n";
		 cout<<"中奖号码正确吗?(y/n)";
         cin>>affirm; 
    if ((affirm!='y')&&(affirm!='Y'))   goto DATA_in;  

	outfile.open(recFile,ios::app);
	if(!outfile)
	{
	cout<<"Error open output file."
		<<endl;
	abort();
	}

    strcpy(cha,in_str);
	
	for (i=0;i<14;i++)
	outfile.put(cha[i]);
	
	outfile.close();

continu: cout<<"\n";      	 
	 }

/********************************************************/

//++++++++++++++++++++++++++++++++++++++++++++++++++++//
  void main()
  {
 	 fstream fin,fout;
     char inFile[Name_Size+1],outFile[Name_Size+1];
     input_direction();//输入提示
	 getInputFilename(inFile,fin);
	 processLines(fin,fout);
     identify(); // 识别字符并存储结果表格  
	 fin.close();
     display();  //显示
     return;
}
//++++++++++++++++++++++++++++++++++++++++++++++++//

  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -