c++成绩记录簿的课程设计,急需大神相助

用c++制作一个成绩记录簿的课程设计,但是许多功能实现不了,磁盘文件不会调用,求大神帮忙
#include
#include
#include
#include
#define N 1000
using namespace std;
class Student//定义一个学生类
{
public:
Student(long n=100000,string na="无",string se="男",float c=0):num(n),name(na),sex(se),cpp(c){};
long num;
string name;
string sex;
float cpp;
};
void display()
{
int i;
Student stud[N];
system("color 4C");
fstream iofile("学生信息.dat",ios::in|ios::out|ios::binary);
if(!iofile)
{cerr<<"open error!"<<endl;
abort();
}
for(i=0;i<5;i++)
iofile.write((char *)&stud[i],sizeof(stud[i]));

    for(i=0;i<5;i++)
    {

iofile.read((char *)&stud[i],sizeof(stud[i]));
cout<<stud[i].num<<" "<<stud[i].name<<" "<<stud[i].sex<<" "<<stud[i].cpp<<" "<<endl;
}
iofile.close();
}

void search_by_num()
{system("color 3D");
Student stud[5];
int i;
long n;
ifstream infile("学生信息.dat",ios::in);
if(!infile)
{cerr<<"open error!"< exit(1);
}
cout cin>>n;
cout<<"该学生信息如下:"< for(i=0;i {infile>>stud[i].num>>stud[i].name>>stud[i].sex>>stud[i].cpp;
}
for(i=0;i {
if(stud[i].num==n)
{cout cout cout cout cout cout }
}
infile.close();
}
void search_by_name()
{ system("color 3E");
Student stud[5];
int i;
string namel;
ifstream infile("学生信息.dat",ios::in);
if(!infile)
{cerr exit(1);
}
cout cin>>namel;
cout<<"该学生信息如下:"< for(i=0;i {infile>>stud[i].num>>stud[i].name>>stud[i].sex>>stud[i].cpp;
}
for(i=0;i {if(stud[i].name==namel)
{cout cout cout cout cout cout }
}
infile.close();
}
void add()
{ system("color 3B");
Student studx;
ofstream outfilel("增加信息.dat");
if(!outfilel)
{cerr exit(1);
}
cout cout cin>>studx.num;
cout<<"姓名:";
cin>>studx.name;
cout<<"性别:";
cin>>studx.sex;
cout<<"c++:";
cin>>studx.cpp;
outfilel<<" "< outfilel.close();
}
void save_to_information()
{system("color 3A");
Student studx;
ifstream infile("增加信息.dat");
if(!infile)
{cerr exit(1);
}
ofstream outfile("学生信息.dat",ios::app);
if(!outfile)
{cerr exit(1);
}
infile>>studx.num>>studx.name>>studx.sex>>studx.cpp;
outfile<<" "< infile.close();
outfile.close();
cout void change_by_num()
{system("color 3D");
Student stud[5];
int i;
long numl;
long nu;
string se;
float cp;
ifstream infile("学生信息.dat",ios::in);
if(!infile)
{cerr exit(1);
}
cout cin>>numl;
for(i=0;i {infile>>stud[i].num>>stud[i].name>>stud[i].sex>>stud[i].cpp;
}
infile.close();
ofstream outfile("学生信息 .dat",ios::out);
if(!outfile){cerr<<"open file error!";exit(1);
}
cout<<"请输入修改数据:"< cout cin>>nu;
cout<<"性别:";
cin>>se;
cout<<"C++:";
cin>>cp;
for(i=0;i {if(stud[i].num=numl&&stud[i].num!=100000)
{stud[i].num=nu;stud[i].sex=se;stud[i].cpp=cp;}
if(stud[i].num!=10000)outfile }
cout outfile.close();//如果学号不等于100000,才保存文件;
}
void change_by_name()
{Student stud[5];
int i;
string namel;
long nu;
string na;
string se;
float cp;
ifstream infile("学生信息.dat",ios::in);
if(!infile)
{cerr exit(1);
}
cout cin>>namel;
for(i=0;i {infile>>stud[i].num>>stud[i].name>>stud[i].sex>>stud[i].cpp ;}
infile.close();
ofstream outfile("学生信息dat",ios::out);
if(!outfile){cerr<<"open file error!";exit(1);}
cout<<"请输入修改数据:"< cout cin>>nu;
cout<<"性别:";
cin>>se;
cout<<"C++:";
cin>>cp;
for(i=0;i {if(stud[i].name==namel&&stud[i].num!=100000){stud[i].num=nu;stud[i].sex=se;stud[i].cpp=cp;}
if(stud[i].num!=100000)outfile }
cout outfile.close();
}
void display_by_select_cpp()
{Student stud[5];
float average=0;
float total=0;
int i;
int j=0;
int k=0;
int m=0;
int n=0;
int p=0;
fstream infile("学生信息.dat",ios::in);
if(!infile)
{
cerr exit(1);
}
for(i=0;i {
infile>>stud[i].num>>stud[i].name>>stud[i].sex>>stud[i].cpp ;
total=total+stud[i].cpp;}
infile.close();
cout<<"-------90分以上的学生--------"< {cout for(i=0;i {if(stud[i].cpp=90)
{if(stud[i].num==100000)break;
cout< cout j++;
}
}
cout cout cout cout for(i=0;i {
if(stud[i].cpp=80)
{if(stud[i].num==100000)break;
cout< cout j++;k++;}}
cout cout cout cout for(i=0;i {
if(stud[i].cpp=70)
{if(stud[i].num==100000)break;
cout< cout j++;m++;
}
}
cout cout cout cout for(i=0;i {
if(stud[i].cpp=60)
if(stud[i].num==100000)break;
cout< cout j++;n++;}}
cout cout cout cout for(i=0;i {if(stud[i].cpp=0)
{if(stud[i].num==100000)break;
cout<<setiosflags(ios::left);
cout<<setw(10)<<stud[i].name<<setw(8)<<stud[i].num<<setw(8)<<stud[i].sex<<setw(8)<<stud[i].cpp<<endl;
j++;p++;}}
average=total/j;
cout<<endl<<endl<<endl;
cout<<"总计:"<<p<<"人,学生总人数"<<j<<"人,班级C++平均分"<<average<<endl<<endl;
cout<<"-------------------"<<endl;
}

void Main_desk()
{cout<<endl<<endl<<endl;
cout<<"***********************************"<<endl;
cout<<" * 欢迎使用学生成绩记录簿*"<<endl;
cout<<"* "<<endl;
cout<<"
"<<endl;
cout<<"
"<<endl;
cout<<"
1.显示所有 "<<endl;
cout<<"
2.查询信息 "<<endl;
cout<<"
3.增加记录 "<<endl;
cout<<"
4.修改数据 "<<endl;
cout<<"
5.成绩分段 "<<endl;
cout<<"
6.退出 "<<endl;
cout<<"
********************************"<<endl;
cout<<"* 请输入功能导向码 *"<<endl;
}

void Search_desk()
{cout<<"*************************"< cout cout cout cout }
void Change_desk()
{cout cout cout cout cout }
void Add_desk()
{cout cout cout cout }
void Del_desk()
{
}
void del_by_num()
{
}
void del_by_name()
{
}
int key()
{int n;
cin>>n;
return n;
}
int main()
{system("color 3B");
while(1)
{Main_desk();
switch(key())
{
case 1:system("cls");display();break;
case 2:system("cls");while(1)
{Search_desk();
switch(key())
{case 1:search_by_num();break;
case 2:search_by_name();break;
case 3:system("cls");main();break;
}
}
break;
case 3:system("cls");while(1)
{Add_desk();
switch(key())
{case 1:add();save_to_information();break;
case 2:system("cls");main();break;
}
}
break;
case 4:system("cls");while(1)
{Change_desk();
switch(key())
{case 1:change_by_num();break;
case 2:change_by_name();break;
case 3:system("cls");main();break;
}
}
break;
case 5:system("cls");
while(1)
{Del_desk();
switch(key())
{case 1:del_by_num();break;
case 2:del_by_name();break;
case 3:system("cls");main();break;
}
}break;
case 6:exit(1);break;
}
}
return 0;}

1个回答

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
c++课程设计成绩记录簿
学生成绩管理系统,用c++语言实现。代码600余行,可在dev c++中运行,也可在vc++中运行。
成绩记录簿 C语言
c语言 成绩记录簿代码,利用数组
C程序写的成绩记录簿
程序为用C写的成绩记录簿能帮助解决和提供程序设计的一些思路。
成绩记录簿
我设计的代码是在vc++环境下才能运行下来!这是一个成绩记录本!如果想记录一下你的成绩的话,就进来看一下吧!
学生成绩记录簿C代码
学生成绩记录簿 C语言课程设计 附:任务书,程序说明书、代码
成绩记录簿 使用c语言
成绩记录簿 使用c语言 自己设计的 测试通过的
java课程设计-学生成绩记录簿设计
编制一个Java 语言成绩记录簿,每个学生信息包括:学号、姓名、Java语言成绩。具体功能: (1)创建学生信息并以磁盘文件保存; (2)读取磁盘文件并显示输出所有学生的成绩; (3)按学号或姓名查询成绩; (4)添加成绩记录; (5)修改指定姓名或学号的学生的成绩并可存盘; (6)显示输出60分以下、60~79、80~89、90分以上各分数段的学生信息(可选项)
C语言 C程序 成绩记录簿
成绩 成绩记录簿 C语言 C程序 记录簿 C语言 C程序 成绩记录簿 C语言 C程序
学生成绩记录簿 课程设计报告+源码
通过编写c语言《学生成绩记录簿系统》让我知道所学的编程语言是需要多练多编写代码锻炼出来的。 1)C语言课程设计的主要目的是培养学生综合运用C语言程序设计课程所学到的知识,编写C程序解决实际问题的能力,以及严谨的工作态度和良好的程序设计习惯。 2)通过课程设计的训练,学生应该能够了解程序设计的基本开发过程,掌握编写、调试和测试C语言程序的基本技巧,充分理解结构化程序设计的基本方法。 3)C语言程序设计的主要任务是要求学生遵循软件开发过程的基本规范,运用结构化程序设计的方法,按照课程设计的题目要求,分析、设计、编写、调试和测试C语言程序及编写设计报告。
C语言课程设计 成绩记录簿
主要内容 开发一个小型的成绩记录簿系统,使之能提供以下功能:rn(1)完成学生成绩信息录入功能(用文件保存)?rn(2)学生信息、成绩信息的浏览功能--输出?rn(3)查询和排序功能:(至少一种查询方式)--算法?rn(4)各类信息的删除与修改rnrn任务要求 1.研究系统的组成结构,给出设计方案;rn2.掌握文件读取的操作;rn3.掌握菜单的操作;rn4. 掌握结构体的使用;
C语言程序设计实现学生成绩记录簿
通过编写c语言《学生成绩记录簿系统》让我知道所学的编程语言是需要多练多编写代码锻炼出来的。 1)C语言课程设计的主要目的是培养学生综合运用C语言程序设计课程所学到的知识,编写C程序解决实际问题的能力,以及严谨的工作态度和良好的程序设计习惯。 2)通过课程设计的训练,学生应该能够了解程序设计的基本开发过程,掌握编写、调试和测试C语言程序的基本技巧,充分理解结构化程序设计的基本方法。 3)C语言程序设计的主要任务是要求学生遵循软件开发过程的基本规范,运用结构化程序设计的方法,按照课程设计的题目要求,分析、设计、编写、调试和测试C语言程序及编写设计报告。
c语言课程设计 成绩记录簿
主要内容 开发一个小型的成绩记录簿系统,使之能提供以下功能:rn(1)完成学生成绩信息录入功能(用文件保存)?rn(2)学生信息、成绩信息的浏览功能--输出?rn(3)查询和排序功能:(至少一种查询方式)--算法?rn(4)各类信息的删除与修改
JAVA-学生成绩记录簿设计
学生成绩记录簿设计 编制一个C语言成绩记录簿,每个学生信息包括:学号、姓名、C语言成绩。具体功能: (1)创建学生信息并以磁盘文件保存; (2)读取磁盘文件并显示输出所有学生的成绩; (3)按学号或姓名查询成绩; (4)添加成绩记录; (5)修改指定姓名或学号的学生的成绩并可存盘; (6)显示输出60分以下、60~79、80~89、90分以上各分数段的学生信息(可选项)。 (7)能将信息存储到本地文本文件中
帮忙做个题目 成绩记录簿
编制一个C语言成绩记录簿,每个学生信息包括:学号、姓名、C语言成绩。具体功能:rn (1)创建信息链表并以磁盘文件保存;rn (2)读取磁盘文件并显示输出所有学生的成绩;rn (3)按学号或姓名查询成绩;rn (4)添加成绩记录;rn (5)修改指定姓名或学号的学生的成绩并可存盘;rn (6)显示输出60分以下、60~79、80~89、90分以上各分数段的学生信息。rnrnrnrn用C语言做,哪个朋友帮忙做下,嘻嘻。
C 成绩管理系统课程设计
这是用C语言写的一个成绩管理系统,里面包含它的全部代码
c课程设计 成绩管理系统
前年做C课程设计是做的一个小的程序
c课程设计 成绩管理系统
c语言课程设计 成绩管理系统。希望对C语言初学者有帮助,编译环境TC。
急需高手的相助?
编译时在项目的.cpp中的rnUSEFORM("FrmMain\UFrmMain.cpp", FrmMain);rn出现以下错误rn[C++ Error] EStorage.cpp(6): E2040 Declaration terminated incorrectlyrn引起该错误的原因是什么?
急需相助!WebBrowser问题!
我用WebBrowser组件编写一段获取html网页数据。分析得到的数据总是不理想。rn 我想分析中国农业银行里面的“理财服务 > 动态行情 > 开放式基金净值公告”表中的数据。可是得到的数据都是农业银行首页上的表格框架中的数据,没有我要的基金中的数据。5555,弄了2天了,苦痛啊!好心的兄弟姐妹们,帮帮忙啊~ QQ:113545560rn 先帖一下我的代码。rnPrivate Sub Command1_Click()rn WebBrowser1.Navigate "http://www.abchina.com/cn/hq/jijinjz.jsp/fid=20000020/id=120003850/sid=105000706/index.html"rnEnd SubrnrnPrivate Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)rn If Not (pDisp Is WebBrowser1.Object) Then Exit Subrn 'On Error Resume Nextrn Dim i, j As Longrn Dim Text As Stringrn Dim Row As HTMLTableRow, Cell As HTMLTableCell, Table1 As HTMLTable, Tables As IHTMLElementCollectionrn Set Tables = WebBrowser1.Document.getElementsByTagName("TABLE")rn For Each Table1 In Tablesrn For i = 0 To Table1.rows.length - 1 ' 逐行处理rn Set Row = Table1.rows(i)rn j = 0rn For Each Cell In Row.cells ' 逐列处理rn 'Row.cells(j).innerText即为当前行及当前列上的单元数据rn Text = Text + Trim(Row.cells(j).innerText) + "," ’得到数据rn j = j + 1rn Nextrn ' 一行处理完毕后,去除行尾的逗号并加上回车rn Text = Left(Text, Len(Text) - 1) + vbCrLfrn Next irn Next Table1rn Debug.Print TextrnEnd Subrnrn
求助c语言课程设计 关于一个C语言成绩记录簿 急!!!!
关于一个C语言成绩记录簿,每个学生信息应该包括:学号、姓名、C语言成绩。具体功能: rn (1)创建信息链表并以磁盘文件保存; rn (2)读取磁盘文件并显示输出所有学生的成绩; rn (3)按学号或姓名查询成绩; rn (4)添加成绩记录; rn (5)修改指定姓名或学号的学生的成绩并可存盘; rn (6)显示输出60分以下、60~79、80~89、90分以上各分数段的学生信息。 rn rn 把第五个统计学生的程序改为“显示输出60分以下、60~79、80~89、90分以上各分数段的学生信息”,谢谢啊! rn 现在不是很长啊!就看下啊,你们肯定比我强啊!只要稍微改下就可以了啊!把里面加个功能“显示输出60分以下、60~79、80~89、90分以上各分数段的学生信息”就可以了啊,拜托啊!!1 rn rn rn #include "stdio.h" rn #include "stdlib.h" rn #include "string.h" rn int shoudsave=0; // rn struct student rn rn char num[10];//学号 rn char name[20]; rn int cgrade; rn char neartime[10];//最近更新时间 rn ; rn typedef struct node rn rn struct student data; rn struct node *next; rn Node,*Link; rn void menu() rn rn printf("********************************************************************************"); rn printf("\t1输入学生资料\t\t\t\t\t2查询学生资料\n"); rn printf("\t3修改学生资料\t\t\t\t\t4显示学生资料\n"); rn printf("\t5统计学生成绩\t\t\t\t\t6保存学生资料\n"); rn printf("\t7获取帮助信息\t\t\t\t\t0退出系统\n"); rn printf("********************************************************************************\n"); rn rn void printstart() rn rn printf("-----------------------------------------------------------------------\n"); rn rn void Wrong() rn rn printf("\n=====>提示:输入错误!\n"); rn rn void Nofind() rn rn printf("\n=====>提示:没有找到该学生!\n"); rn rn void printc() // 本函数用于输出中文 rn rn printf(" 学号\t 姓名 C语言成绩 \n"); rn rn void printe(Node *p)//本函数用于输出英文 rn rn printf("%-12s%s\t%d\t \n",p->data.num,p->data.name,p->data.cgrade); rn rn Node* Locate(Link l,char findmess[],char nameornum[]) //该函数用于定位连表中符合要求的接点,并返回该指针 rn rn Node *r; rn if(strcmp(nameornum,"num")==0) //按学号查询 rn rn r=l->next; rn while(r!=NULL) rn rn if(strcmp(r->data.num,findmess)==0) rn return r; rn r=r->next; rn rn rn else if(strcmp(nameornum,"name")==0) //按姓名查询 rn rn r=l->next; rn while(r!=NULL) rn rn if(strcmp(r->data.name,findmess)==0) rn return r; rn r=r->next; rn rn rn return 0; rn rn void Add(Link l) //增加学生 rn rn Node *p,*r,*s; rn char num[10]; rn r=l; rn s=l->next; rn while(r->next!=NULL) rn r=r->next; //将指针置于最末尾 rn while(1) rn rn printf("请你输入学号(以'0'返回上一级菜单:)"); rn scanf("%s",num); rn if(strcmp(num,"0")==0) rn break; rn while(s) rn rn if(strcmp(s->data.num,num)==0) rn rn printf("=====>提示:学号为'%s'的学生已经存在,若要修改请你选择'4 修改'!\n",num); rn printstart(); rn printc(); rn printe(s); rn printstart(); rn printf("\n"); rn return; rn rn s=s->next; rn rn rn p=(Node *)malloc(sizeof(Node)); rn rn strcpy(p->data.num,num); rn printf("请你输入姓名:"); rn scanf("%s",p->data.name); rn getchar(); rn printf("请你输入c语言成绩:"); rn scanf("%d",&p->data.cgrade); rn //信息输入已经完成 rn p->next=NULL; rn r->next=p; rn r=p; rn shoudsave=1; rn rn rn rn void Qur(Link l) //查询学生 rn rn int sel; rn char findmess[20]; rn Node *p; rn if(!l->next) rn rn printf("\n=====>提示:没有资料可以查询!\n"); rn return; rn rn printf("\n=====>1按学号查找\n=====>2按姓名查找\n"); rn scanf("%d",&sel); rn if(sel==1)//学号 rn rn printf("请你输入要查找的学号:"); rn scanf("%s",findmess); rn p=Locate(l,findmess,"num"); rn if(p) rn rn printf("\t\t\t\t查找结果\n"); rn printstart(); rn printc(); rn printe(p); rn printstart(); rn rn else rn Nofind(); rn rn else if(sel==2) //姓名 rn rn printf("请你输入要查找的姓名:"); rn scanf("%s",findmess); rn p=Locate(l,findmess,"name"); rn if(p) rn rn printf("\t\t\t\t查找结果\n"); rn printstart(); rn printc(); rn printe(p); rn printstart(); rn rn else rn Nofind(); rn rn else rn Wrong(); rn rn rn void Modify(Link l) rn rn Node *p; rn char findmess[20]; rn if(!l->next) rn rn printf("\n=====>提示:没有资料可以修改!\n"); rn return; rn rn printf("请你输入要修改的学生学号:"); rn scanf("%s",findmess); rn p=Locate(l,findmess,"num"); rn if(p) rn rn printf("请你输入新学号(原来是%s):",p->data.num); rn scanf("%s",p->data.num); rn printf("请你输入新姓名(原来是%s):",p->data.name); rn scanf("%s",p->data.name); rn printf("请你输入新的c语言成绩(原来是%d分):",p->data.cgrade); rn scanf("%d",&p->data.cgrade); rn printf("\n=====>提示:资料修改成功!\n"); rn shoudsave=1; rn rn else rn Nofind(); rn rn void Disp(Link l) rn rn int count=0; rn Node *p; rn p=l->next; rn if(!p) rn rn printf("\n=====>提示:没有资料可以显示!\n"); rn return; rn rn printf("\t\t\t\t显示结果\n"); rn printstart(); rn printc(); rn printf("\n"); rn while(p) rn rn printe(p); rn p=p->next; rn rn printstart(); rn printf("\n"); rn rn void Tongji(Link l) rn rn Node *pc = l; //用于指向分数最高的接点 rn Node *r=l->next; rn if(!r) rn rn printf("\n=====>提示:没有资料可以统计!\n"); rn return ; rn rn rn while(r!=NULL) rn rn if(r->data.cgrade>=pc->data.cgrade) rn pc=r; rn r=r->next; rn rn printf("------------------------------统计结果--------------------------------\n"); rn printf("c语言最高者:\t%s %d分\n",pc->data.name,pc->data.cgrade); rn printstart(); rn rn void Save(Link l) rn rn FILE* fp; rn Node *p; rn int flag=1,count=0; rn fp=fopen("c:\\student","wb"); rn if(fp==NULL) rn rn printf("\n=====>提示:重新打开文件时发生错误!\n"); rn exit(1); rn rn p=l->next; rn while(p) rn rn if(fwrite(p,sizeof(Node),1,fp)==1) rn rn p=p->next; rn count++; rn rn else rn rn flag=0; rn break; rn rn rn if(flag) rn rn printf("\n=====>提示:文件保存成功.(有%d条记录已经保存.)\n",count); rn shoudsave=0; rn rn fclose(fp); rn rn void main() rn rn Link l;//连表 rn FILE *fp; //文件指针 rn int sel; rn char ch; rn char jian; rn int count=0; rn Node *p,*r; rn printf("\t\t\t\t学生成绩记录簿\n\t\t\t\t-------电子信息学院 李慧(200501135)\n"); rn l=(Node*)malloc(sizeof(Node)); rn l->next=NULL; rn r=l; rn fp=fopen("C:\\student","rb"); rn if(fp==NULL) rn rn printf("\n=====>提示:文件还不存在,是否创建?(y/n)\n"); rn scanf("%c",&jian); rn if(jian=='y'||jian=='Y') rn fp=fopen("C:\\student","wb"); rn else rn exit(0); rn rn printf("\n=====>提示:文件已经打开,正在导入记录......\n"); rn while(!feof(fp)) rn rn p=(Node*)malloc(sizeof(Node)); rn if(fread(p,sizeof(Node),1,fp)) //将文件的内容放入接点中 rn rn p->next=NULL; rn r->next=p; rn r=p; //将该接点挂入连中 rn count++; rn rn rn fclose(fp); //关闭文件 rn printf("\n=====>提示:记录导入完毕,共导入%d条记录.\n",count); rn while(1) rn rn menu(); rn printf("请你选择操作:"); rn scanf("%d",&sel); rn if(sel==0) rn rn if(shoudsave==1) rn getchar(); rn printf("\n=====>提示:资料已经改动,是否将改动保存到文件中(y/n)?\n"); rn scanf("%c",&ch); rn if(ch=='y'||ch=='Y') rn Save(l); rn rn printf("\n=====>提示:你已经退出系统,再见!\n"); rn break; rn rn switch(sel) rn rn case 1:Add(l);break; //增加学生 rn case 2:Qur(l);break;//查询学生 rn case 3:Modify(l);break;//修改学生 rn case 4:Disp(l);break;//显示学生 rn case 5:Tongji(l);break;//统计学生 rn case 6:Save(l);break;//保存学生 rn case 7:printf("\t\t\t==========帮助信息==========\n");break; rn default: Wrong();getchar();break; rn rn rn rnrnrnrnrnrn联系方式 QQ:609912601rn
c课程设计学生成绩管理系统
c课程设计学生成绩管理系c课程设计学生成绩管理系统统c课程设计学生成绩管理系统
C课程设计题成绩管理
实现对学生成绩的基本管理,包括 ① 录入:从键盘上录入学生的相关信息,包括姓名、学号、分数(可自行设定,如总分,数学分,语文分,外语分等)等信息。 ② 编辑:修改或删除某学生的信息,在操作前,需先进行查找定位。 ③ 查找:按姓名或学号等有关项进行查找,或对名次进行查找。 ④ 显示:将学生的信息按某种格式显示出来。 ⑤ 排序:按有关成绩项进行排序(如按总分排,或按某门成绩排) ⑥ 统计计算:计算学生个人的总分、平均分等信息,以及计算整个班级 的总分、平均分等信息(实现部分即可) ⑦ 读文件:把文件中的信息读到相关的数据结构中。 写文件:将学生信息保存到文件中。
c课程设计《学生成绩管理》
c语言设计的学生成绩管理,基本功能都有。用tc可以很好的运行。
C语言 课程设计 成绩管理系统
自己写的C语言 课程设计 成绩管理系统,请大家多多指教
c语言成绩管理系统课程设计
主要是通过c语言编程,实现对学生成绩的管理,包括成绩录入,成绩显示,成绩删除,成绩排序,等一些功能。
C语言程序设计课程设计之成绩管理系统
C语言程序设计课程设计之成绩管理系统实验报告(包括源代码和运行结果)
C语言成绩管理系统课程设计
关于成绩管理系统的一系列都包含在里面,这样可以比较直观的看明白是怎么一回事!
成绩管理系统 c语言 课程设计
好东西又要上货了哦,亲~内涵需求概述、需求说明、总体设计、模块详解哦~还可以外存至TXT文件,相当方便哦,走过路过不要错过啊~ 设计一个学生成绩管理系统,使之能提供以下功能: 1) 录入学生成绩信息并保存 2) 查询学生成绩信息 3) 删除学生成绩信息 4) 修改学生成绩信息 5) 排序学生成绩信息 6) 统计学生人数
课程设计C语言成绩管理系统
编译此代码需要使用VC++6.0,并且源文件扩展名必须是.cpp . 此程序没有使用链表之类的结构,而直接使用一条记录在文件中的偏移来管理成绩信息. 程序使用了文件内存映射的技术,使操作文件更快. 你可以进行添加,修改,删除信息,并且能够按某些规则排序. 程序还使用了DOS命令改变背景颜色. 此程序是我(WaiTing)编的,和其他网站上的不一样,具有一定实用性. 各位任意可以拷贝此代码并传播,但请保留作者信息.*/
帮忙改下c语言课程设计 成绩记录簿
主要内容 开发一个小型的成绩记录簿系统,使之能提供以下功能:rn(1)完成学生成绩信息录入功能(用文件保存)?rn(2)学生信息、成绩信息的浏览功能--输出?rn(3)查询和排序功能:(至少一种查询方式)--算法?rn(4)各类信息的删除与修改rnrn下面是我下的 帮忙改下rnrnrn#include rn#include rnstruct student rn rn int num[10];//学号 rn char name[20]; rn float cgrade[4]; rn struct student *next; rn;rnstruct student stu[50];rnvoid menu() rn rn printf ("********************************************************************************"); rn printf("\t1输入学生资料\t\t\t\t\t2显示学生资料\n"); rn printf("\t3查询学生资料\t\t\t\t\t4成绩高低排序\n"); rn printf("\t5删除学生信息\t\t\t\t\t6修改学生资料\n"); rn printf("\t0退出系统\n") ;rn printf ("********************************************************************************\n"); rn rn//输入学生资料rnvoid luru(FILE *fp)rn int i=0;rn char choice='y';rndorn printf("学号");rn scanf("%d",&stu[i].num);rn printf("姓名");rn scanf("%s",stu[i].name);rn printf("C语言成绩");rn scanf("%f",&stu[i].cgread);rn if(fwrite(&stu[i],sizeof(struct student),1,fp)!=1)rn puts("data write error");rn i++;rn fflush(stdin);rn printf("continue(y/n)?");rn scanf("%c",&choice);rnrn while((choice=='y' || choice='Y'));rn fclose(fp);rnrn//显示学生资料rnvoid xianshi(FILE *fp)rn int i,m;rn for(i=0;feof(fp)==0;i++)rn if(fread(&stu[i],sizeof(struct student),1,fp)!=1rn &&feof(fp)==0)rn puts("error");rn rnm=i-1;rnprintf("there %d record\n",m);rnfor(i=0;i'6') rn puts("input error, try again."); rn while(menu_choice<'0' || menu_choice>'6'); rn return menu_choice; rn rnrnvoid menu_done() rn while(1) rn menu(); rn switch(get_menu_choice()) rn rn case'1': rn void suru(file_operate("a")); rn system("pause"); rn system("cls"); rn break; rn case'2': rn void xianshi(file_operate("rb")); rn system("pause"); rn system("cls"); rn break; rn case'3': rn void chaxun(file_operate("rb")); rn system("pause"); /*停顿*/ rn system("cls"); /*清屏*/ rn break; rn case'4': rn void paixu(file_operate("rb")); rn system("pause"); rn system("cls"); rn break; rn case'5': rn void shanchu(file_operate("r")); rn system("pause"); rn system("cls"); rn break; rn case'6': rn void xiugai(file_operate("rb")); rn system("pause"); rn system("cls"); rn break; rn case'0': rn printf("Thank you for use this program.\n"); rn system("pause"); rn system("cls"); rn exit(1); rn rn rn rnrn//成绩高低排序rnvoid paixu(FILE *fp)rn int i,j,k,m;rn struct student t;rn for(i=0;feof(fp)==0;i++)rn if(fread(&stu[i],sizeof(struct student),1,fp)!=1rn &&feof(fp)==0)rn puts("error");rn rnm=i-1;rnfor(i=0;i
课程设计急需
void display()rnrn string x1,x2,x3,x4,x5,x6,x7,x8;rn ifstream infile;rn infile.open("1.txt");rn while(getline(infile,x1))rn rn if(x1=="10")rn cout<
C语言 新手问题 求大神相助
#include rnrnint getValue (int a)rnrn int result=1;rn for(int i=1;i<=a;i++)rn result=result*i;rn return result;rnrnrnint main(void)rnrn int a; rn char c;rn// scanf("%d ",&a);rn// scanf("%c",&c);rn// printf("%d,%c",a,c);rn dorn rn printf("Please input the number of what you want : \n");rn scanf("%d",&a);rn printf("the result of %d ! is %d\n",a,getValue(a));rnrn printf("continue?:('y' or 'n')\n");rnrn// fflush(stdin);rnrn scanf("%c",&c);rn while(c!='n');rnrn return 0;rnrnrnrnrn不用fflush,不能实现我的目的。就是按y,就可以继续,结果不行,我不知道怎么回事。有个同学给我说缓冲区的问题,我不是很明白。
帮我改下这个C语言成绩记录簿,课程设计,今天就要教,急啊
是关于一个C语言成绩记录簿,每个学生信息应该包括:学号、姓名、C语言成绩。具体功能:rn(1)创建信息链表并以磁盘文件保存;rn(2)读取磁盘文件并显示输出所有学生的成绩;rn(3)按学号或姓名查询成绩;rn(4)添加成绩记录;rn(5)修改指定姓名或学号的学生的成绩并可存盘;rn(6)显示输出60分以下、60~79、80~89、90分以上各分数段的学生信息。rnrn把第五个统计学生的程序改为“显示输出60分以下、60~79、80~89、90分以上各分数段的学生信息”,谢谢啊!rn现在不是很长啊!就看下啊,你们肯定比我强啊!只要稍微改下就可以了啊!把里面加个功能“显示输出60分以下、60~79、80~89、90分以上各分数段的学生信息”就可以了啊,拜托啊!!1rnrnrn#include "stdio.h"rn#include "stdlib.h"rn#include "string.h"rnint shoudsave=0; //rnstruct studentrnrnchar num[10];//学号rnchar name[20];rnint cgrade;rnchar neartime[10];//最近更新时间rn;rntypedef struct nodernrnstruct student data;rnstruct node *next;rnNode,*Link;rnvoid menu()rnrnprintf("********************************************************************************");rnprintf("\t1输入学生资料\t\t\t\t\t2查询学生资料\n");rnprintf("\t3修改学生资料\t\t\t\t\t4显示学生资料\n");rnprintf("\t5统计学生成绩\t\t\t\t\t6保存学生资料\n");rnprintf("\t7获取帮助信息\t\t\t\t\t0退出系统\n");rnprintf("********************************************************************************\n");rnrnvoid printstart()rnrnprintf("-----------------------------------------------------------------------\n");rnrnvoid Wrong()rnrnprintf("\n=====>提示:输入错误!\n");rnrnvoid Nofind()rnrnprintf("\n=====>提示:没有找到该学生!\n");rnrnvoid printc() // 本函数用于输出中文rnrnprintf(" 学号\t 姓名 C语言成绩 \n");rnrnvoid printe(Node *p)//本函数用于输出英文rnrnprintf("%-12s%s\t%d\t \n",p->data.num,p->data.name,p->data.cgrade);rnrnNode* Locate(Link l,char findmess[],char nameornum[]) //该函数用于定位连表中符合要求的接点,并返回该指针rnrnNode *r;rnif(strcmp(nameornum,"num")==0) //按学号查询rnrnr=l->next;rnwhile(r!=NULL)rnrnif(strcmp(r->data.num,findmess)==0)rnreturn r;rnr=r->next;rnrnrnelse if(strcmp(nameornum,"name")==0) //按姓名查询rnrnr=l->next;rnwhile(r!=NULL)rnrnif(strcmp(r->data.name,findmess)==0)rnreturn r;rnr=r->next;rnrnrnreturn 0;rnrnvoid Add(Link l) //增加学生rnrnNode *p,*r,*s;rnchar num[10];rnr=l;rns=l->next;rnwhile(r->next!=NULL)rnr=r->next; //将指针置于最末尾rnwhile(1)rnrnprintf("请你输入学号(以'0'返回上一级菜单:)");rnscanf("%s",num);rnif(strcmp(num,"0")==0)rnbreak;rnwhile(s)rnrnif(strcmp(s->data.num,num)==0)rnrnprintf("=====>提示:学号为'%s'的学生已经存在,若要修改请你选择'4 修改'!\n",num);rnprintstart();rnprintc();rnprinte(s);rnprintstart();rnprintf("\n");rnreturn;rnrns=s->next;rnrnrnp=(Node *)malloc(sizeof(Node));rnrnstrcpy(p->data.num,num);rnprintf("请你输入姓名:");rnscanf("%s",p->data.name);rngetchar();rnprintf("请你输入c语言成绩:");rnscanf("%d",&p->data.cgrade);rn//信息输入已经完成rnp->next=NULL;rnr->next=p;rnr=p;rnshoudsave=1;rnrnrnrnvoid Qur(Link l) //查询学生rnrnint sel;rnchar findmess[20];rnNode *p;rnif(!l->next)rnrnprintf("\n=====>提示:没有资料可以查询!\n");rnreturn;rnrnprintf("\n=====>1按学号查找\n=====>2按姓名查找\n");rnscanf("%d",&sel);rnif(sel==1)//学号rnrnprintf("请你输入要查找的学号:");rnscanf("%s",findmess);rnp=Locate(l,findmess,"num");rnif(p)rnrnprintf("\t\t\t\t查找结果\n");rnprintstart();rnprintc();rnprinte(p);rnprintstart();rnrnelsernNofind();rnrnelse if(sel==2) //姓名rnrnprintf("请你输入要查找的姓名:");rnscanf("%s",findmess);rnp=Locate(l,findmess,"name");rnif(p)rnrnprintf("\t\t\t\t查找结果\n");rnprintstart();rnprintc();rnprinte(p);rnprintstart();rnrnelsernNofind();rnrnelsernWrong();rnrnrnvoid Modify(Link l)rnrnNode *p;rnchar findmess[20];rnif(!l->next)rnrnprintf("\n=====>提示:没有资料可以修改!\n");rnreturn;rnrnprintf("请你输入要修改的学生学号:");rnscanf("%s",findmess);rnp=Locate(l,findmess,"num");rnif(p)rnrnprintf("请你输入新学号(原来是%s):",p->data.num);rnscanf("%s",p->data.num);rnprintf("请你输入新姓名(原来是%s):",p->data.name);rnscanf("%s",p->data.name);rnprintf("请你输入新的c语言成绩(原来是%d分):",p->data.cgrade);rnscanf("%d",&p->data.cgrade);rnprintf("\n=====>提示:资料修改成功!\n");rnshoudsave=1;rnrnelsernNofind();rnrnvoid Disp(Link l)rnrnint count=0;rnNode *p;rnp=l->next;rnif(!p)rnrnprintf("\n=====>提示:没有资料可以显示!\n");rnreturn;rnrnprintf("\t\t\t\t显示结果\n");rnprintstart();rnprintc();rnprintf("\n");rnwhile(p)rnrnprinte(p);rnp=p->next;rnrnprintstart();rnprintf("\n");rnrnvoid Tongji(Link l)rnrnNode *pc = l; //用于指向分数最高的接点rnNode *r=l->next;rnif(!r)rnrnprintf("\n=====>提示:没有资料可以统计!\n");rnreturn ;rnrnrnwhile(r!=NULL)rnrnif(r->data.cgrade>=pc->data.cgrade)rnpc=r;rnr=r->next;rnrnprintf("------------------------------统计结果--------------------------------\n");rnprintf("c语言最高者:\t%s %d分\n",pc->data.name,pc->data.cgrade);rnprintstart();rnrnvoid Save(Link l)rnrnFILE* fp;rnNode *p;rnint flag=1,count=0;rnfp=fopen("c:\\student","wb");rnif(fp==NULL)rnrnprintf("\n=====>提示:重新打开文件时发生错误!\n");rnexit(1);rnrnp=l->next;rnwhile(p)rnrnif(fwrite(p,sizeof(Node),1,fp)==1)rnrnp=p->next;rncount++;rnrnelsernrnflag=0;rnbreak;rnrnrnif(flag)rnrnprintf("\n=====>提示:文件保存成功.(有%d条记录已经保存.)\n",count);rnshoudsave=0;rnrnfclose(fp);rnrnvoid main()rnrnLink l;//连表rnFILE *fp; //文件指针rnint sel;rnchar ch;rnchar jian;rnint count=0;rnNode *p,*r;rnprintf("\t\t\t\t学生成绩记录簿\n\t\t\t\t-------电子信息学院 李慧(200501135)\n");rnl=(Node*)malloc(sizeof(Node));rnl->next=NULL;rnr=l;rnfp=fopen("C:\\student","rb");rnif(fp==NULL)rnrnprintf("\n=====>提示:文件还不存在,是否创建?(y/n)\n");rnscanf("%c",&jian);rnif(jian=='y'||jian=='Y')rnfp=fopen("C:\\student","wb");rnelsernexit(0);rnrnprintf("\n=====>提示:文件已经打开,正在导入记录......\n");rnwhile(!feof(fp))rnrnp=(Node*)malloc(sizeof(Node));rnif(fread(p,sizeof(Node),1,fp)) //将文件的内容放入接点中rnrnp->next=NULL;rnr->next=p;rnr=p; //将该接点挂入连中rncount++;rnrnrnfclose(fp); //关闭文件rnprintf("\n=====>提示:记录导入完毕,共导入%d条记录.\n",count);rnwhile(1)rnrnmenu();rnprintf("请你选择操作:");rnscanf("%d",&sel);rnif(sel==0)rnrnif(shoudsave==1)rn getchar();rnprintf("\n=====>提示:资料已经改动,是否将改动保存到文件中(y/n)?\n");rnscanf("%c",&ch);rnif(ch=='y'||ch=='Y')rnSave(l);rnrnprintf("\n=====>提示:你已经退出系统,再见!\n");rnbreak;rnrnswitch(sel)rnrncase 1:Add(l);break; //增加学生rncase 2:Qur(l);break;//查询学生rncase 3:Modify(l);break;//修改学生rncase 4:Disp(l);break;//显示学生rncase 5:Tongji(l);break;//统计学生rncase 6:Save(l);break;//保存学生rncase 7:printf("\t\t\t==========帮助信息==========\n");break;rndefault: Wrong();getchar();break;rnrnrnrn
求解!跪求大神相助;
#include nint main()n  n    unionn     n        int i[2];n        int k;n        int c;n    t,*s = &t;n     n    s->i[0] = 10;n    s->i[1] = 20;n    s->k=30;n    printf("%d\n", s->k);    n    printf("%d\n", s->i[0]); n    printf("%d\n", s->c);   n    return 0;nn这个程序输出的值为什么都是三十?求大神指教。
谢谢各位大神相助
Linux上面防火墙开一个端口号的服务器怎么做。rn跪求各位大神相助
急需用过DLL的高手相助
在vb中建一个新工程,选Activex dll,在代码窗口写入:rnpublic sub showmessage()rnmsgbox("all right")rnend subrn然后保存工程为project1,类为class1,生成dll为show1.dllrn在ASP中调用:rnset mtstest=server.createobject("show1.class1")rnmtstest.showmessagernset mtstest=nothingrn但为什么创建对象失败呢?rn
求高手相助,急需帮忙
各位高手,小弟初学c++ builder,急需各位的帮忙,请各位帮个忙啊rnrn现在我碰到的问题是: 要读入一句话,然后从里面搜索,如果里面有数据与 a.dbf的某字段(字符型)的其中一个值匹配,则把其提取出来,并放到一个字符变量aa中; 然后在搜索,若再能找到匹配的值,则再提取出来,放到另一个字符变量bb中;rnrn如果不是两个都找到(找到一个或两个都找不到),则提示重新输入,再重复上述操作rnrn接着,要比较这两个数据在话出现的先后顺序,最后写成如from aa to bbrnrn最后,要在b.dbf中,如果有aa 和 bb 同时与其两个字段的值相等,则把所有符合的记录显示出来rnrn麻烦把匹配和查询分两个页面写好吗rnrn各位真的要帮忙啊,不胜感激,小弟里面的许多功能都不会用
求大神相助,谢谢!!
[code=php]rnrnrn[/code]rnrn报错 :rnNotice: Undefined variablernrnWarning: mysql_query() expects parameter 2 to be resource, null given in
望vba大神相助
如图两张word表格,因为内容中有书签引用,引用内容过多会超出word表格1。求大神指教如何将表一超出的内容显示到表格2[img=https://img-bbs.csdn.net/upload/201905/26/1558852474_678102.png][/img][img=https://img-bbs.csdn.net/upload/201905/26/1558852476_12294.png][/img]
求大神相助
大家,一般情况下,在网络上发送一条消息的时间大概是多少,就比如qq发送一条消息,到对方接受到消息的这个时间rnudp丢包得可能性在局域网内有多大,在外网的丢包率有多大,udp包得丢失率与网速,发送消息的频繁度等有关系吗?rn我的消息传送做法:当一个消息发送过去,对方系统自动发送一条标志消息,代表已接收到发送的消息,如果没油受到标志消息,代表udp包丢失,我是再次重传一次原消息,如再次没收到标志消息,则认为对方不在线,rn大神们回答下上面的问题,顺便分析一下我的思路吧[img=https://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/003/monkey/2.gif][/img]
相关热词 c# 标准差 计算 c#siki第五季 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池