c语言学生成绩管理系统为什么只能输入一个,c语言学生成绩管理系统设计报告

c语言学生成绩管理系统为什么只能输入一个,c语言学生成绩管理系统设计报告

c语言学生成绩管理系统为什么只可以输入一个学生?

大约是因为程序员在编写代码时,将学生的成绩管理系统设置为只可以输入一个学生 。

C语言学生成绩管理系统?

想要它变成什么样,自己做一下更改就是了:

#includeiostream

#includefstream

#include windows.h

#includestring

#include time.h

#includecstdlib

#includeiomanip

using namespace std;

int n=0;

#define M cout

#define N ;Sleep(80);

#define Y N M

#define NN cout"╭----------------------—╮"endl;cout"∣ num ∣ name∣ age ∣ hig ∣ 语文 ∣ 数学 ∣ 英语 ∣ 平均 ∣ 满分 ∣ 评语 ∣ "endl;cout"├-—-┼-—-┼-—┼-—┼-—-┼-—-┼-—-┼--—┼--┼-—-┤"endl;cout"∣"setw(6)p1-numsetw(3)"∣"setw(7)p1-namesetw(2)"∣"setw(4)p1-agesetw(4)"∣"setw(4)p1-higsetw(4)"∣"setw(5)p1-score[0]setw(4)"∣"setw(5)p1-score[1]setw(4)"∣"setw(5)p1-score[2]setw(4)"∣"setw(8)setprecision(3)p1-avesetw(4)"∣"setw(6)p1-sumsetw(4)"∣"setw(7)p1-p_ysetw(2)"∣"endl;cout"  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ "endl;

////////////////////////////////////////////////////////////////////////////////////////////

////

////

////

////////////////////////////////////////////////////////////////////////////////////////////

class ji_ke_1_class

{

int num;

char name[20];

int age;

float hig;

int score[3];

float ave;

float sum;

char p_y[10];

public:

void set_date();

void display();

void creat();

void print();

void insert();

void exchange(ji_ke_1_class *p1,ji_ke_1_class *p2);

void sort(int j);

void index(int q,char aa[20]);

void del(int num);

void save();

void tongji();

void load();

class ji_ke_1_class *next;

};

ji_ke_1_class *head,*p1,*p2,*p;

void ji_ke_1_class::set_date ()

{

cout"学号_姓名_年龄_身高_"endl;

cinnumnameagehig;

cout"--成绩::语文_数学_英语_"endl" ";

for(int i=0;i3;i++)

cinscore[i] ;

}

void ji_ke_1_class::display()

{

ji_ke_1_class *p;

int i;

for( p=head , i=0 ; in ; i++ , p=p-next )

cout"∣"

setw(6)p-num

setw(3)"∣"

setw(7)p-name

setw(2)"∣"

setw(4)p-age

setw(4)"∣"

setw(4)p-hig

setw(4)"∣"

setw(5)p-score[0]

setw(4)"∣"

setw(5)p-score[1]

setw(4)"∣"

setw(5)p-score[2]

setw(4)"∣"

setw(8)setprecision(3)p-ave

setw(4)"∣"

setw(6)p-sum

setw(4)"∣"

setw(7)p-p_y

setw(2)"∣"

endl;

}

void ji_ke_1_class::print()

{

ji_ke_1_class *p0=head;

cout"╭----------------------—╮"endl;

cout"∣ num ∣ name∣ age ∣ hig ∣ 语文 ∣ 数学 ∣ 英语 ∣ 平均 ∣ 满分 ∣ 评语 ∣ "endl;

cout"├-—-┼-—-┼-—┼-—┼-—-┼-—-┼-—-┼--—┼--┼-—-┤"endl;

p0-display();

cout"  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ "endl;

}

void ji_ke_1_class::creat()

{

int m=0;

float total=0;

head=p2=p1=new ji_ke_1_class;

p1-set_date();

while(p1-num!=0)

{

n=n+1;

if(n==1)

head=p1;

else

p2-next=p1;

p2=p1;

p1=new ji_ke_1_class;

p1-set_date ();

}

p2-next=0;

ji_ke_1_class *p=new ji_ke_1_class;

for(p=head ; mn ; p=p-next )

{

total=total+p-score[0]+p-score[1]+p-score[2];

p-sum=total;

p-ave=total/3;

coutp-sum"--__"p-aveendl;

if(p-ave85) strcpy( p-p_y , "优秀" );

else if(p-ave75) strcpy( p-p_y , "中等" );

else if(p-ave60) strcpy( p-p_y , "及格" );

else strcpy( p-p_y , "不及格" );

total=0;

m+=1;

}

}

templatetypename T1

void exchang1(T1 a,T1 b)

{

int t;

t=a;

a=b;

b=t;

}

templatetypename T2

void exchang2(T2 a,T2 b)

{

float t;

t=a;

a=b;

b=t;

}

void ji_ke_1_class::exchange(ji_ke_1_class *p1,ji_ke_1_class *p2)

{

char t2[30],t1[10];

exchang1(p1-num,p2-num);

exchang1(p1-score[1],p2-score[1]);

exchang1(p1-score[0],p2-score[0]);

exchang1(p1-score[2],p2-score[2]);

exchang2(p1-hig,p2-hig);

exchang2(p1-ave,p2-ave);

exchang2(p1-sum,p2-sum);

strcpy(t2,p1-name);

strcpy(p1-name,p2-name);

strcpy(p2-name,t2);

strcpy(t1,p1-p_y );

strcpy(p1-p_y ,p2-p_y );

strcpy(p2-p_y ,t1);

}

void ji_ke_1_class::sort(int j)

{

ji_ke_1_class *p1,*p2;

int m,t;

coutendl;

for(p1=head , m=0 ; mn-1 ; m++ , p1=p1-next)

for(p2=p1-next,t=m+1 ; tn ; t++ , p2=p2-next)

{

if( (p1-num) (p2-num) j==1 ) exchange(p1,p2);

if( (p1-sum) (p2-sum) j==2 ) exchange(p1,p2);

}

print();

coutendl;

}

void ji_ke_1_class::del(int num)

{

ji_ke_1_class *p1,*p2;

if(head==0)

{

cout"list null!";

goto end1;

}

p1=head;

while(num!=p1-num p1-next!=0)

{

p2=p1;

p1=p1-next;

}

if(num==p1-num)

{

if(p1==head) head=p1-next;

else p2-next=p1-next;

cout"""祝贺你-deleted the:"numendlendl;

n=n-1;

}

else coutnum"抱歉-好像没有这个数吧!!""";

end1: ;

}

void ji_ke_1_class::insert()

{

float total;

ji_ke_1_class *pt=new ji_ke_1_class;

ji_ke_1_class *p0,*p1,*p2;

pt=new ji_ke_1_class;

pt-set_date();

total=0;

int i;

for(i=0;i3;i++)

total+=pt-score[i];

pt-sum=total;

pt-ave=total/3;

if(pt-ave85) strcpy( pt-p_y , "优秀" );

else if(pt-ave75) strcpy( pt-p_y , "中等" );

else if(pt-ave60) strcpy( pt-p_y , "及格" );

else strcpy( pt-p_y , "不及格" );

p1=head;

p0=pt;

if(head==0)

{

head=p0;

p0-next=0;

}

else

{

while( (p0-nump1-num)(p1-next!=0))

{

p2=p1;

p1=p1-next;

}

if(p0-num=p1-num)

{

if(head==p1) head=p0;

else p2-next=p0;

p0-next=p1;

}

else

{

p1-next=p0;

p0-next=0;

}

}

n=n+1;

}

void ji_ke_1_class::index(int q,char aa[20])

{

ji_ke_1_class *p1=head;

int m=0,j=0;

int len,flag=1;

int a[4];

for( m=0 ; mn ; p1=p1-next , m++ )

{

a[0]=0;a[1]=0;a[2]=0;a[3]=0;

flag=1;

a[0]=(int)( (p1-num)/1000 ); a[1]=(int)( (p1-num-a[0]*1000 )/100 );

a[2]=(int)( (p1-num-a[1]*100-a[0]*1000 )/10 ); a[3]=(int)( p1-num-a[1]*100-a[0]*1000-a[2]*10 );

for(int i=19 ; i=0 ; i-)

{

if(aa[i]!=0)

len=i+1;

}

int m[4],k=0,y=0,x=0,d=0;

for(k=0;k4;k++)

{

d=0;

y=(int)aa[k];

for(x=48;x=57;x++)

{

d++;

if(x==y) m[k]=(d-1);

}

}

for(j=0 ; j4 ; j++ )

{

if( a[j]!=m[j] )

flag=0;

}

if( flag==1 q==1 )

{

NN

break;

}

if( p1-name[0]==aa[0] p1-name[1]==aa[1] p1-name[2]==aa[2] q==2 )

{

NN

break;

}

}

if( m==n ) cout"no the student"endl;

}

int x[20];

string filename;

void ji_ke_1_class::save()

{

int d,d1=0;

int ii;

coutendl"请输入存储路径(建议存入现目前文件中的data_save中)(例 -绝对路径:C:\\\\文件名\\\\文件名\\\\数据名.dat "

" -相对路径:save\\\\数据名.dat; )"

endl

"路径为:";

string cc;

cincc;

cout" ╭-------╮"endl"已经在保存 ";

for(ii=0;ii15;ii++)

{

cout'\20';

Sleep(15);

}

ifstream file1("程序必用1.dat",ios::binary);

file1.read( (char *)d , sizeof(d) );

d1=(int)d+1;

file1.close();

string filename0,name_file;

filename0=cc;

name_file=filename0.c_str();

ofstream file2("程序必用1.dat",ios::binary);

file2.write( (char *)d1 , sizeof(d1) );

file2.close();

ofstream file3("程序必用2.dat", ios::app|ios::out );

file3name_file.c_str ()" ";

file3.close();

ofstream outfile(cc.c_str(),ios::binary);

if(!outfile)

{

cerr"!!!!!"endl;

abort();

}

outfile.write( (char *)n , sizeof(n) );

ji_ke_1_class *p=head;

for(int i=0;in;i++,p=p-next)

outfile.write( (char *)p,sizeof(ji_ke_1_class));

outfile.close();

for(ii=0;ii15;ii++)

{

cout'\20';

Sleep(15);

}

coutendlendl;

cout"--已成功保存!!!!!!"endlendl;

}

void ji_ke_1_class::load()

{

int h1,h2;

string qq,name[20],name0[20];

ifstream file("程序必用1.dat",ios::binary);

if(!file)

{

cerr"open error!!"endl;

abort();

}

file.read( (char *)h1, sizeof(h1) );

h2=int(h1);

cout"共有以下 "h2" 个文件"endl;

ifstream file0("程序必用2.dat",ios::in);

if(!file0)

{

cerr"open error!!"endl;

abort();

}

for(int e=0;eh2;e++)

{

if(e%2==0) coutendl;

file0name[e];

name0[e]=name[e];

cout"第"e+1"个文件:"setw(16)(string)name0[e]" ; ";

}

file0.close();

coutendl;

loop3:

coutendl"请输入路径(例 -绝对路径:C:\\\\文件名\\\\文件名\\\\数据名.dat -相对路径:save\\\\数据名.dat;)"endl ;

cout"路径为:";

string ccc;

cinccc;

cout" ╭-------╮"endl"已经在读取 ";

int ii;

for(ii=0;ii15;ii++)

{

cout'\20';

Sleep(15);

}

ifstream infile(ccc.c_str(),ios::binary);

int c;

ji_ke_1_class t[60],*pp[60];

if(!infile)

{

coutendl"无此文件; 1-重输 ; other-放弃";

cinc;

if(c==1) goto loop3;

else goto loop4;

}

int nn,nnn;

int i;

infile.read( (char *)nn , sizeof(nn) );

nnn=(int)nn;

n=nnn;

infile.read( (char *)t[0] , sizeof(ji_ke_1_class) );

head=(ji_ke_1_class *)t[0];

for(i=1; innn; i++)

{

infile.read( (char *)t[i] , sizeof(ji_ke_1_class) );

pp[i]=(ji_ke_1_class *)t[i];

if(i==1)

{

head-next=pp[1];

}

if(i!=1)

{

pp[i-1]-next=pp[i];

}

}

infile.close();

for(ii=0;ii15;ii++)

{

cout'\20';

Sleep(15);

}

coutendl;

coutendl"----祝贺!!!成功装载,数据文件以可以使用"endlendl;

loop4:;

}

void ji_ke_1_class::tongji()

{

ji_ke_1_class *pm=head;

int m,by=0,bz=0,bc=0,bj=0;

for(pm=head , m=0 ; mn ; m++ , pm=pm-next)

{

if( pm-ave = 85 ) by++;

if( pm-ave 85 pm-ave =75 ) bz++;

if( pm-ave =60 pm-ave 75 ) bj++;

if( pm-ave 60 ) bc++;

}

coutendl

"总计 "n" 人:"endl

" 优秀生人员数量:"setw(5)bysetw(12)"优秀率为:"setw(6)setprecision(5)(double)by/nendl

" 中等生人员数量:"setw(5)bzsetw(12)"中等率为:"setw(6)setprecision(5)(double)bz/nendl

" 及格生(60-75)人员数量:"setw(5)bjsetw(12)"及格率为:"setw(6)setprecision(5)(double)bj/nendl

" 不及格人员数量为:"setw(5)bcsetw(12)"不及格率为:"setw(6)setprecision(5)(double)bc/nendlendl;

}

void bz()

{

system("cls");

M"欢"Y"迎"Y"使"Y"用"Y"本"Y"程"Y"序"Y"-"Y"-"Y"-"Y"-"Y"-"Y" 使"Y"用"Y"说"Y"明"Y":"N;coutendlendl;

M"一"Y""Y"、"Y"建"Y"立"Y"自"Y"己"Y"的"Y"数"Y"据"Y"("Y"建"Y"议"Y"马"Y"上"Y"存"Y"储"Y"!"Y"!"Y")"Y"按"Y"提"Y"示"Y"操"Y"作"Y"即"Y"可"Y";"Y"呵"Y"呵"N;coutendlendl;

M"二"Y""Y"、"Y"注"Y"意"Y"事"Y"项"Y":"Y" 对"Y"链"Y"表"Y"("Y"数"Y"据"Y")"Y"若"Y"超"Y"过"Y"6"Y"0"Y"个"Y","Y"则"Y"请"Y"联"Y"系"Y""Y""Y"吕"Y""Y""Y"威"Y""Y""Y"___"Y"qq"Y":"Y"921963406"Y","Y"可"Y"免"Y"费"Y"赠"Y"送"Y"所"Y"需"Y"程"Y"序"N;coutendlendl;

M"三"Y""Y"、"Y"建"Y"链"Y"表"Y"的"Y"最"Y"后"Y"使"Y"全"Y"为"Y"0"Y","Y"建"Y"表"Y"结"Y"束"N;coutendlendl;

M"四"Y""Y"、"Y"因"Y"技"Y"术"Y"有"Y"限"Y","Y"清"Y"屏"Y"函"Y"数"Y"造"Y"成"Y"head"Y"丢"Y"失"Y";"Y"慎"Y"用"Y"!"Y"!"N;coutendlendl" ";

M"制"Y"作"Y"人"Y":"Y""Y""Y""Y""Y"吕"Y""Y""Y""Y""Y"威"Y""Y""Y""Y""N;coutendlendl;

}

////////////////////////////////////////////////////////////////////////////////////////////

////

////

////////////////////////////////////////////////////////////////////////////////////////////

void mult()

{tm * tp;

time_t t;

cout"____________________________________________________________________________________________________";

cout" ╭-------╮"

" ";

t=time(NULL);

tp=localtime(t);

couttp-tm_mon+1"-"tp-tm_mday"-"tp-tm_year+1900" ";

couttp-tm_hour":"tp-tm_min":"tp-tm_sec;

cout" ∣ 菜单 ∣ "

" ∣____________________________∣"

" ∣ 0-创建数据 ∣"

" ∣ ∣"

" ∣ 1-按学号排序 ∣"

" ∣ ∣"

" ∣ 2-按成绩排序 ∣"

" ∣ ∣"

" ∣ 3-删除一学生信息 ∣"

" ∣ ∣"

" ∣ 4-插入一学生信息 ∣"

" ∣ ∣"

" ∣ 5-检索一学生 ∣"

" ∣ ∣"

" ∣ 6-统计数据 ∣"

" ∣ ∣"

" ∣ 7-保存 ∣"

" ∣ ∣"

" ∣ 8-打开 ∣"

" ∣ ∣"

" ∣ 9-清屏 ∣"

" ∣ ∣"

" ∣ 10-帮(建议先看) ∣"

" ∣ other-quit ∣"

" ∣ ∣"

"  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄";

}

void select()

{

int fl=0,a,num2;

ji_ke_1_class aa;

loop:

cout"What can I do for you ? ? ?(输入命令-数字) :";

cina;

switch(a)

{

case 0 :

{

cout"输入数据";

aa.creat();

aa.print();

goto loop;

}

case 1 :

{

aa.sort(1);

goto loop;

}

case 2 :

{

aa.sort(2);

goto loop;

}

case 3 :

{

cout"num========";

cinnum2;

aa.del(num2);

goto loop;

}

case 4 :

{

aa.insert();

goto loop;

}

case 5 :

{

char xx[20]={0};

cout"输入要查询的学生的学号 或 姓名:";

cinxx;

if( xx[0]=48 xx[0]=57 )

aa.index(1,xx);

else

aa.index(2,xx);

goto loop;

}

case 6 :

{

aa.tongji();

goto loop;

}

case 7 :

{

aa.save();

fl=1;

goto loop;

}

case 8 :

{

aa.load();

goto loop;

}

case 9 :

{

ji_ke_1_class *nn=new ji_ke_1_class;

head=nn;

system("cls");//清屏导致head丢失--------------??????????????????

nn=head;

mult();

goto loop;

}

case 10 :

{

bz();

mult();

goto loop;

}

default :

{

if(fl=0)

{

char f;

cout"你想要储存吗?y/N";

cinf;

if(f=='y'||f=='y')

{

aa.save();

fl=1;

goto loop;

}

else goto end;

}

else goto end;

}

}

end:;

}

void main()

{

int q2=0;

ifstream file0("程序必用1.dat",ios::binary);

if(!file0)

{

file0.close();

ofstream file1("程序必用1.dat",ios::binary);

file1.write( (char *)q2 , sizeof(q2) );

file1.close();

goto loop5;

}

file0.close();

loop5:

mult();

select();

}

c语言成绩管理系统优点?

c语言运行速度快,故此,c语言成绩管理系统优点就是性能高,且安全。

成绩查询备考资料及辅导课程

成绩查询免费资料+培训课程

©下载资源版权归作者所有;本站所有资源均来源于网络,仅供学习使用,请支持正版!

成绩查询培训班名师辅导课程

考试培训视频课程
考试培训视频课程

以上就是本文c语言学生成绩管理系统为什么只能输入一个,c语言学生成绩管理系统设计报告的全部内容

本文链接:https://bbs.china-share.com/news/46999.html

发布于:博宇考试网(https://bbs.china-share.com/)>>> 成绩查询栏目(https://bbs.china-share.com/chengjichaxun/)

投稿人:网友投稿

说明:因政策和内容的变化,上文内容可供参考,最终以官方公告内容为准!

声明:该文观点仅代表作者本人,博宇考试网系信息发布平台,仅提供信息存储空间服务。对内容有建议或侵权投诉请联系邮箱:ffsad111@foxmail.com

关注本站了解更多关于文c语言学生成绩管理系统为什么只能输入一个,c语言学生成绩管理系统设计报告和成绩查询的相关信息。

成绩查询热门资讯推荐

  • 成绩查询正常女生100米成绩标准,一百米女生正常成绩大学生

    正常女生100米成绩标准? 16秒左右。 女子100米国家运动员标准成绩为:一级11.80,二级13.04,三级14.04。 田径是体育运动中最大的项目,它涵盖五个类别的不少单项。它是竞赛次数最多、运动员...

  • 成绩查询英语三级查分入口

    英语三级查分通道入口? 学员可以在考后50个工作日后,登陆“教育部考试中心综合查询网”(http://chaxun.neea.edu.cn)或PETS报名官方网站(http://pets.etest.net.cn)查询考试成绩。 假设对此次考试成绩有异...