标题:[求助]看看这个问题
只看楼主
oヤ偽妳變壞
Rank: 2
等 级:新手上路
威 望:4
帖 子:2251
专家分:0
注 册:2006-3-19
 问题点数:0 回复次数:3 
[求助]看看这个问题
某大学为本科生、研究生共开出2000门课程,请用C语言设计课程管理系统。
具体要求如下:
1)课程按本科生课(或研究生课)、适用年级、所属院系和所属专业等四各属性进行设置,请建立课程的数据结构;
2)以C语言提供的文件方式,进行“课程数据库”的设计,请按定义的课程数据结构描述文件的格式,以及文件与课程数据结构的关系;
3)开发课程的“查询系统”,要求以人机对话的方式直接输入本科生课(或研究生课)、适用年级、所属院系和所属专业等四各属性的“代码”后,显示全部课程
4)开发“课程修改系统”,要求给定课程名称后,查出该课程,并能修改该课程的所属院系和所属专业的属性。
搜索更多相关主题的帖子: 研究生 数据 查询系统 本科生 C语言 
2006-05-17 12:16
oヤ偽妳變壞
Rank: 2
等 级:新手上路
威 望:4
帖 子:2251
专家分:0
注 册:2006-3-19
得分:0 
谢谢了急  我菜 不会
2006-05-17 12:17
oヤ偽妳變壞
Rank: 2
等 级:新手上路
威 望:4
帖 子:2251
专家分:0
注 册:2006-3-19
得分:0 
#include<stdio.h>
#define SIZE 2
struct stud_sub
{
char name[10];
char grade[10];
char college[10];
char zhuanye[10];
}sub[SIZE];
void save()
{
FILE*fp;
int i;
if((fp=fopen("sub_list","wb"))==NULL)
{
printf("cannot open file\n");
return;
}
for(i=0;i<SIZE;i++)
{
printf("please enter the mat collations:\n");
scanf("%s%s%s%s%s",sub[i].name,sub[i].col_stud,sub[i].college,sub[i].zhuanye);
}
fclose(fp);
}
void check()
{
int i,j,m,n;
char a[10],b[10],c[10],d[10];
FILE*fp;
printf("please enter four charactors:\n");
scanf("%s%s%s%s",a,b,c,d);
fp=fopen("sub_list","rb");
for(i=0;i<SIZE;i++)
{
fread(&sub[i],sizeof(struct stud_sub),1,fp);
m=(strcmp(sub[i].col_stud,a))||(strcmp(sub[i].grade,b));
n=(strcmp(sub[i].college,c))||(strcmp(sub[i].zhuanye,d));
j=n||m;
if(!j)
{
printf("the subject name:\n");
printf("%s\n",sub[i].name);
}
}
fclose(fp);
}
void change()
{
int i;
char a[10],b[10],c[10];
FILE*fp;
printf("please enter the subject name:\n");
scanf("%s",a);
fp=fopen("sub_list","rb");
for(i=0;i<SIZE;i++)
{ fread(&sub[i],sizeof(struct stud_sub),1,fp);
if(!strcmp(sub.name,a))
{
printf("the four charactors are:\n");
printf("%s%s%s%s\n",sub[i].col_stud,sub[i].grade,sub[i].college,sub[i].zhuanye);
printf("please input what you want to change:b and c:\n");
scanf("%s%s",b,c);
strcpy(sub[i].college,b);
strcpy(sub[i].college,c);
}
}
save();
}
viod run()
{
char a[10]="check",b[10]="change",m[10];
printf("what do you want to do?please enter check or change:\n");
scanf("%s",m);
if(!strcmp(a,m))
{
printf("checking begin:\n");
check();
}
if(!srtcmp(b,m))
{
printf("changing begin:\n");
change();
}
}
main()
{
if(fopen("sub_list","rb")==NULL)
make();
else run();
}

2006-05-17 12:24
oヤ偽妳變壞
Rank: 2
等 级:新手上路
威 望:4
帖 子:2251
专家分:0
注 册:2006-3-19
得分:0 
谁做了 偶给钱
2006-05-17 12:32



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-64917-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.162211 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved