C语言学生选课系统(代码)
C语言 VC++环境
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int N1,N2;
struct student
{
int num2;
char name2[20];
int nelenum[50]; //所选课程编号
int nelen; //所选课程学分和
struct student * next;
};
struct course
{
};
struct course * head1;
struct student * head2;
void zhang() //从键盘录入课程信息
{
struct course *p1,*p2; int num1; //课程编号 char name1[20]; char major[20]; char type[20]; int credit; int period; char teacher[20]; int people; //选此门课程的人数 struct course *next; //结构体指针
N1=0;
p1=p2=(struct course *)malloc(sizeof(struct course));
C语言 VC++环境
printf("课程编号\t课程名称\t主修\t课程性质\t学分\t课时\t教师\n");
scanf("%d%s%s%s%d%d%s",&p1->num1,p1->name1,p1->major,p1->type,&p1->credit,&p1->period,p1->teacher);
p1->people=0;
head1=NULL;
while(p1->num1!=0)
{ N1=N1+1;
if(N1==1)head1=p1;
else p2->next=p1;
p2=p1;
p1=(struct course * )malloc(sizeof(struct course));
scanf("%d%s%s%s%d%d%s",&p1->num1,p1->name1,p1->major,p1->type,&p1->credit,&p1->period,p1->teacher);
p1->people=0;
}
p2->next=NULL;
}
void zhang1() //从文件录入课程信息
{
FILE * fp;
char filepath[20];
struct course *p1,*p2;
N1=0;
printf("请输入您要读取的路径:");
getchar();
gets(filepath);
if((fp=fopen(filepath,"r"))==NULL)
{
C语言 VC++环境
printf("找不到 %s 文件!\n",filepath);
exit(0);
}
p1=p2=(struct course*)malloc(sizeof(struct course));
fscanf(fp,"%d%s%s%s%d%d%s%d",&p1->num1,p1->name1,p1->major,p1->type,&p1->credit,&p1->period,p1->teacher,&p1->people);
while(!feof(fp))
{ N1=N1+1;
if(N1==1)
head1=p1;
else
p2->next=p1;
p2=p1;
p1=(struct course * )malloc(sizeof(struct course));
fscanf(fp,"%d%s%s%s%d%d%s%d",&p1->num1,p1->name1,p1->major,p1->type,&p1->credit,&p1->period,p1->teacher,&p1->people);
}
p2->next=NULL;
}
void load() //录入课程信息函数
{
int i; printf("\t\t\t录入课程信息\n"); printf("\n1.从键盘录入"); printf("\n2.从文件录入"); printf("\n3.返回主菜单\n"); printf("请选择1-3:"); scanf("%d",&i);
C语言 VC++环境
switch(i) { case 1: zhang(); break;
case 2:zhang1();break;
case 3:break;
}
void insert(struct course *incourse) //增加课程信息
{
struct course *p0,*p1,*p2; }
p1=head1;
p0=incourse;
if(head1==NULL)
{ head1=p0;
p0->next=NULL;
}
else
{ while((p0->num1>p1->num1) && (p1->next!=NULL)) { p2=p1;
p1=p1->next;
}
if(p0->num1<=p1->num1)
{ if(head1==p1) head1=p0;
else
p2->next=p0;
p0->next=p1;
C语言 VC++环境
}
else
{ p1->next=p0;
p0->next=NULL;
} }
N1=N1+1;
}
void delc(int num1) //删除课程信息
{
struct course *p1,*p2;
if(head1==NULL)
{ printf("\n无法删除!\n");
goto end;
}
p1=head1;
while(num1!=p1->num1 && p1->next!=NULL)
{ p2=p1;
p1=p1->next;
}
if(num1==p1->num1)
{ if(p1==head1) head1=p1->next;
else
p2->next=p1->next;
printf("已删除\n");
N1=N1-1;
C语言 VC++环境
}
else
printf("没有此课程\n");
end:;
}
void managementc() //课程信息管理函数
{
struct course * p1;
int i,num1;
printf("\t\t\t课程信息管理\n");
printf("1.添加课程\n");
printf("2.删除课程\n");
printf("3.返回\n");
printf("请输入1-3:\n");
scanf("%d",&i);
switch(i)
{ case 1:{p1=(struct course *)malloc(sizeof(struct course)); printf("课程编号\t课程名称\t主修\t课程性质\t学分\t课时\t教师\n");
scanf("%d%s%s%s%d%d%s",&p1->num1,p1->name1,p1->major,p1->type,&p1->credit,&p1->period,p1->teacher);
} p1->people=0; insert(p1); } break; case 2:printf("请输入您要删除的课程编号:\n"); scanf("%d",&num1); delc(num1); break; case 3:break; }
C语言 VC++环境
void putin(void) //从键盘录入学生信息
{
int i; struct student *p1,*p2; N2=0; p1=p2=(struct student *)malloc(sizeof(struct student)); printf("学号\t姓名\n"); scanf("%d%s",&p1->num2,p1->name2); p1->nelen=0; for(i=0;i<20;i++) p1->nelenum[i]=0; head2=NULL; while(p1->num2!=0) { } p2->next=NULL;} N2=N2+1; if(N2==1) head2=p1; else p2->next=p1; p2=p1; p1=(struct student * )malloc(sizeof(struct student)); scanf("%d%s",&p1->num2,p1->name2); p1->nelen=0; for(i=0;i<20;i++) p1->nelenum[i]=0;
void putin2() //从文件录入学生信息
{
int i=0; FILE * fp; char filepath[20]; struct student *p1,*p2;
C语言 VC++环境
} printf("请输入您要读取的路径:"); getchar(); gets( …… 此处隐藏:5778字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [初中教育]婚姻家庭法学教学教案
- [初中教育]浅谈小学语文教学中的创新教育
- [初中教育]中华人民共和国侵权责任法2009
- [初中教育]2016-2022年中国薄膜太阳能电池行业发
- [初中教育]多级轻型井点降水的应用
- [初中教育]外语教学法流派介绍和简评
- [初中教育]实验一、典型环节及其阶跃响应
- [初中教育]内蒙古2012-2013学年度国家奖学金获奖
- [初中教育]移动通信营销渠道管理探讨
- [初中教育]初三化学第一学期第一第二章基础知识点
- [初中教育]一天的食物教学设计
- [初中教育]光导照明系统的基本结构及工作原理
- [初中教育]长春市十一高、东北师范大学附属中学、
- [初中教育]“十三五”规划重点-配重式装卸车项目
- [初中教育]领导方法和领导艺术
- [初中教育]第三章 植物病虫草鼠害诊断与防治基
- [初中教育]2019届九年级语文上册 第二单元 6纪念
- [初中教育]甲级单位编制水豆腐项目可行性报告(立
- [初中教育]Ch8-1补充 09101数据库系统原理及应用-
- [初中教育]2017-2023年中国吊装设备行业市场分析
- 制作毕业纪念册需要哪些材料
- 2015-2016学年高二化学苏教版选修4课件
- 哈佛管理导师-创建商业案例
- 职场交际中的谈吐礼仪知识与职场会议接
- 中国糕点及面包行业发展现状与竞争战略
- 沂河“12·7”洪水茶山拦河坝
- 管道水流量计算公式
- 4-2发电机火灾事故处置方案
- 数字信号处理实验五
- 2009年经济师(中级)金融专业知识全真试
- 历史街区保护规划--04历史文化遗产保护
- 宁夏回族自治区中小学职称评价标准
- 评先评优测评表
- 圆的切线证明及线段长求解在在中考中的
- 【解析版】2015年江苏省南京外国语学校
- 人教版八年级上册科学第一章习题精华
- 责任心与执行力
- SA8000社会责任管理体系标准培训
- IgA肾病的饮食应注意
- 杭州市建设工程文件归档整理方案(试行)




