社区
C语言
帖子详情
求助关于C语言程序学生管理系统的一些小问题
lszgn
2005-06-23 09:32:41
一个用C语言做的学生信息管理系统..为求简便数据直接保存在内存中..程序做完在编译的时候有错误....求达人帮忙看看错在哪..小弟实在看不出错的地方...谢谢了...源码见楼下..
...全文
199
6
打赏
收藏
求助关于C语言程序学生管理系统的一些小问题
一个用C语言做的学生信息管理系统..为求简便数据直接保存在内存中..程序做完在编译的时候有错误....求达人帮忙看看错在哪..小弟实在看不出错的地方...谢谢了...源码见楼下..
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lszgn
2005-06-24
打赏
举报
回复
谢谢楼上各位了~我是初学者~所以很多时候不能注意到一些问题~以后我会注意我的代码风格的~
zjxiaoyu
2005-06-23
打赏
举报
回复
#define N 50;
去掉分号。
s_topman
2005-06-23
打赏
举报
回复
程序中没有srchByxh这个函数,还有你的错误都是编译错误,都是很简单的,自己
应该能查出来吧?
lszgn
2005-06-23
打赏
举报
回复
#include <stdio.h>
#define N 50;
typedef struct stu
{
int xh;
char name[10];
char sex[3];
int age;
int grade;
}STUDENT;
int N;
STUDENT st[N];
STUDENT InputAstudent()
{STUDENT a;
printf("Xuh:");scanf("%d",&a.xh);
printf("Name:");gets(a.name);
printf("Sex:");gets(a.sex);
printf("Age:");scanf("%d",a.age);
printf("Grade:");scanf("%d",a.grade);
return a;
}
void InputStudents(STUDENT *p,int n)
{int i;
for(i=0;i<n;i++)
{printf("Please %d student info:\n",i);
p[i]=InputAstudent();
}
}
outAstudent(STUDENT *p)
{
printf("%4d ",p->xh);
printf("%12s ",p->name);
printf("%5s ",p->name);
printf("%4d ",p->age);
printf("%4d ",p->grade);
printf("\n");
}
deleteAstudent(STUDENT *p,int *n, int k)
{int i;
for(i=k;i<*n;i++) p[i]=p[i+1];
(*n)--;
}
int srchByname(STUDENT *p, int n,char *name)
{ int found,i=0;
while(strcmp(p[i].name,name)&&i<n) i++;
if(i<n) return i; else return -1;
}
sortBygrade(STUDENT *p,int n)
{STUDENT t;int i,j,k;
for(i=0;i<n-1;i++)
{k=i;
for(j=i+1;j<n;j++)
if(p[j].grade>p[k].grade) k=j;
if(k!=i) {t=p[i];p[i]=p[k];p[k]=t;}
}
}
changebyxh(STUDENT *p,int n,int xh,int grade)
{int k;
k=srchByxh(p,n,xh);
if(k==-1) return -1;
p[k].grade=grade;
}
float getaverage(STUDENT *p,int n)
{float sum=0.0,ave;
int i;
for(i=0;i<n;i++) sum+=p[i].grade;
ave=sum/n;
return ave;
}
int countBygrade(STUDENT *p,int n,int low,int high)
{int i,s=0;
for(i=0;i<n;i++)
if(p[i].grade>=low&&p[i].grade<high)s++;
return s;
}
void srchname( )
{ int k;
char name[10];
clrscr();
printf(" Name:\n");gets(name);
k=srchByname(st,n,name);
if(k>=0) outAstudent(st+k);
}
void srchxh( )
{int k,xh;
printf("XuHao:\n");
scanf("%d",&xh);
k=srchByxh(st,n,xh);
if(k>=0) outAstudent(st+k);
}
char displaymenu()
{
clrscr( );
printf("1.InputAll\n");printf("2.OutputAll\n");
printf("3.DeleteRecord\n");
printf("4.InsertRecord\n");
printf("5.SearchByName\n");
printf("6.SearchByxh\n");
printf("7.DisplayBefore3rd\n");
printf("8.ChangeGradeByname\n");
printf("9.ChangeGradeByxh\n");
printf("A.DisplayAverageMaxMin\n");
printf("B.DisplayGradeRange\n");
printf("Q.End\n");
return getchar( );
}
void Dofun(char f )
{switch(f)
{
case 1:InputStudents(st,n);break;
case 2:outputStudents(st,n);break;
case 3:delete();break;
case 4:insert();break;
case 5:srchname( );break;
case 6: srchxh( );break;
case 7: display3line(); break;
case 8: changename();break;
case 9: changexh();break;
case 'A':case 'a':
case 'B':case 'b':break;
}
}
main()
{
char ch;
int n;
while((ch=displaymenu())!='Q')
{
clrscr();
Dofun(ch);
}
}
AIGPTchina
2005-06-23
打赏
举报
回复
你的代码风格问题要注意一下
你要想别人看你的代码~~
看看梁的那本《高手箴言》
bingbox_1984
2005-06-23
打赏
举报
回复
有错误:scanf("%d",a.age);
该为scanf("%d",&a.age);
还有:scanf("%d",a.grade);
该为:scanf("%d",&a.grade);
还有:printf("%5s ",p->name);
改为:printf("%5s ",p->sex);
k=srchByxh(st,n,xh);这个是什么东东?好象没有出现srchByxh函数哦
case 'A':case 'a':
case 'B':case 'b':break;
直接用default:break;
你的函数有好多错误啊
有些根本不能调用!自己在去看看。
c语言
程序
设计报告-图书管理系统.pdf
c语言
程序
设计报告-图书管理系统.pdf
项目教学法在《
C语言
程序
设计》教学中的研究.pdf
项目教学法在《
C语言
程序
设计》教学中的研究.pdf
程序
设计基础大作业基于
C语言
实现的社区管理系统源代码
程序
设计基础大作业基于
C语言
实现的社区管理系统源代码 编译和运行 项目使用 CMake 构建系统。需要电脑上装有 CMake。 mkdir build cd build cmake .. make 如果想使用 Code::Blocks IDE,可以进行如下操作: mkdir codeblocks cd codeblocks cmake .. -G"CodeBlocks - MinGW Makefiles" 之后即可生成 Code::Blocks 的工程文件。
c语言
程序
设计机考简介.ppt
c语言
程序
设计机考简介
c语言
程序
设计课件适用于大学二年级的学生
比较实用的和易学易懂的课件。适合于大学二年级的学生学习和使用。
C语言
70,023
社区成员
243,263
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章