社区讨论

悬关求助

灌水区参与者 5已保存回复 10

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
10 条
当前快照
1 份
快照标识符
@lo2dee42
此快照首次捕获于
2023/10/23 12:01
2 年前
此快照最后确认于
2023/11/03 12:08
2 年前
查看原帖
rt,今天想用 C++ 做一个可以模拟 CSP-J/NOIP\texttt{CSP-J/NOIP} 初赛的程序,结果才弄了 NOIP2007\texttt{NOIP2007} 初赛前 44 道题就要吐了。。。想请问怎么优化程序,蒟蒻瞎扯的程序简直太乱了。
CPP
#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;
}

回复

10 条回复,欢迎继续交流。

正在加载回复...