求一个超简单的C语言编译的学生成绩管理程序
我以前写了个,你拿去参考下吧:
#include
#include
#include
#include
#include
#define MAX 80
void input();
void sort();
void display();
void insert();
void del();
void average();
void find();
void save();
void read();
void del_file();
void average();
void modify();
int now_no=0;
struct student
{
int no;
char name[20];
char sex[4];
float score1;
float score2;
float score3;
float sort;
float ave;
float sum;
};
struct student stu[MAX],*p;
main()/*主函数*/
{
int as;
start: printf("
欢迎使用学生成绩管理系统
");
/*一下为功能选择模块*/
do
{
printf("
1.录入学员信息
2.显示学员信息
3.成绩排序信息
4.添加学员信息
5.删除学员信息
6.修改学员信息
7.查询学员信息
8.从文件读入学员信息
9.删除文件中学员信息
10.保存学员信息
11.退出
");
printf("选择功能选项:");
fflush(stdin);
scanf("%d",&as);
switch(as)
{
case 1:system("cls");input();break;
case 2:system("cls");display();break;
case 3:system("cls");sort();break;
case 4:system("cls");insert();break;
case 5:system("cls");del();break;
case 6:system("cls");modify();break;
case 7:system("cls");find();break;
case 8:system("cls");read();break;
case 9:system("cls");del_file();break;
case 10:system("cls");save();break;
case 11:system("exit");exit(0);
default:system("cls");goto start;
}
}while(1);
/*至此功能选择结束*/
}
void input()/*原始数据录入模块*/
{
int i=0;
char ch;
do
{
printf("1.录入学员信息
输入第%d个学员的信息
",i+1);
printf("
输入学生编号:");
scanf("%d",&stu[i].no);
fflush(stdin);
printf("
输入学员姓名:");
fflush(stdin);
gets(stu[i].name);
printf("
输入学员性别:");
fflush(stdin);
gets(stu[i].sex);
printf("
输入学员成绩1:");
fflush(stdin);
scanf("%f",&stu[i].score1);
printf("
输入学员成绩2:");
fflush(stdin);
scanf("%f",&stu[i].score2);
printf("
输入学员成绩3:");
fflush(stdin);
scanf("%f",&stu[i].score3);
printf("
");
i++;
now_no=i;
printf("是否继续输入?(Y/N)");
fflush(stdin);
ch=getch();
system("cls");
}
while(ch!='n'&&ch!='N');
system("cls");
}
void sort()/*排序数据函数*/
{
struct student temp;
int i,j;
average();
for(i=1;i<now_no;i++)
{
for(j=1;j<=now_no-i;j++)
{
if(stu[j-1].ave<stu[j].ave)
{
temp=stu[j];
stu[j]=stu[j-1];
stu[j-1]=temp;
}
}
}
}
void display()/*显示数据函数*/
{
int i;
char as;
average();
do
{
printf("班级学员信息列表
");
printf("编号姓名性别成绩1成绩2成绩3平均值
");
for(i=0;i<now_no&&stu[i].name[0];i++)printf("%d%s%s%.2f%.2f%.2f%.2f
",stu[i].no,stu[i].name,stu[i].sex,stu[i].score1,stu[i].score2,stu[i].score3,stu[i].ave);
printf("按任意键返回主菜单.");
fflush(stdin);
as=getch();
}
while(!as);
system("cls");
}
void insert()/*插入数据函数*/
{
char ch;
do
{
printf("
输入新插入学员队信息
");
printf("
输入学生编号:");
scanf("%d",&stu[now_no].no);
fflush(stdin);
printf("
输入学员姓名:");
fflush(stdin);
gets(stu[now_no].name);
printf("
输入学员性别:");
fflush(stdin);
gets(stu[now_no].sex);
printf("
输入学员成绩1:");
fflush(stdin);
scanf("%f",&stu[now_no].score1);
printf("
输入学员成绩2:");
fflush(stdin);
scanf("%f",&stu[now_no].score2);
printf("
输入学员成绩3:");
fflush(stdin);
scanf("%f",&stu[now_no].score3);
printf("
");
now_no=now_no+1;
sort();
printf("是否继续输入?(Y/N)");
fflush(stdin);
ch=getch();
system("cls");
}
while(ch!='n'&&ch!='N');
}
void del()/*删除数据函数*/
{
int inum,i,j;
printf("输入要删除学员的编号:");
fflush(stdin);
scanf("%d",&inum);
for(i=0;i<now_no;i++)
{
if(stu[i].no==inum)
{
if(i==now_no)now_no-=1;
else
{
stu[i]=stu[now_no-1];
now_no-=1;
}
sort();
break;
}
}
system("cls");
}
void save()/*保存数据函数*/
{
FILE *fp;
int i;
char filepath[20];
printf("输入要保存的文件路径:");
fflush(stdin);
gets(filepath);
if((fp=fopen(filepath,"w"))==NULL)
{
printf("
保存失败!");
exit(0);
}
for(i=0;i<now_no;i++)
{
stu[i].sum=stu[i].score1+stu[i].score2+stu[i].score3;
stu[i].ave=stu[i].sum/3;
fprintf(fp,"%d%s%s%.2f%.2f%.2f%.2f
",stu[i].no,stu[i].name,stu[i].sex,stu[i].score1,stu[i].score2,stu[i].score3,stu[i].ave);
}
fclose(fp);
printf("学生信息已保存在%s中!
",filepath);
system("pause");
system("cls");
}
void find()/*查询函数*/
{
int i;
char str[20],as;
do
{
printf("输入要查询的学生姓名:");
fflush(stdin);
gets(str);
for(i=0;i<now_no;i++)
if(!strcmp(stu[i].name,str))
{
printf("编号姓名性别成绩1成绩2成绩3平均值
");
printf("%d%s%s%.2f%.2f%.2f%.2f
",stu[i].no,stu[i].name,stu[i].sex,stu[i].score1,stu[i].score2,stu[i].score3,stu[i].ave);
}
printf("按任意键返回主菜单.");
fflush(stdin);
as=getch();
}
while(!as);
system("cls");
}
void average()/*求平均数*/
{
int i;
for(i=0;i<now_no;i++)
{
stu[i].sum=stu[i].score1+stu[i].score2+stu[i].score3;
stu[i].ave=stu[i].sum/3;
}
}
void modify()/*修改数据函数*/
{
int i;
char str[20],as;
printf("输入要修改的学生姓名:");
fflush(stdin);
gets(str);
for(i=0;i<now_no;i++)
if(!strcmp(stu[i].name,str))
{
system("cls");
printf("
输入新插入学员队信息
");
printf("
输入学生编号:");
fflush(stdin);
scanf("%d",&stu[i].no);
printf("
输入学员性别:");
fflush(stdin);
gets(stu[i].sex);
printf("
输入学员成绩1:");
fflush(stdin);
scanf("%f",&stu[i].score1);
printf("
输入学员成绩2:");
fflush(stdin);
scanf("%f",&stu[i].score2);
printf("
输入学员成绩3:");
fflush(stdin);
scanf("%f",&stu[i].score3);
printf("
");
sort();
break;
}
system("cls");
}
void read()
{
FILE *fp;
int i;
char filepath[20];
printf("输入要读入的文件路径:");
fflush(stdin);
gets(filepath);
if((fp=fopen(filepath,"r"))==NULL)
{
printf("找不到%s文件!
",filepath);
system("pause");
exit(0);
}
now_no=0;
for(i=0;i<MAX&&!feof(fp);i++)
{
fscanf(fp,"%d%s%s%f%f%f%f
",&stu[i].no,stu[i].name,stu[i].sex,&stu[i].score1,&stu[i].score2,&stu[i].score3,&stu[i].ave);
now_no++;
}
fclose(fp);
printf("保存的在文件%s中的所有信息已经读入!
",filepath);
system("pause");
system("cls");
}
void del_file()
{
FILE *fp;
char filepath[20];
printf("输入要删除的文件路径:");
fflush(stdin);
gets(filepath);
fp=fopen(filepath,"w");
fclose(fp);
printf("保存的在文件%s中的所有信息已经删除!
",filepath);
system("pause");
system("cls");
}
C++版的,自己改一下,以前帮同学写的,忙着考试,没时间整了,抱歉,呵呵,希望对你有用!
#include
#include
#include //控制字符串的头文件
using namespace std;
class student//建立同学录的一个类
{
//头接点
public:
char name[20];
int num;
int age;
char sex;
double en;
double ma;
double com;
double ave;
student *next;
student *stu;
student(); //构造函数
void display()
{
cout<<"名字: "<<name<<" "<<"学号: "<<num<<" "<<"性别: "<<sex<<"年龄: "<<age<<"英语: "<<en<<" "<<"数学: "<<ma<<" "<<"计算机: "<<com<<endl;
}
student (char n[20],int nu, int ag, char se,double e,double m,double c,double av);
~ student ();
void Set();//添加
void Delete();//删除
void Alter();//修改
void List();//显示
void aver();
void ssearch();//查询
// void RearchN();
// void RearchNU();
void staxis(); //排序
void ssave(); //保存
void sload(); //读取
//排序函数
void pnumb();
void peng();
void pmat();
void pcomp();
friend void caozuo(int);
};
void student::aver()
{
double z;
z=en+ma+com;
ave=z/3;
}
student::student()//构造函数
{
strcpy(name, "nomame");
num=0;
sex='M';
age=0;
double en=0;
double ma=0;
double com=0;
double ave=0;
}
student::student (char n[20],int nu, int ag, char se,double e,double m,double c,double av)
{
strcpy(name, n);
num=nu;
sex=se;
age=ag;
en=e;
ma=m;
com=c;
ave=av;
}
student::~student(){};
student *s[50];
int i=0;
int j=0;
void student::Set()
{
cout<<"请输入姓名:"<<endl;
cin>>name;
cout<<"请输入学号:"<<endl;
cin>>num;
cout<<"请输入年龄:"<<endl;
cin>>age;
cout<<"请输入性别:"<<endl;
cin>>sex;
cout<<"请输入英语成绩:"<<endl;
cin>>en;
cout<<"请输入数学成绩:"<<endl;
cin>>ma;
cout<<"请输入计算机成绩:"<<endl;
cin>>com;
j++;
s[i]=new student(name,num, age, sex,en,ma,com,ave);
i++;
}
void student:: Delete() //(2)删除人员(Delete)
{
cout<<"请输入您要删除的学生姓名:"<<endl;
cin>>name;
for(int h=0;h<i;h++)
{
if(strcmp(name,s[h]->name)==0)
{
i--;
s[h]=s[h+1];
h++;
}
else cout<<"您要求删除的对象本来就不存在!请检查输入的正确性!";
}
}
void student::Alter() //(3)修改数据(Alter)
{
cout<<"请输入您要修改的学生的姓名:"<<endl;
cin>>name;
for(int h=0;h<i;h++)
{
if(strcmp(name,s[h]->name)==0)
{
int nu;
int ag;
char se;
double e;
double m;
double c;
cout<<"请输入学号: "<<endl;
cin>>nu;
cout<<"请输入年龄:"<<endl;
cin>>ag;
cout<<"请输入性别:"<<endl;
cin>>se;
cout<<"请输入英语成绩:"<<endl;
cin>>e;
cout<<"请输入数学成绩:"<<endl;
cin>> m;
cout<<"请输入计算机成绩:"<<endl;
cin>>c;
s[h]->num=nu;
s[h]->age=ag;
s[h]->sex=se;
s[h]->en=e;
s[h]->ma=m;
s[h]->com=c;
cout<<"数据修改成功!";
break;
}
if (i == j)
{
cout<<"对不起!您要查询的学生不存在!"<<endl;
break;
}
}
}
void student::List() //(4)显示记录(List)
{
cout<<"本系统所有通讯录的数据如下:"<<endl;
if(i==0)
cout<<"管理系统中没有录入数据或者数据已经被删除!"<<endl;
for(int k=0;k<i;k++)
{
s[k]->display();
}
}
void student::ssearch()//查询
{
//system("cls");
cout<<"
** 查询学生信息 **
"<<endl;
cout<<"请输入查询方式:"<<endl;
cout<<"1.按学号查询"<<endl;
cout<<"2.按姓名查询"<<endl;
cout<<"3.返回"<<endl;
char c;
cin>>c;
switch (c)
{
case '1':
{ int n;
if(i==0)
{
cout<<"管理系统中没有输入数据!"<<endl; exit(0);
}
cout<<"请输入你要查询的学生的学号"<<endl;
cin>>n;
for(int j=0;j<i;j++)
{
if(s[j]->num==n)
{
coutname<<endl;
coutagesexenmacom<<"平均分:"<<endl;
break;
}
}
if (i == j)
{
cout<<"对不起!您要查询的学生不存在!"<<endl;
}
break;
}
case '2':
{ if(i==0)
{ cout<<"管理系统中没有录入数据或者数据已经被删除!"<<endl; exit(0); }
cout<<"请输入你要查询的学生姓名"<<endl;
cin>>name;
for(int j=0;j<i;j++)
{
if(strcmp(name,s[j]->name)==0)
{
cout<<"您要查询的学生是:"<<stu[j].name<<endl;
//cout<<"学号:"<<stu[j].num
cout<<"学号:"<<stu[j].num<<" "<<"年龄: "<<stu[j].age<<" "<<"性别: "<<stu[j].sex<<" "<<"英语:"<<stu[j].en<<" "<<"数学:"<<stu[j].ma<<" "<<"计算机:"<<stu[j].com<<"平均分:"<<endl;
break;
};
if (i == j)
{
cout<<"对不起!您要查询的学生不存在!"<<endl;
}
}
break;}
case '3':
return ;
}
}
void student::pnumb()//按学号排序
{
student *p1,*p2;
int n;
p1=stu;
n=1;
while(p1->next)
{ n++; p1=p1->next; }
cout<<"共有"<<n<<"条信息..."<<endl;
int i;
p1=stu;
for(i=1;i<n;i++)
{
p1=stu;
if (p1->num>p1->next->num) // 如果头结点大于第二个的
{
p2=p1->next;
p1->next=p1->next->next;
p2->next=p1; //头结点交换
stu=p2;
}
p1=stu;
while(p1->next->num) //中间的交换
{
p2=p1;
p1=p1->next;
if(p1->num>p1->next->num)
{
p2->next=p1->next;
p1->next=p1->next->next;
p2->next->next=p1;
p1=p2->next; //交换
}
}
}
p1=stu;
do
{
p1->display();
p1=p1->next;
}while(p1);
}
void student::pmat() //按数学成绩排序
{
student *p1,*p2;
int n;
p1=stu;
n=1;
while(p1->next)
{ n++; p1=p1->next; }
cout<<"共有"<<n<<"条信息..."<<endl;
int i;
p1=stu;
for(i=1;i<n;i++)
{
p1=stu;
if (p1->ma>p1->next->ma) // 如果头结点大于第二个的
{ p2=p1->next;
p1->next=p1->next->next;
p2->next=p1; //头结点交换
stu=p2;
}
p1=stu;
while(p1->next->next) //中间的交换
{ p2=p1;
p1=p1->next;
if(p1->ma>p1->next->ma)
{
p2->next=p1->next;
p1->next=p1->next->next;
p2->next->next=p1;
p1=p2->next; //交换
}
}
}
p1=stu;
do
{ p1->display();
p1=p1->next;
}while(p1);
}
void student::pcomp()//按语文成绩排序
{
student *p1,*p2;
int n;
p1=stu;
n=1;
while(p1->next)
{n++; p1=p1->next;}
cout<<"共有"<<n<<"条信息..."<<endl;
int i;
p1=stu;
for(i=1;i<n;i++)
{
p1=stu;
if (p1->com>p1->next->com) // 如果头结点大于第二个的
{
p2=p1->next;
p1->next=p1->next->next;
p2->next=p1; //头结点交换
stu=p2;
}
p1=stu;
while(p1->next->next) //中间的交换
{
p2=p1;
p1=p1->next;
if(p1->com>p1->next->com)
{
p2->next=p1->next;
p1->next=p1->next->next;
p2->next->next=p1;
p1=p2->next; //交换
}
}
}
p1=stu;
do
{
p1->display();
p1=p1->next;
}while(p1);
}
void student::peng()//按英语成绩排序
{
student *p1,*p2;
int n;
p1=stu;
n=1;
while(p1->next)
{ n++; p1=p1->next; }
cout<<"共有"<<n<<"条信息..."<<endl;
int i;
p1=stu;
for(i=1;i<n;i++)
{ p1=stu;
if (p1->en>p1->next->en) // 如果头结点大于第二个的
{ p2=p1->next;
p1->next=p1->next->next;
p2->next=p1; //头结点交换
stu=p2;
}
p1=stu;
while(p1->next->next) //中间的交换
{ p2=p1;
p1=p1->next;
if(p1->en>p1->next->en)
{
p2->next=p1->next;
p1->next=p1->next->next;
p2->next->next=p1;
p1=p2->next; //交换
}
}
}
p1=stu;
do
{ p1->display();
p1=p1->next;
}while(p1);
}
void student::staxis()//排序
{
char c;
cout<<"请选择以何种方式排序:"<<endl;
cout<<"1……以学号排序"<<endl;
cout<<"2……以英语成绩排序"<<endl;
cout<<"3……以数学成绩排序"<<endl;
cout<<"4……以计算机成绩排序"<<endl;
cout<<"5……返回"<<endl;
cout<<"请选择(1-5)"<<endl;
cin>>c;
switch (c)
{
case '1':pnumb(); break;
case '2':peng(); break;
case '3':pmat(); break;
case '4':pcomp(); break;
case '5':return;
}
}
void student::ssave() //保存到文件
{
char c;
cout>c;
if(toupper(c)!='Y') return;
ofstream tfile("date.txt",ios::binary);
student *p=stu;
while(p)// 写入文件
{
tfilenamenumenmacomave;
tfile<<endl;
p=p->next;
}
tfile.close();
cout<<"保存完毕..."<<endl;
}
void student::sload() //读取
{
student *p;
p=stu;
while(p)
{
stu=p->next;
delete p;
p=stu;
}
ifstream tfile("date.txt",ios::binary);
char name1[20];
int num1;
char sex;
double en1,ma1,com1,ave1,age1;
tfile>>name1>>num1>>en1>>ma1>>com1>>ave1>>sex>>age1;
while(tfile.good())
{
//创建学生接点
student *s;
s=stu;
s=new student(name1,num1,age1,sex,en1,ma1,com1,ave1);
s->next=0;
s->ave=stu->ave;
if(stu) //若已经存在结点
{
student *p2;
p2=stu;
while(p2->next) //查找尾结点
{
p2=p2->next;
}
p2->next=s; //连接
}
else //若不存在结点(表空)
{
stu=s; //连接
}
tfile>>name1>>num1>>en1>>ma1>>com1>>ave1;
}
tfile.close();
cout<<"
学生信息已经装入...
";
}
void caozuo(int p)
{
student t;
switch(p)
{
case 0:t.Set();break;
case 1:t.Set();break;
case 2:t.Delete();break;
case 3:t.Alter();break;
case 4:t.List();break;
case 5:t.ssearch();//查询
case 6:t.staxis(); //排序
case 7:exit(0);break;
}
}
void main()
{
char w;
do
{
cout<<"请输入操作代码( 成绩录入/0 增加人员/1 删除人员/2 修改数据/3 显示记录/4 查询/5 排序/6 退出/7)"<<endl;
int a;
cin>>a;
caozuo(a);
cout<<"您想继续进行其他操作吗?(y/n)"<<endl;
cin>>w;
}while(w=='y');
} //利用while语句又回到了前面的循环
#include "stdlib.h"
#include "string.h"
typedef struct
{
char num[15];
char name[8];
int score[4]; //数组成员0、1、2为三门成绩,3为平均成绩
}messege;
typedef struct
{
messege student[100];
int len;
}lis;
lis list;
void menu();
void input_mune(char num);
void input();
void sort_menu();
void sort(char order);
void browse();
void exchange(); //结构体message成员变量互换函数
void del_menu();
void del();
main()
{
list.len=0;
menu();
}
void menu()
{
char num='6';
while (num!='0')
{
system("cls"); //清屏
printf("\n\n");
printf(" 学生成绩管理 \n");
printf("\n\n");
printf(" **************************************************** \n");
printf("\n");
printf(" 1.添加记录 \n"); //添加记录不排序
printf("\n");
printf(" 2.排序记录 \n");
printf("\n");
printf(" 3.浏览记录 \n");
printf("\n");
printf(" 4.插入记录 \n");
printf("\n");
printf(" 5.删除指定记录 \n");
printf("\n");
printf(" 0.退出 \n");
printf("\n");
printf(" **************************************************** \n");
printf("\n\n");
printf(" 请输入操作序号: ");
scanf("%s",&num);
if((num=='1')||(num=='4'))
input_mune(num);
else
if(num=='2')
sort_menu();
else
if(num=='3')
browse();
else
if(num=='5')
del_menu();
}
}
void input_mune(char num)
{
char n='2';
while (n!='0')
{
system("cls");
printf("\n\n");
printf(" 添加记录 \n");
printf("\n\n");
printf(" **************************************************** \n");
printf("\n");
printf(" 1.添加记录 \n");
printf("\n");
printf(" 0.返回主界面 \n");
printf("\n");
printf(" **************************************************** \n");
printf("\n\n");
printf(" 请输入操作序号: ");
scanf("%s",&n);
if(n=='1')
{
if(list.len>=100)
printf(" 学生信息表已满,无法添加\n");
else
{
input();
if(num=='4')
sort('1');
}
printf(" 输入任意键回车添加信息,返回主界面请输入0: ");
scanf("%s",&n);
}
}
}
void input()
{
int i;
printf(" 输入学生学号: ");
scanf("%s",&list.student[list.len].num);
printf("\n");
printf(" 输入学生姓名: ");
scanf("%s",&list.student[list.len].name);
printf("\n");
for(i=0;i<3;i++)
{
printf(" 输入成绩%d: ",i+1);
scanf("%d",&list.student[list.len].score[i]);
}
list.student[list.len].score[3]=(list.student[list.len].score[0]+list.student[list.len].score[1]+list.student[list.len].score[2])/3;
printf(" 你输入的信息为:\n");
printf(" 学号:%s",list.student[list.len].num);
printf(" 姓名:%s",list.student[list.len].name);
printf(" 成绩:%d %d %d",list.student[list.len].score[0],list.student[list.len].score[1],list.student[list.len].score[2]);
printf(" 平均成绩:%d\n",list.student[list.len].score[3]);
list.len=list.len+1;
}
void sort_menu()
{
char n='3';
while(n!='0')
{
system("cls");
printf("\n\n");
printf(" 排序 \n");
printf("\n\n");
printf(" **************************************************** \n");
printf("\n");
if(list.len==0)
{
printf(" 0.返回主界面 \n");
printf("\n");
printf(" **************************************************** \n");
printf("\n\n");
printf(" 记录为空,无法排序");
printf("\n\n");
printf(" 请输入操作序号: ");
scanf("%s",&n);
}
else
if(list.len==1)
{
printf(" 0.退出 \n");
printf("\n");
printf(" **************************************************** \n");
printf("\n\n");
printf(" 只有一条记录,无需排序");
printf("\n\n");
printf(" 请输入操作序号: ");
scanf("%s",&n);
}
else
{
printf(" 1.升序 \n");
printf("\n");
printf(" 2.降序 \n");
printf("\n");
printf(" 0.退出 \n");
printf("\n");
printf(" **************************************************** \n");
printf("\n\n");
printf(" 请输入操作序号: ");
scanf("%s",&n);
if((n=='1')||(n=='2'))
{
sort(n);
printf(" 排序完成,输入任意键回车添加信息,返回主界面请输入0: ");
scanf("%s",&n);
}
}
}
}
void sort(char order)
{
int i,j;
if(order=='1')
for(i=0;i<list.len-1;i++)
{
for(j=i+1;j<list.len;j++)
{
if(list.student[i].score[3]>list.student[j].score[3])
{
exchange(i,j);
}
}
}
else
{
if(order=='2')
for(i=0;i<list.len-1;i++)
{
for(j=i+1;j<list.len;j++)
{
if(list.student[i].score[3]<list.student[j].score[3])
{
exchange(i,j);
}
}
}
}
}
void exchange(int i,int j)
{
messege temp;
temp.score[0]=list.student[i].score[0];
temp.score[1]=list.student[i].score[1];
temp.score[2]=list.student[i].score[2];
temp.score[3]=list.student[i].score[3];
strcpy(temp.num,list.student[i].num);
strcpy(temp.name,list.student[i].name);
list.student[i].score[0]=list.student[j].score[0];
list.student[i].score[1]=list.student[j].score[1];
list.student[i].score[2]=list.student[j].score[2];
list.student[i].score[3]=list.student[j].score[3];
strcpy(list.student[i].num,list.student[j].num);
strcpy(list.student[i].name,list.student[j].name);
list.student[j].score[0]=temp.score[0];
list.student[j].score[1]=temp.score[1];
list.student[j].score[2]=temp.score[2];
list.student[j].score[3]=temp.score[3];
strcpy(list.student[j].num,temp.num);
strcpy(list.student[j].name,temp.name);
}
void browse()
{
int i;
char n='1';
while(n!='0')
{
system("cls");
printf("\n\n");
printf(" 浏览记录 \n");
printf("\n\n");
printf(" **************************************************** \n");
printf("\n");
printf(" 学号 姓名 成绩1 成绩2 成绩3 平均成绩 \n");
for(i=0;i<list.len;i++)
{
printf(" %-15s",list.student[i].num);
printf("%-8s",list.student[i].name);
printf("%5d",list.student[i].score[0]);
printf(" %5d",list.student[i].score[1]);
printf(" %5d",list.student[i].score[2]);
printf(" %8d\n",list.student[i].score[3]);
}
printf("\n");
printf(" **************************************************** \n");
printf("\n\n");
printf(" 输入任意键回车刷新,返回主界面请输入0: ");
scanf("%s",&n);
}
}
void del_menu()
{
char n='2';
while (n!='0')
{
system("cls");
printf("\n\n");
printf(" 删除记录 \n");
printf("\n\n");
printf(" **************************************************** \n");
printf("\n");
printf(" 1.删除记录 \n");
printf("\n");
printf(" 0.返回主界面 \n");
printf("\n");
printf(" **************************************************** \n");
printf("\n\n");
printf(" 请输入操作序号: ");
scanf("%s",&n);
if(n=='1')
{
del();
printf(" 输入任意键回车删除记录,返回主界面请输入0: ");
scanf("%s",&n);
}
}
}
void del()
{
int i,j;
char name[8];
printf(" 请输入学生姓名: ");
scanf("%s",name);
for(i=0;i<list.len;i++)
{
if(strcmp(name,list.student[i].name)==0)
{
for(j=i;j<list.len-1;j++)
{
list.student[j].score[0]=list.student[j+1].score[0];
list.student[j].score[1]=list.student[j+1].score[1];
list.student[j].score[2]=list.student[j+1].score[2];
list.student[j].score[3]=list.student[j+1].score[3];
strcpy(list.student[j].num,list.student[j+1].num);
strcpy(list.student[j].name,list.student[j+1].name);
}
list.len=list.len-1;
}
}
}
顺便问下2013好不好用?我用的是2012的
如何用C语言编写一个简单的程序!
1、鼠标左键双击c语言软件,打开,打开后界面如图,点击关闭即可 2、点击上方程序窗口左上角的文件,选择新建 3、在打开的窗口中选择文件,下边一般是第四个 c++Source file,输入文件名(hellw.c),一定要以“.c”为后缀结尾 4、进入编辑页面在,页面编辑源代码就可以 includestdio.h void main()...
最简单的c语言代码是什么?
最简单的C语言代就是输出“helloWord”,通常是作为初学编程语言时的第一个程序代码。具体代码如下:include <stdio.h> int main(){ printf("Hello, World! \\n");return 0;}
写一个简短的C语言代码
最简单的C语言代就是输出“helloWord”,通常是作为初学编程语言时的第一个程序代码。具体代码如下:include <stdio.h> int main(){ printf("Hello, World! \\n");return 0;}
怎样用C语言编写一个简单的程序?
int main(){ int a[7]; \/\/ 建立一个 7 元素的数组 int i;int sum = 0;int max = a[0];int min = a[0];\/\/ 手动输入 7 个元素 for (i = 0; i < 7; i++){ printf("请输入第 %d 个元素的值: ", i+1);scanf("%d", &a[i]);} \/\/ 求这 7 个元素的和 for (i...
帮忙写一段简单的c语言代码
int a[3][9],i,j;if((fp=fopen("C:\\\\cDemo\\\\data.txt","r"))!=NULL){ for(i=0;i<3;++i){ for(j=0;j<9;++j){ fscanf(fp,"%d",&a[i][j]);} } for(i=0;i<3;++i){ for(j=0;j<9;++j){ printf("%d ",a[i][j]);} printf("\\n");} } else { puts...
用C语言编写一个简单程序,有哪些步骤,可以举一个例子详细讲解下吗?_百 ...
\/\/这样就结束了。一个简单的但又完整的C程序就有了,\/\/下一步就是使用编译器编译成目标的可执行文件:\/\/如果是windows下的vc++,那么需要分别点击编译,链接两个按钮生成hello.exe可执行文件 \/\/如果是linux下直接在shell中使用gcc hello.c就可以编译成可执行文件a.out \/\/最后就是运行了,windows下...
求编写一下三个简单的C语言程序 ,新手求解
第一个:include <stdio.h>int main(int argc, char *argv[]){ char a; scanf("%c", &a); printf("大写字母为%c\\n", a-32); return 0;}第二个:include <stdio.h>int main(int argc, char *argv[]){ char A; scanf("%c", &A); printf("八进制:%o...
求编一简单的C语言程序
void main(){ float J;float a;float b;float c;float d;printf("输入商品价格");scanf("%f",&J);a=1000*J;b=2500*J;c=3000*J;d=4500*J;printf("输出依次为1000件2500件3000件与4500件价格");printf("a=%f\\n",a);printf("b=%f\\n",b);printf("c=%f\\n",c);printf("d=%f...
c语言编写一个程序分几步?
编译程序:使用C语言编译器将源代码编译成可执行文件。运行程序:运行编译后的可执行文件,观察程序的输出结果。以下是一个简单的C语言程序示例,该程序可以计算两个整数的和:在这个程序中,我们首先定义了三个整型变量num1、num2和sum,用于存储用户输入的两个整数和它们的和。然后,我们使用printf函数...
C语言编写一个程序,求x> y的运行结果
以下是一个简单的C语言程序,可以比较两个整数x和y,并打印出相应的结果:在这个程序中,我们首先声明了两个整数变量x和y,然后使用printf函数提示用户输入两个整数。接下来,我们使用scanf函数读取用户输入的整数,并将它们存储在变量x和y中。然后,我们使用一个if-else语句来比较x和y的值。如果x大于y...
村华舒肝: //姓名,学号,英语,语文,数学三种成绩 #include #include #define maxnumber 30 int student_number; int count1=0,count2=0,Operate1=3; FILE *stream; typedef struct stu{ int idnumber; char name[20]; double English_score; double chinese_...
贵州省19540279034: 用c语言,求学生成绩 - ?
村华舒肝: #include<stdio.h>#include<stdlib.h>/*定义全局变量*/ int num; struct student { l name[20]; charong id; char sex[10]; int math; int english; int c_program; int total; }stu[41];/*主菜单*/ void page_title() {printf("※※※※※※※※计算机系学生成绩管理...
贵州省19540279034: 学生成绩统计的编程题目C语言求帮忙~~谢啦从键盘输入一个班(全班 ?
村华舒肝: 给你提供一个思路: 1,建立一个含有30个节点的双向链表. 2,从键盘每输入一个学生的成绩,就把成绩存入链表里. 3,链表节点有成绩,上指针,下指针,学生姓名字符串数组. 4,当输入负值后,扫描链表,进行对成绩的各项操作即可.
贵州省19540279034: 用C语言做一个学生成绩统计系统,求帮忙(源代码..) - ?
村华舒肝: 可以给你.需要点时间.现在在上课.#include <stdio.h> void main() { int Password =0,i=0,sum=0; clrscr(); printf("\n===请输入密码!====\n"); while(Password != 1234) { if(i>3) { printf(" 密码错误!\n "); return; } i++; printf(" 请输入密码!...
贵州省19540279034: 求一个学生成绩管理系统的C语言代码!!急!! - ?
村华舒肝: #includestruct student { char num[10];char name[20];char sex[5];float grade[7];float v;float sum;}stu[50]; int k=0;void input(); void output(); void search(); void average(); void sort(); void save(); void main() { int a;do{printf("\n\n **************...
贵州省19540279034: 用c语言设计一个程序统计一个班的学生成绩 - ?
村华舒肝: 改好了,问题不大,我都写在注释里了:#include<stdio.h> #include<math.h> #define N 35 #define COURSE 4struct student {char num[10];/*如果把num当作字符串的话,不能用int,而是char数组.不然就用int num;*/float score[4];float sum...
贵州省19540279034: 求用C语言中switch语句编写学生成绩问题 - ?
村华舒肝: #includevoid main() { double score; printf("请输入分数:\n"); scanf("%lf",&score); switch((int)(score/10))//switch((int)score/10)出现严重错误,switch(((int)score)/10)出现严重错误, { case 10: case 9:printf("A(最好)\n");break; case 8:printf...
贵州省19540279034: 求C语言写的学生成绩管理系统,要求输入各个学生各科成绩及学号,能求总分,平均分,能对总分,学号排序 - ?
村华舒肝: 程序如下: #include<stdio.h> void main() { float student[100][7];//student[][0]存放学号,student[][1]到student[][4]存放四门成绩,//student[][5]存放总分,student[][6]存放平均分,student[][7]存放排名 int n,i,j,k,p,t,count,flag; int a[100],b[100],c[100];//a[]...
贵州省19540279034: 用c语言编写 简单学生成绩统计软件 - ?
村华舒肝: #include<stdio.h> int main() { float mark1,mark2,c; int you=0; for(;;) { printf("请输入两门课程的成绩_____\b\b\b\b\b"); scanf("%f,%f",&mark1,&mark2); c=(mark1+mark2)/2; printf("\n你的总分是:%.2f 平均分是:%.2f\n总评为:",mark1+...