求助C语言学生系统中按照姓名进行查找学生
#include "conio.h"
struct student
{
char name [15];
int score;
};
int find (struct student s[]);void main()
{
int i=0;
struct student stu[5];
for(i=0;i<5;i++)
{
printf("输入第%d个学生的姓名:",i+1);
scanf("%s",stu[i].name);
printf("输入第%d个学生的成绩:",i+1);
scanf("%d",&stu[i].score);
}
int nIndex=find(stu);
if(nIndex!=-1)
printf("找到该同学信息,该同学位于第%d个位置(数组下标)",nIndex);
getch();
}int find(struct student s[])
{
char name[15];
int i=0;
int nIndex=-1;
printf("输入要查询学生的姓名:");
scanf("%s",name);
for(i=0;i<5;i++)
{
if(strcmp(s[i].name,name)==0)
{
nIndex=i;
break;
}
}
return nIndex;
}
#include
#include
#include
#include
#define max 20
typedef struct student //学生
{
char sno[max]; // 学号
char sname[max]; //姓名
char sex[max]; //性别
char age[max]; //年龄
char depart[max]; //系
char classs[max]; //班
char grade[max]; //年级
struct student* next;
} student;
student* head;
int LogOn() //登录模块,已实现输入密码不回显,如果中途发现输错某几位,可退格键重输
{
char username[max],password[max];
printf("
请输入用户名:");
scanf("%s",username);
printf("
请输入密码(最多15位):");
//开始以不回显且支持退格方式获取输入密码
int i=0;
while((i>=0)&&(password[i++]=getch())!=13)//条件i>=0是用于限制退格的范围
{
if(password[i-1]=='\b')//对退格键的处理
{
printf("%c%c%c",'\b','\0','\b');
i=i-2;
}
else
printf("*");
}
password[--i]='\0';
//已获取密码。验证用户身份
if(!strcmp(username,"zhang")&&!strcmp(password,"8147086"))
{
printf("
登录成功!");
return 1;
}
else
return 0;
}
void regist()
{
char ch;
student *s,*ptr; //s用来建新结点,ptr用来暂存头结点
do
{
s=(student*)malloc(sizeof(student)); // 新建一个学生结点
printf("
开始注册..."); //开始注册
printf("
请输入该学生的学号:");
scanf("%s",s->sno);
printf("
请输入该学生的姓名:");
scanf("%s",s->sname);
printf("
请输入该学生的性别:");
scanf("%s",s->sex);
printf("
请输入该学生的年龄:");
scanf("%s",s->age);
printf("
请输入该学生的系:");
scanf("%s",s->depart);
printf("
请输入该学生所在的班:");
scanf("%s",s->classs);
printf("
请输入该学生所在的年级");
scanf("%s",s->grade);
ptr=head;
head=s;//将新结点插入队头
s->next=ptr;
fflush(stdin);
printf("
请问是否继续注册?(Y/N)");
scanf("%c",&ch);
}while(ch=='Y'||ch=='y');
return;
}
void ElePrint(char str[]) //输出单个元素
{
if(str==NULL) exit(0);
printf("%s",str);
for(unsigned int i=0;i<12-strlen(str);i++) printf(" ");//为了对齐输出,需插入一些空格
return;
}
int LinePrint(student *ptr) //输出一行
{
if(ptr==NULL) //检查传进来的指针
return 0;
printf("
");
ElePrint(ptr->sno);
ElePrint(ptr->sname);
ElePrint(ptr->age);
ElePrint(ptr->sex);
ElePrint(ptr->depart);
ElePrint(ptr->classs);
ElePrint(ptr->grade);
return 1;
}
void print() //输出全部学生信息
{
student *ptr=head;
printf("
学号 姓名 年龄 性别 系 班 年级 ");
while(ptr)
{
LinePrint(ptr);
ptr=ptr->next;
}
printf("
");
return;
}
void search()//查询模块
{
int method;//查询方式
char no[max],name[max],departm[max],clss[max],grades[max]; //用来接收查询关键字
while(1)
{
printf("
请选择查询方式");
printf("
1.按学号查询");
printf("
2.按姓名查询");
printf("
3.按所在系查询");
printf("
4.按所在班级查询");
printf("
5.按所在年级查询");
printf("
6.打印全部学生信息");
printf("
7.返回主菜单
");
scanf("%d",&method);
student *p=head,*temp;
switch(method)
{
case 1:
printf("
请输入要查询的学号:");
scanf("%s",no);
while(p)
{
if(!strcmp(p->sno,no))
break;
else
{
temp=p;
p=p->next;
#include
#include
struct Link/*定义结构体链表*/
{
int number;
char name[20];
char sex[4];
int chinese;
int math;
int lizong;
int english;
int sum;
float average;
struct Link*next;
};
void Picture(void);/*进行函数调用*/
char Menu1(void);
char Menu2(void);
struct Link *Append(struct Link *head);
void Print(struct Link*head);
struct Link *Delete(struct Link *head);
struct Link *Change(struct Link *head);
void Find(struct Link*head);
void Sort1(struct Link*head);
void Sort2(struct Link*head);
void Sort3(struct Link*head);
void Sort4(struct Link*head);
void Deletememory(struct Link*head);
void Beifen(struct Link*head);
struct Link*Huanyuan(struct Link*head);
int Total(struct Link*head);
const char *file="wenjian";
char *Mima(void);
int main()
{
char choice,ch,*shuru,mima[7]="123456";
struct Link *head=NULL;
system("color 4f");
Picture();
printf("登陆身份认证:\n你是一位老师还是一名学生?(Teacher/Student)\n");
scanf("%c",&ch);
if(ch=='T'||ch=='t')
{
do
{ printf("请输入6位密码:\n");
scanf("%s",shuru);
if(strcmp(shuru,mima)==0)
break;
else {printf("输入密码不正确\n");}
}while(strcmp(shuru,mima)!=0);
while(1)
{
system("cls");
choice=Menu1();
switch(choice)
{
case '1':
head=Append(head);
system("cls");
break;
case '2':
Print(head);
break;
case '3':
head=Delete(head);
break;
case '4':system("cls");
head=Change(head);
printf("想要查看吗?(Y/N)");
scanf(" %c",&ch);
if(ch=='Y'||ch=='y')
Print(head);
break;
case '5':Find(head);
break;
case '6':Sort1(head);
printf("已经排好顺序了\n");
break;
case '7':Sort2(head);
printf("已经排好顺序了\n");
break;
case '8':Sort3(head);
printf("已经排好顺序了\n");
break;
case '9':Sort4(head);
printf("已经排好顺序了\n");
break;
case 'A':Beifen(head);
exit(0);
case 'B':head=Huanyuan(head);
char i=getchar();
printf("您已经成功还原,按ENTER键返回主菜单\n");
i=getchar();
break;
case 'C':Deletememory(head);
exit(0);
default:printf("input error!");
break;
}
}
}
else
{
while(1)
{
system("cls");
choice=Menu2();
switch(choice)
{
case '1':
Print(head);
break;
case '2':Find(head);
break;
case '3':Sort1(head);
char i=getchar();
printf("已经排好顺序了,按ENTER键返回主菜单\n");
i=getchar();
break;
case '4':Sort2(head);
i=getchar();
printf("已经排好顺序了,按ENTER键返回主菜单\n");
i=getchar();
break;
case '5':Sort3(head);
i=getchar();
printf("已经排好顺序了,按ENTER键返回主菜单\n");
i=getchar();
break;
case '6':Sort4(head);
i=getchar();
printf("已经排好顺序了,按ENTER键返回主菜单\n");
i=getchar();
Print(head);
break;
case '7':head=Huanyuan(head);
i=getchar();
printf("您已经成功还原,按ENTER键返回主菜单\n");
i=getchar();
break;
case '8':Deletememory(head);
exit(0);
default:printf("input error!");
break;
}
}
}
}
char Menu1(void)/*教师菜单*/
{
char ch;
printf("%5\t教师菜单\n");
printf("创名校 做名师 育名人\n");
printf("%5\t1、增添\n");
printf("%5\t2、列表显示\n");
printf("%5\t3、删除\n");
printf("%5\t4、修改\n");
printf("%5\t5、查询\n");
printf("%5\t6、以总分降序排列\n");
printf("%5\t7、以总分升序排列\n");
printf("%5\t8、以学号降序排列\n");
printf("%5\t9、以学号升序排列\n");
printf("%5\tA、备份文件\n");
printf("%5\tB、还原文件\n");
printf("%5\tC、退出\n");
printf("please enter your choice:\n");
scanf(" %c",&ch);
return ch;
}
char Menu2(void)/*学生菜单*/
{
char ch;
printf("%5\t学生菜单\n");
printf("规格严格 功夫到家\n");
printf("%5\t1、列表显示\n");
printf("%5\t2、查询\n");
printf("%5\t3、以总分降序排列\n");
printf("%5\t4、以总分升序排列\n");
printf("%5\t5、以学号降序排列\n");
printf("%5\t6、以学号升序排列\n");
printf("%5\t7、还原文件\n");
printf("%5\t8、退出\n");
printf("please enter your choice:\n");
scanf(" %c",&ch);
return ch;
}
struct Link *Append(struct Link *head)/*增添的函数*/
{
char c;
do{
system("cls");
system("color 1f");
struct Link *p=NULL;
struct Link *pr=head;
p=(struct Link*)malloc(sizeof(struct Link));
if(p==NULL)
{
printf("没有足够内存,返回主菜单\n");
break;
}
if(head==NULL)
{
head=p;
}
else
{
while(pr->next!=NULL)
{
pr=pr->next;
}
pr->next=p;
}
pr=p;
printf("请输入学号\n");
scanf("%d",&p->number);
printf("请输入姓名\n");
scanf("%s",p->name);
printf("请输入性别\n");
scanf("%s",p->sex);
printf("请输入语文成绩(0——150)\n");
do{
scanf("%d",&p->chinese);
if((p->chinese)chinese)>150)
printf("输入分数有误,请重新输入\n");
}while((p->chinese)chinese)>150);
printf("请输入数学(0——150)\n");
scanf("%d",&p->math);
printf("请输入理科综合成绩(0——300)\n");
scanf("%d",&p->lizong);
printf("请输入英语成绩(0——150)\n");
scanf("%d",&p->english);
p->sum=(p->chinese)+(p->math)+(p->lizong)+(p->english);
p->average=(float)(p->sum)/4;
pr->next=NULL;
printf("\nnew nodes have been append!\n");
printf("\n是否想新增加一个新成员?(Y/N)\n");
scanf(" %c",&c);
}
while(c=='Y'||c=='y');
return head;
}
void Print(struct Link*head)/*列表显示的函数*/
{
if(head==NULL)
{
char i=getchar();
printf("无内容,无法显示,按ENTER键返回菜单\n");
i=getchar();
system("cls");
}
else{
printf("学号 姓名 性别 语文 数学 理科综合 英语 总分 平均分\n");
struct Link*p=head;
while(p!=NULL)
{
printf("\n%d %s %s %d",p->number,p->name,p->sex,p->chinese);
printf(" %d %d %d %d %.2f",p->math,p->lizong,p->english,p->sum,p->average);
p=p->next;
}
char i=getchar();
printf("\n按ENTER键返回主菜单\n");
i=getchar();
system("cls");
}
}
struct Link *Delete(struct Link *head)/*删除的函数*/
{
if(head==NULL)
{
char i=getchar();
printf("链表为空,没有要删除对象,按ENTER键返回主菜单\n");
i=getchar();
system("cls");
}
else{
int c;
char ch;
do{
if(head==NULL)
{
char i=getchar();
printf("链表为空,没有要删除对象,按ENTER键返回主菜单\n");
i=getchar();
system("cls");
break;
}
printf("请输入要删除的学号\n");
scanf("%d",&c);
struct Link *p=head,*pr=head;
while(c!=p->number&&p->next!=NULL)
{
pr=p;
p=p->next;
}
if(c==p->number)
{
if(p==head)
{
head=p->next;
}
else
{
pr->next=p->next;
}
free(p);
printf("您已经成功删除");
}
else printf("没有找到!");
printf("\n想继续吗?(Y/N)");
scanf(" %c",&ch);
}while(ch=='Y'||ch=='y');
system("cls");
}
return head;
}
struct Link *Change(struct Link *head)/*修改的函数*/
{
int c;
char ch;
do{
if(head==NULL)
{
printf("链表为空,没有要删除对象\n");
break;
}
printf("请输入要修改的学号\n");
scanf("%d",&c);
struct Link *p=head;
while(c!=p->number&&p!=NULL)
{
p=p->next;
}
if(c==p->number)
{
printf("请输入改后学号\n");
scanf("%d",&p->number);
printf("请输入改后姓名\n");
scanf("%s",p->name);
printf("请输入改后性别\n");
scanf("%s",p->sex);
printf("请输入改后语文成绩\n");
scanf("%d",&p->chinese);
printf("请输入改后数学\n");
scanf("%d",&p->math);
printf("请输入改后理科综合成绩\n");
scanf("%d",&p->lizong);
printf("请输入改后英语成绩\n");
scanf("%d",&p->english);
p->sum=(p->chinese)+(p->math)+(p->lizong)+(p->english);
p->average=(float)(p->sum)/4;
printf("您已经成功修改\n");
}
else printf("没找到!\n");
printf("想继续修改吗?(Y/N)");
scanf(" %c",&ch);
}while(ch=='Y'||ch=='y');
return head;
}
void Find(struct Link*head)/*查找的函数*/
{
int c;
char ch;
struct Link*p=head;
do{
printf("请输入想要查询的学号:\n");
scanf("%d",&c);
if(head==NULL)
{
printf("链表为空,没有查询对象\n");
break;
}
while(c!=p->number&&p!=NULL)
{
p=p->next;
}
if(c==p->number)
{
printf("学号 姓名 性别 语文 数学 理科综合 英语 总分 平均分\n");
printf("\n%d %s %s %d",p->number,p->name,p->sex,p->chinese);
printf(" %d %d %d %d %.2f",p->math,p->lizong,p->english,p->sum,p->average);
}
else printf("您的输入有误,暂时没有此学号的学生,请查证后再查询\n");
printf("想继续查询吗?(Y/N)\n");
scanf(" %c",&ch);
}while(ch=='Y'||ch=='y');
}
void Picture(void)/*超豪华界面,后来发现可以比这更简单,但已经做完了,就没有修改*/
{
printf ("hello world");
}
void Sort1(struct Link*head)/*排序函数1*/
{
struct Link*p;
int flag=0;
char temp1[20];
int temp2;
do
{
if(head==NULL)
{
char i=getchar();
printf("链表为空,按ENTER键返回菜单\n");
i=getchar();
break;
}
flag=0;
p=head;
while(p->next!=NULL)
{
if((p->sum)next->sum))/*只交换节点内容*/
{
temp2=(p->next->sum);//sum
(p->next->sum)=(p->sum);
(p->sum)=temp2;
strcpy(temp1,(p->next->name));//name
strcpy((p->next->name),(p->name));
strcpy((p->name),temp1);
strcpy(temp1,(p->next->sex));//sex
strcpy((p->next->sex),(p->sex));
strcpy((p->sex),temp1);
temp2=(p->next->chinese);
(p->next->chinese)=(p->chinese);
(p->chinese)=temp2;
temp2=(p->next->math);
(p->next->math)=(p->math);
(p->math)=temp2;
temp2=(p->next->lizong);
(p->next->lizong)=(p->lizong);
(p->lizong)=temp2;
temp2=(p->next->english);
(p->next->english)=(p->english);
(p->english)=temp2;
temp2=(p->next->average);
(p->next->average)=(p->average);
(p->average)=temp2;
flag=1;
}
p=p->next;
}
}while(flag);
}
void Sort2(struct Link*head)/*排序函数2*/
{
struct Link*p;
int flag=0;
char temp1[20];
int temp2;
do
{
if(head==NULL)
{
char i=getchar();
printf("链表为空,按ENTER键返回菜单\n");
i=getchar();
break;
}
flag=0;
p=head;
while(p->next!=NULL)
{
if((p->sum)>(p->next->sum))/*只交换节点内容*/
{
temp2=(p->next->sum);//sum
(p->next->sum)=(p->sum);
(p->sum)=temp2;
strcpy(temp1,(p->next->name));//name
strcpy((p->next->name),(p->name));
strcpy((p->name),temp1);
strcpy(temp1,(p->next->sex));//sex
strcpy((p->next->sex),(p->sex));
strcpy((p->sex),temp1);
temp2=(p->next->chinese);
(p->next->chinese)=(p->chinese);
(p->chinese)=temp2;
temp2=(p->next->math);
(p->next->math)=(p->math);
(p->math)=temp2;
temp2=(p->next->lizong);
(p->next->lizong)=(p->lizong);
(p->lizong)=temp2;
temp2=(p->next->english);
(p->next->english)=(p->english);
(p->english)=temp2;
temp2=(p->next->average);
(p->next->average)=(p->average);
(p->average)=temp2;
flag=1;
}
p=p->next;
}
}while(flag);
}
void Sort3(struct Link*head)/*排序函数3*/
{
struct Link*p;
int flag=0;
char temp1[20];
int temp2;
do
{
if(head==NULL)
{
char i=getchar();
printf("链表为空,按ENTER键返回菜单\n");
i=getchar();
break;
}
flag=0;
p=head;
while(p->next!=NULL)
{
if((p->number)next->number))/*只交换节点内容*/
{
temp2=(p->next->sum);//sum
(p->next->sum)=(p->sum);
(p->sum)=temp2;
strcpy(temp1,(p->next->name));//name
strcpy((p->next->name),(p->name));
strcpy((p->name),temp1);
strcpy(temp1,(p->next->sex));//sex
strcpy((p->next->sex),(p->sex));
strcpy((p->sex),temp1);
temp2=(p->next->chinese);
(p->next->chinese)=(p->chinese);
(p->chinese)=temp2;
temp2=(p->next->math);
(p->next->math)=(p->math);
(p->math)=temp2;
temp2=(p->next->lizong);
(p->next->lizong)=(p->lizong);
(p->lizong)=temp2;
temp2=(p->next->english);
(p->next->english)=(p->english);
(p->english)=temp2;
temp2=(p->next->average);
(p->next->average)=(p->average);
(p->average)=temp2;
flag=1;
}
p=p->next;
}
}while(flag);
}
void Sort4(struct Link*head)/*排序函数4*/
{
struct Link*p;
int flag=0;
char temp1[20];
int temp2;
do
{
if(head==NULL)
{
char i=getchar();
printf("链表为空,按ENTER键返回菜单\n");
i=getchar();
break;
}
flag=0;
p=head;
while(p->next!=NULL)
{
if((p->number)>(p->next->number))/*只交换节点内容*/
{
temp2=(p->next->sum);//sum
(p->next->sum)=(p->sum);
(p->sum)=temp2;
strcpy(temp1,(p->next->name));//name
strcpy((p->next->name),(p->name));
strcpy((p->name),temp1);
strcpy(temp1,(p->next->sex));//sex
strcpy((p->next->sex),(p->sex));
strcpy((p->sex),temp1);
temp2=(p->next->chinese);
(p->next->chinese)=(p->chinese);
(p->chinese)=temp2;
temp2=(p->next->math);
(p->next->math)=(p->math);
(p->math)=temp2;
temp2=(p->next->lizong);
(p->next->lizong)=(p->lizong);
(p->lizong)=temp2;
temp2=(p->next->english);
(p->next->english)=(p->english);
(p->english)=temp2;
temp2=(p->next->average);
(p->next->average)=(p->average);
(p->average)=temp2;
flag=1;
}
p=p->next;
}
}while(flag);
}
void Deletememory(struct Link *head)/*清楚内存*/
{
struct Link*p=head,*pr=NULL;
while(p!=NULL)
{
pr=p;
p=p->next;
free(pr);
}
}
void Beifen(struct Link*head)/*仿照数据库的思路,用备份和还原的方法解决文件问题*/
{
FILE*fp;
struct Link*p=head;
int x=0;
fp=fopen(file,"w+");
if(fp==NULL)
{
printf("Can't open %s file\n",file);
exit(1);
}
x=Total(head);
fputc(x,fp);
while(p!=NULL)
{
fwrite(p,sizeof(struct Link),1,fp);
p=p->next;
}
printf("您已经成功备份,按ENTER键退出系统\n");
fclose(fp);
}
struct Link*Huanyuan(struct Link*head)/*还原文件*/
{
int m=1,n;
FILE*fp;
fp=fopen(file,"r+");
if(fp==NULL)
{
printf("Can't open %s file\n",file);
//exit(1);
}
struct Link*p=NULL;
struct Link*pr=NULL;
n=fgetc(fp);
pr=(struct Link*)malloc(sizeof(struct Link));
fread(pr,sizeof(struct Link),1,fp);
head=pr;
while(m<=n)
{
p=(struct Link*)malloc(sizeof(struct Link));
fread(p,sizeof(struct Link),1,fp);
pr->next=p;
pr=p;
pr->next=NULL;
m=m+1;
}
return head;
}
int Total(struct Link*head)/*计算输入的学生总数,在还原函数中要用到*/
{
struct Link*p=head;
int n=-1;
while(p!=NULL)
{
n++;
p=p->next;
}
return n;
}
c语言学生管理系统中的增加学生信息
void show();cout<<setw(53)<<"欢迎进入学生管理系统!"<<endl;cout<<setw(55)<<"1 添加学生信息 2 查询学生信息"<<endl<<endl;cout<<setw(55)<<"3 删除学生信息 4 修改学生信息"<<endl<<endl;cout<<setw(55)<<"5 比较学生信息 6 显示学生信息"<<endl<<endl;cout<<setw(45)<<"...
C语言:学生信息管理系统
printf("\\n输入要增加的学生的资料!"); repeat4: printf("请输入学生学号(学号应大于0):"); scanf("%d",&stu->number); \/*输入学号,学号应大于0*\/ while(stu->number<0) {getchar(); printf("输入错误,请重新输入学生学号:"); scanf("%d",&stu->number);}\/*输入错误,重新输入学号*\/ \/***...
c语言学生成绩管理系统中系统测试的目的
1、在编辑应用程序过程中,逐步加深对C语言编程的理解。2、加强实践的能力,动手能力,同时进一步对所学的知识进行巩固。3、培养初步编程的能力,为以后的学习奠定基础。
c语言学生管理系统学生成绩管理系统 功能: 每个学生信息为一个记录,包...
printf("\\t\\t\\t1.键入学生的信息\\n\\n"); \/*键入学生的信息*\/ printf("\\t\\t\\t2.查看录入的学生信息\\n\\n"); \/*查看录入的学生信息*\/ printf("\\t\\t\\t3.按姓名查看学生的信息\\n\\n"); \/*按姓名查看学生的信息*\/ printf("\\t\\t\\t4.按学号查看学生的信息\\n\\n"); \/*按学号查看学生的信息*\/ ...
c语言学生管理系统
学生成绩管理系统系统中能够存储学生的学号、姓名、性别、年龄、课程成绩等信息。要求:1、浏览学生信息:从屏幕上读取一个学生的信息(包括学号、姓名、年龄、性别)并将信息存入到数... 学生成绩管理系统系统中能够存储学生的学号、姓名、性别、年龄、课程成绩等信息。要求:1、浏览学生信息:从屏幕上读取一个学生的信息...
用c语言编写学生信息管理系统
用c语言编写学生信息管理系统 1.定义结构体,应该至少包含如下属性:学号姓名性别年龄三门成绩2.要求所有功能均用函数来实现,要使main函数尽量的简洁3.录入学生信息(initStudentInfo())注意:学号的唯一性4.显示学... 1. 定义结构体,应该至少包含如下属性: 学号 姓名 性别 年龄 三门成绩 2. 要求所有功能均用函数...
用C语言编程学生信息管理系统!
具体要求如下:学生信息包括:学号,姓名,年龄,性别,出生年月,地址,电话,E-mail等。试设计一学生信息管理系统,使之能提供以下功能:系统以菜单方式工作(用键盘输入1~4之间的数来... 具体要求如下:学生信息包括:学号,姓名,年龄,性别,出生年月,地址,电话,E-mail等。试设计一学生信息管理系统,使之能提供以下功能:...
C语言学生管理系统
C语言学生管理系统 学生成绩管理系统主要功能:一、当前学生信息:通过结构体structstudent来保存学生的姓名,学号,性别,语文,数学,英语和计算机等等相关信息,并且可以输入当前学生初始信息。二、学... 学生成绩管理系统主要功能:一、 当前学生信息:通过结构体struct student 来保存学生的姓名,学号,性别,语文,数学,英语和...
学生信息管理系统c语言程序
学生信息管理系统c语言程序 1,用口令(密码)形式验证管理员身份(可输入3次),合法者可进入,否则程序结束。2,有关功能说明A.建立学生成绩表;建立新的学生成绩文件;输入若干学生纪录,包括姓名、学好、班... 1, 用口令(密码)形式验证管理员身份(可输入3次),合法者可进入,否则程序结束。2, 有关功能说明A.建立...
c语言学生信息管理系统
2013-06-16 用C语言编写一个学生管理系统。 197 2011-07-17 C语言学生信息管理系统程序设计 38 2010-07-13 c语言编写学生信息管理系统 43 2015-07-18 用C语言编程学生信息管理系统! 15 2014-05-22 c语言学生信息管理系统代码 406 2011-03-16 用C语言设计一个学生信息查询系统程序 2014-09-09 学...
冯骂氢化: #include #include struct Link/*定义结构体链表*/ { int number; char name[20]; char sex[4]; int chinese; int math; int lizong; int english; int sum; float average; struct Link*next; }; void Picture(void);/*进行函数调用*/ char Menu1(void); char Menu2(void); ...
白云矿区15312903997: C语言学生系统中按照姓名进行查找学生的问题 - ?
冯骂氢化: 二维数组啊,应该这么声明的: char name[6][10]=]={“Zhangxiaodong”,”wangping”,”pangyan”,”libing”}; 查找的方法如下. #include#include/*字符串处理的头文件*/ void main(void) { char name[6][10]=]={“Zhangxiaodong”,”...
白云矿区15312903997: 怎样用c语言做学生管理系统中的分别根据班级和姓名查询学生成绩 - ?
冯骂氢化: 说明一下 我这是在VC++6.0里运行的 我新建的时候是以.cpp为后缀的 一.c为后缀可能会有错误 我这里只输入一门成绩 学号也不要超过10位 如果想要输入多门成绩 按总分排序 可以追问#include<stdio.h>#include<stdlib.h> struct stu { int xh; char ...
白云矿区15312903997: c语言求解,下面一段程序是按姓名查询学生信息,我想改为按学号查询学生信息,要求基本内容相同,求高手解 - ?
冯骂氢化: void find1() /*查询函数*/ { int i,num; //因为学号是 unsigned int char str[20],as; do { printf("输入要查询的学生姓名:"); fflush(stdin); scanf("%d",&num); //接收输入的学好以数字形式 for(i=0;i<now_no;i++) if(stu[i].no==num) //接收的数...
白云矿区15312903997: 求大神解题.c语言,按姓名查询的一个系统,for循环 - ?
冯骂氢化: #includestruct member{ char name[20]; char phone[15]; }; void main() { int i,j,k; int flag = 0; //初始化存入三个记录 struct member mem[3] = {{"WangFeng","135123"},{"WangJie","136123"},{"LiuJie","189123"}}; char sub_str[20]; ...
白云矿区15312903997: 用c语言编写先存储一个班级学生的姓名,从键盘输入一个姓名,查找该人是否为该班学生? - ?
冯骂氢化: char name[100][10],s[10]; int f=0; 班级学生的姓名输入略;scanf("%s",s); for(i=0;i<100;i++) if(strcmp(name[i],s)==0) f=1; f=1;则该人为该班学生 <string.h>
白云矿区15312903997: 用C语言编程 先存储一个班级学生的姓名,从键盘输入一个姓名,查找该人是否为该班学生? - ?
冯骂氢化: 用文件操作的相关函数
白云矿区15312903997: 在吗?能不能把C语言 学生信息管理系统的按学号查询学生信息该为按姓名查询? - ?
冯骂氢化: 在 可以这个可以的
白云矿区15312903997: 用c语言编写程序,定义字符数组,输入n个学生姓名,,首先对数组元素进行排序,再查找某人是否在数组中, - ?
冯骂氢化: 对汉字排序要转成拼音
白云矿区15312903997: c语言学生管理系统怎么按姓名查找学生信息 - ?
冯骂氢化: 说清楚点,是模糊查询吗?可以用string.h中的indexOf方法!