[제목] 학생 성적 관리 절차(첨삭개사)
29451 단어 제목.
/****************************
* :[ ]
* :〈 〉
* :〈 :
5 , ,
, :
1、 。
1)
2) ( 5 1~5 , , )
3) 。 。
2、 ,
1) ( , / )
2) ( , 。)
3) ( , 5 , )
3、 ( , txt ) 〉
* :2019.6.9
****************************/
#include
#include
using namespace std;
/* */
struct student
{
string name;//
int rank; //
};
void faultinfo();//
void sort(student s[], int n); //
void prints(student s[], int n);//
void deletes(student s[], int n, int num);//
int main() {
int num = 0;//
student students[10];//
for (int i = 0; i < 5; i++) {// 5
cout << " :";
while (!(cin >> students[i].name)) {//
faultinfo();
}
cout << " :";
loop:
while (!(cin >> students[i].rank) || students[i].rank > 5 || students[i].rank < 1) {//
faultinfo();
}
for (int j = 0; j < i; j++) {
if (students[i].rank == students[j].rank) {// ,
faultinfo();
goto loop;
}
}
num++;
}
sort(students, num);//
while (1)
{
system("cls");//
cout << " :
1、
2、
3、
4、
5、
:";
int choice;
while (!(cin >> choice) || choice > 5 || choice < 1) {//
faultinfo();
}
switch (choice)
{
case 1://
prints(students, num);
system("pause");
break;
case 2://
if (num < 1) {//
cout << " 。";
system("pause");
break;
}
int rank;
prints(students, num);
cout << " :";
while (!(cin >> rank) || rank > num || rank < 1) {//
faultinfo();
}
deletes(students, rank, num);//
cout << " 。" << endl;
num--;
sort(students, num);//
system("pause");
break;
case 3://
prints(students, num);
if (num >= 10) {// 10
cout << " 。";
system("pause");
break;
}
cout << " :";
while (!(cin >> students[num].name)) {//
faultinfo();
}
cout << " :";
while (!(cin >> students[num].rank) || students[num].rank > num + 1 || students[num].rank < 1) {//
faultinfo();
}
cout << " 。"<<endl;
num++;
sort(students, num);//
system("pause");
break;
case 4://
{
ofstream fout;//ofstream fout
fout.open(" .txt");//
fout << " \t " << endl;//
for (int i = 0; i < num; i++) {//
fout << students[i].name << "\t" << students[i].rank << endl;
}
fout.close();//
cout << " 。";
system("pause");
break;
}
case 5://
return 0;
default:
break;
}
}
}
/* */
void faultinfo() {
cout << " , :";
cin.clear();//
cin.ignore(1024, '
');// cin
}
/* */
void sort(student s[], int n) {//
for (int i = 0; i < n - 1; i++) {
for (int j = i + 1; j < n; j++) {
if (s[i].rank >= s[j].rank) {
student temp = s[i];
s[i] = s[j];
s[j] = temp;
}
}
}
for (int i = 0; i < n; i++) {//
s[i].rank = i + 1;
}
}
/* */
void prints(student s[], int n) {
for (int i = 0; i < n; i++) {
cout << s[i].name << ":" << s[i].rank << endl;
}
}
/* */
void deletes(student s[], int n, int num) {
for (n; n < num; n++) {
s[n - 1] = s[n];
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
자바 - 숫자 반전이 수의 각 비트 에 있 는 숫자 를 반전 시 켜 새 수 를 얻 으 십시오.새 수도 정수 의 흔 한 형식 을 만족 시 켜 야 한다. 입력 형식: 총 1 줄, 정수 N 을 입력 하 십시오.출력 형식: 출력 총 1 줄,...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.