📄 view.cpp
字号:
#include<iostream.h>
#include<fstream.h>
#include<string.h>
#include"student.h"
struct guake
{
int uid;
char name[20],cname[20];
int guanumber;
}gua[100],g[100];
void main()
{
ifstream fin("d:\\haha\\sb.txt");
unsigned int uid;
float ngrade;
char aname[20];
char bname[20];
Student *ps;
int j=0,k=0,f1=1,f2=1;
/*
//显示文件中的学生课程及成绩单
int i=0;
fin>>uid>>aname>>bname>>ngrade;
while(!fin.eof())
{
ps=new Student(uid,aname,bname,ngrade);
cout<<"student #"<<++i<<": "<<*ps;
delete ps;
//aname[0]=0;
fin>>uid>>aname>>bname>>ngrade;
//if(i==2)break;
}
*/
while(!fin.eof())
{
fin>>uid>>aname>>bname>>ngrade;
if(ngrade<60){
gua[j].uid=uid;
for(int p=0;aname[p]!=NULL;p++){
gua[j].name[p]=aname[p];
}
for(p=0;bname[p]!=NULL;p++){
gua[j].cname[p]=bname[p];
}
j++;
//cout<<j<<endl;
}
//cout<<j<<endl;
}
//cout<<gua[0].cname<<endl<<gua[1].cname<<endl<<gua[3].cname<<endl;
j--;
//输出挂科的学生及挂的科目
for(int k1=0;k1<j;k1++){
for(int i=0;i<=j-k1;i++){
f1=1;
for(int k3=k1+i-1;k3>=0;k3--){
if(gua[k3].uid==gua[k1+i].uid){
// cout<<gua[k1+i].uid<<endl;
k1=k1+i+1;//////////////////////////////////////////
f1=0;/////////////////////////////////////////
break;
}
}
//cout<<gua[k1+i].uid<<endl;
k1=k1+i;
//cout<<"hhhhhh"<<f<<endl;
if(f1==1)break;
}
//cout<<"hhhhhhhhh"<<f1<<"hahahah"<<k1<<endl;
if(k1==j)break;
if(gua[k1].uid>0){
cout<<"学号:"<<gua[k1].uid<<" "<<gua[k1].name<<endl
<<"挂的科目为: "<<gua[k1].cname<<endl;
}
for(int k2=k1+1;k2<j;k2++){
if(gua[k1].uid==gua[k2].uid&&gua[k2].uid>0)
cout<<"挂的科目为: "<<gua[k2].cname<<endl;
}
}
cout<<endl<<endl<<endl;
//输出挂科大于2的学生
for(k1=0;k1<j;k1++){
for(int i=0;i<=j-k1+1;i++){
for(int k3=k1-1;k3>=0;k3--){
if(gua[k3].uid==gua[k1+i].uid){
k1++;
f2=0;
break;
}
f2=1;
}
if(f2==1)break;
}
if(k1==j)break;
gua[k1].guanumber=1;
for(int k2=k1+1;k2<j;k2++){
if(gua[k1].uid==gua[k2].uid){
gua[k1].guanumber++;
//cout<<gua[k1].guanumber;
}
//cout<<j<<endl;
}
if(gua[k1].guanumber>2)
cout<<"学号:"<<gua[k1].uid<<" "<<gua[k1].name<<"同学挂科超过两门"<<endl;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -