悬关求助
  • 板块灌水区
  • 楼主Eason_cyx大愚若智
  • 当前回复10
  • 已保存回复10
  • 发布时间2023/6/29 17:01
  • 上次更新2023/11/3 12:08:52
查看原帖
悬关求助
741244
Eason_cyx大愚若智楼主2023/6/29 17:01

rt,今天想用 C++ 做一个可以模拟 CSP-J/NOIP\texttt{CSP-J/NOIP} 初赛的程序,结果才弄了 NOIP2007\texttt{NOIP2007} 初赛前 44 道题就要吐了。。。想请问怎么优化程序,蒟蒻瞎扯的程序简直太乱了。

#include <bits/stdc++.h>
#include <windows.h>
#include <conio.h>
using namespace std;
string NOIP2007[] = {"第 1 题:在以下各项中,(  )不是 CPU 的组成部分","第 2 题:在关系数据库中,存放在数据库中的数据的逻辑结构以(  )为主。","第 3 题:在下列各项中,只有(  )不是计算机存储容量的常用单位。","第 4 题ASCII 码的含义是(  )。"};
string NOIP2007A[] = {" A. 控制器","A. 二叉树","A. Byte"," A. 二→十进制转换码"};
string NOIP2007B[] = { "B. 运算器"," B. 多叉树","B. KB","B. 美国信息交换标准代码"};
string NOIP2007C[] = {"C. 寄存器"," C. 哈希表"," C. UB"," C. 数字的二进制编码"};
string NOIP2007D[] = {" D. 主板"," D. 二维表"," D. TB"," D. 计算机可处理字符的唯一编码"};
char NOIP2007ans[] = "DDCB";
int pronumofCSP[] = {0,4};
void start() {
	cout << "欢迎来到Eason的游戏派对!" << endl;
	cout << "By Eason_cyx(uid:741244) 欢迎关注" << endl;
	cout << "请按任意键继续... ..." << endl;
	_getch();
	system("cls");
	Sleep(500);
	cout << "功能列表:" << endl;
	Sleep(500);
	cout << "1.CSP-J/GESP 真题模拟" << endl;
	Sleep(500);
	cout << "2.休闲类小游戏" << endl;
	Sleep(500);
	cout << "3.正在开发中... ..." << endl;
	Sleep(500);
}
int main() {
	start();
	while(true) {
		cout << "请选择:" << endl;
		Sleep(500);
		int choose; cin >> choose;
		if(choose == 1) {
			Sleep(500);
			cout << "CSP-J/GESP 真题模拟 模式" << endl;
			Sleep(500);
			cout << "1.CSP-J\n2.GESP\n";
			Sleep(500);
			int competition_choose; cin >> competition_choose;
			if(competition_choose == 1) {
				Sleep(500);
				cout <<"CSP-J/NOIP mode\n";
				cout << "random choose... ...\n";
				cout << "NOIP 2007 普及组初赛试题:\n";
				int correctnum = 0;
				for(int i = 0;i < 4;i++) {
					cout << NOIP2007[i] << endl << NOIP2007A[i] << endl << NOIP2007B[i] << endl << NOIP2007C[i] << endl << NOIP2007D[i] << endl;
					char procho; cin >> procho;
					if(procho == NOIP2007ans[i]) {
						cout << "right! the correct answer is " << NOIP2007ans[i] << "!" << endl;
						correctnum++;
					}
					else {
						cout << "Wrong! the correct answer is " << NOIP2007ans[i] << "!" << endl;
					}
				}
				cout << "Your Score is:" << correctnum << " Points.\n";
			}
			else {
				Sleep(500);
				cout <<"GESP mode\n";
			}
			return 0;
		}
		else if(choose == 2) {
			Sleep(500);
			cout << "休闲类小游戏 模式" << endl;
			return 0;
		}
		else if(choose == 3) {
			Sleep(500);
			cout << "你来到了尚未开发的地带... ..." << endl;
			Sleep(1000);
		}
	}
	
	return 0;
}
2023/6/29 17:01
加载中...