修改后的代码,各位大佬能不能帮忙看看。现在自选的地方有点问题

xiaomuyusg 2024-02-16 14:55:30
#include<bits/stdc++.h>
#include<windows.h>
float cd,money=0,p,xz,qk;//cd存档   money钱   xz选择  p for里面用  qk欠款
float a[6],n[6]={},zj,jxzx,www=0,wwww=0,zjhm,cpsl;//彩票   zj中奖金额  cpsl彩票数量  zjhm中奖号码 
int f(){
	int a;
	a=rand();
	a=a%25+1;
	return a;
}
using namespace std;
int main(){
	cout<<"选择你的存档(1~8):"; 
	cin>>cd;
	system("cls");
	if(cd==1)freopen("1.txt","r",stdin);
	if(cd==2)freopen("2.txt","r",stdin);
	if(cd==3)freopen("3.txt","r",stdin);
	if(cd==4)freopen("4.txt","r",stdin);
	if(cd==5)freopen("5.txt","r",stdin);
	if(cd==6)freopen("6.txt","r",stdin);
	if(cd==7)freopen("7.txt","r",stdin);
	if(cd==8)freopen("8.txt","r",stdin);
	cin>>money;
	freopen("CON", "r", stdin);
	cout<<"你的余额为:"<<money<<endl;
	Sleep(1500);
	system("cls");
	for(p=0;p>=0;p++){
		cout<<"当前余额:"<<money<<endl<<"买彩票:1"<<endl<<"借钱:2"<<endl<<"问答:3"<<endl<<"投资:4"<<endl<<"退出游戏:5"<<endl; 
		scanf("%f",&xz);
		if(xz==1){
			system("cls");
			cout<<"机选/自选(0/1):"<<endl;
			scanf("%f",&jxzx);
			system("cls");
			if(jxzx==0){
				n[0]=f();
				n[1]=f();
				for(int i=0;i>=0;i++){
					if(n[1]==n[0])n[1]=f();
					else break;
				}
				n[2]=f();
				for(int i=0;i>=0;i++){
					if(n[2]==n[0])n[1]=f();
					else{
						if(n[2]==n[1])n[1]=f();
						else break;
					}
				}
				n[3]=f();
				for(int i=0;i>=0;i++){
					if(n[3]==n[0])n[1]=f();
					else{
						if(n[3]==n[1])n[3]=f();
						else{
							if(n[3]==n[2])n[3]=f();
							else break;
						}
					}
				}
				n[4]=f();
				for(int i=0;i>=0;i++){
					if(n[4]==n[0])n[4]=f();
					else{
						if(n[4]==n[1])n[4]=f();
						else{
							if(n[4]==n[2])n[4]=f();
							else{
								if(n[4]==n[3])n[4]=f();
								else break;
							}
						}
					}
				}
				n[5]=f();
				for(int i=0;i>=0;i++){
					if(n[5]==n[0])n[5]=f();
					else{
						if(n[5]==n[1])n[5]=f();
						else{
							if(n[5]==n[2])n[5]=f();
							else{
								if(n[5]==n[3])n[5]=f();
								else{
									if(n[5]==n[4])n[5]=f();
									else break;
								}
							}
						}
					}
				}
				cout<<"你的号码是(1~25):"<<n[0]<<" "<<n[1]<<" "<<n[2]<<" "<<n[3]<<" "<<n[4]<<" "<<n[5]<<endl<<"你要几张?(2元/张)";
				scanf("%f/n",&cpsl);
				if(money<cpsl){
					cout<<"余额不足!";
					cpsl=0;
				}
				www=0;
				wwww=0;
				a[0]=f();
				a[1]=f();
				for(int i=0;i>=0;i++){
					if(a[1]==a[0])a[1]=f();
					else break;
				}
				a[2]=f();
				for(int i=0;i>=0;i++){
					if(a[2]==a[0])a[1]=f();
					else{
						if(a[2]==a[1])a[1]=f();
						else break;
					}
				}
				a[3]=f();
				for(int i=0;i>=0;i++){
					if(a[3]==a[0])a[3]=f();
					else{
						if(a[3]==a[1])a[3]=f();
						else{
							if(a[3]==a[2])a[3]=f();
							else break;
						}
					}
				}
				a[4]=f();
				for(int i=0;i>=0;i++){
					if(a[4]==a[0])a[4]=f();
					else{
						if(a[4]==a[1])a[4]=f();
						else{
							if(a[4]==a[2])a[4]=f();
							else{
								if(a[4]==a[3])a[4]=f();
								else break;
							}
						}
					}
				}
				a[5]=f();
				for(int i=0;i>=0;i++){
					if(a[5]==a[0])a[5]=f();
					else{
						if(a[5]==a[1])a[5]=f();
						else{
							if(a[5]==a[2])a[5]=f();
							else{
								if(a[5]==a[3])a[5]=f();
								else{
									if(a[5]==a[4])a[5]=f();
									else break;
								}
							}
						}
					}
				}
				zjhm=0;
				for(int i=0;i<6;i++)for(int j=0;j<6;j++)if(a[i]==n[j])zjhm++;
				system("cls");
				cout<<"你的号码:"<<n[0]<<" " <<n[1]<<" " <<n[2]<<" " <<n[3]<<" " <<n[4]<<" " <<n[5]<<endl<<"本期号码:"<<a[0]<<" "<<a[1]<<" "<<a[2]<<" "<<a[3]<<" "<<a[4]<<" "<<a[5]<<endl; 
				if(zjhm==0)cout<<"没中奖";
				if(zjhm==1){
					cout<<"恭喜你中了"<<5*cpsl;
					money+=5*cpsl; 
				}
				if(zjhm==2){
					cout<<cout<<"恭喜你中了"<<10*cpsl; 
					money+=10*cpsl;
				}
				if(zjhm==3){
					cout<<cout<<"恭喜你中了"<<50*cpsl; 
					money+=50*cpsl;
				}
				if(zjhm==4){
					cout<<cout<<"恭喜你中了"<<100*cpsl; 
					money+=100*cpsl;
				}
				if(zjhm==5){
					cout<<cout<<"恭喜你中了"<<300*cpsl; 
					money+=300*cpsl;
				}
				if(zjhm==6){
					cout<<cout<<"恭喜你中了"<<500*cpsl; 
					money+=500*cpsl;
				}
				Sleep(1200); //彩票   zj中奖金额  cpsl彩票数量  zjhm中奖号码 
				system("cls");
				money-=cpsl*2;
				n[0]=0;
				n[1]=0;
				n[2]=0;
				n[3]=0;
				n[4]=0;
				n[5]=0;
				zj=0;
				cpsl=0;
				zjhm=0;
			}
			if(jxzx==1){
				cout<<"你的号码(1~25,不同):";
				scanf("%f,%f,%f,%f,%f,%f/n",&n[0],&n[1],&n[2],&n[3],&n[4],&n[5]);
				cout<<"你要几张?(2元/张)";
				cpsl=0;
				scanf("%f",&cpsl);
				if(money<cpsl){
					cout<<"余额不足!";
					cpsl=0;
				}
				a[0]=f();
				a[1]=f();
				for(int i=0;i>=0;i++){
					if(a[1]==a[0])a[1]=f();
					else break;
				}
				a[2]=f();
				for(int i=0;i>=0;i++){
					if(a[2]==a[0])a[1]=f();
					else{
						if(a[2]==a[1])a[1]=f();
						else break;
					}
				}
				a[3]=f();
				for(int i=0;i>=0;i++){
					if(a[3]==a[0])a[3]=f();
					else{
						if(a[3]==a[1])a[3]=f();
						else{
							if(a[3]==a[2])a[3]=f();
							else break;
						}
					}
				}
				a[4]=f();
				for(int i=0;i>=0;i++){
					if(a[4]==a[0])a[4]=f();
					else{
						if(a[4]==a[1])a[4]=f();
						else{
							if(a[4]==a[2])a[4]=f();
							else{
								if(a[4]==a[3])a[4]=f();
								else break;
							}
						}
					}
				}
				a[5]=f();
				for(int i=0;i>=0;i++){
					if(a[5]==a[0])a[5]=f();
					else{
						if(a[5]==a[1])a[5]=f();
						else{
							if(a[5]==a[2])a[5]=f();
							else{
								if(a[5]==a[3])a[5]=f();
								else{
									if(a[5]==a[4])a[5]=f();
									else break;
								}
							}
						}
					}
				}
				for(int i=0;i<5;i++){
					for(int j=0;j<5;j++){
						if(n[i]==a[j])zjhm++;
					}
				}
				system("cls");
				cout<<"你的号码:"<<n[0]<<" " <<n[1]<<" " <<n[2]<<" " <<n[3]<<" " <<n[4]<<" " <<n[5]<<endl<<"本期号码:"<<a[0]<<" "<<a[1]<<" "<<a[2]<<" "<<a[3]<<" "<<a[4]<<" "<<a[5]<<endl;
				if(zjhm==0)cout<<"没中奖";
				if(zjhm==1){
					cout<<"恭喜你中了"<<5*cpsl;
					money+=5*cpsl; 
				}
				if(zjhm==2){
					cout<<cout<<"恭喜你中了"<<10*cpsl; 
					money+=10*cpsl;
				}
				if(zjhm==3){
					cout<<cout<<"恭喜你中了"<<50*cpsl; 
					money+=50*cpsl;
				}
				if(zjhm==4){
					cout<<cout<<"恭喜你中了"<<100*cpsl; 
					money+=100*cpsl;
				}
				if(zjhm==5){
					cout<<cout<<"恭喜你中了"<<300*cpsl; 
					money+=300*cpsl;
				}
				if(zjhm==6){
					cout<<cout<<"恭喜你中了"<<500*cpsl; 
					money+=500*cpsl;
				}
				Sleep(1200); //彩票   zj中奖金额  cpsl彩票数量  zjhm中奖号码 
				system("cls");
				money-=cpsl*2;
				n[0]=0;
				n[1]=0;
				n[2]=0;
				n[3]=0;
				n[4]=0;
				n[5]=0;
				zj=0;
				cpsl=0;
				zjhm=0;
			}
		}
		if(xz==2){
			system("cls");
			cout<<"你要借多少?"<<endl; 
			scanf("%f",&qk);
			money+=qk;
			qk+=0.2*qk; 
			system("cls");
		}
		if(xz==3);
		if(xz==4);
		if(xz==5){
			if(cd==1)freopen("1.txt","w",stdout);
			if(cd==2)freopen("2.txt","w",stdout);
			if(cd==3)freopen("3.txt","w",stdout);
			if(cd==4)freopen("4.txt","w",stdout);
			if(cd==5)freopen("5.txt","w",stdout);
			if(cd==6)freopen("6.txt","w",stdout);
			if(cd==7)freopen("7.txt","w",stdout);
			if(cd==8)freopen("8.txt","w",stdout);
			cout<<money-qk;
			return 0;
		} 
	}
}

 

...全文
3251 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复

scanf中加入\n引起的问题,而且把\n写成了/n。

if(jxzx==1){
                cout<<"你的号码(1~25,不同):";
                scanf("%f,%f,%f,%f,%f,%f/n",&n[0],&n[1],&n[2],&n[3],&n[4],&n[5]);//去掉/n和,

改成scanf("%f%f%f%f%f%f",&n[0],&n[1],&n[2],&n[3],&n[4],&n[5]);

img

xiaomuyusg 02-16
  • 举报
回复
@太空漫步11 scanf我用不熟,谢谢
taozhenJ 02-20
  • 举报
回复
@xiaomuyusg 如果输入数据数量较少, 时间长, 可以用cin

69,360

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧