咋报[Error] jump to case label勒?
  • 板块学术版
  • 楼主YWJ20140130
  • 当前回复4
  • 已保存回复4
  • 发布时间2024/9/30 21:13
  • 上次更新2024/10/1 07:07:06
查看原帖
咋报[Error] jump to case label勒?
1241319
YWJ20140130楼主2024/9/30 21:13
#include<bits/stdc++.h>
#define N 10001
#define io ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
using namespace std;
struct points {
	string name;
	char circumstance;
	string circumstance_=" +0-";
	int bonus_points;
	int subtract_points;
	int absolute_points;
	bool h=0;
	char add_s[4]={0,1,3,5};
	void calc(){
		absolute_points=bonus_points-subtract_points;
		int x;
		if(absolute_points==0)	x=2;
		if(absolute_points>0)	x=1;
		if(absolute_points<0)	x=3;
		circumstance=circumstance_[x];
	}
	void settings(bool bonus_,bool subtract_,int x){
		if(bonus_ xor subtract_);
		else return;
		if(bonus_)
			for(int i=1;i<=x;i++)
				bonus_points++;
		if(subtract_)
			for(int i=1;i<=x;i++)
				subtract_points++;
		calc();
	}
	void print(){
		if(h)
		printf("%s:+%d -%d \t\t%d\n",name.c_str(),bonus_points,\
		subtract_points,absolute_points);
	}
	void init(string name_){
		name=name_;
		bonus_points=0;
		subtract_points=0;
		h=1;
		calc();
	}
};
int c;
points students[N];
void pp(int n){
	for(int i=1;i<=n;i++) students[i].print();
	printf("\n");
}
int main() {
	io
	int n;
	cin>>n;
	for(int i=1;i<=n;i++) students[i].init("ooooooooooooooooo");
	while(1){
		printf("1.bonus points 2.subtract points 3.set");
		int x;
		cin>>x;
		int c,p;
		switch (x) {
			case 1:
				printf("Input student:");
				cin>>c;
				printf("Input x:");
				cin>>p;
				students[c].settings(1,0,p);
				break;
			case 2:
				printf("Input student:");
				cin>>c;
				printf("Input x:");
				cin>>p;
				students[c].settings(0,1,p);
				break;
			case 3:
				printf("1.edit name 2.add");
				cin>>c;
				switch (c) {
					case 1:
						printf("Input student:");
						cin>>p;
						string name__;
						printf("Input name:");
						cin>>name__;
						students[p].name=name__;
						break;
					case 2:
						//TODO
						break;
					default:
						//TODO
						break;
				}
			default:
				//TODO
				break;
		}
	}
	pp(n);
	return 0;
}

[Error] jump to case label

2024/9/30 21:13
加载中...