emmm...我想要这种效果,可是。。。/泄气(_ _)
确成了这样,还有原来能够运行的,也出问题了/难受...( _ _)ノ|
想象中的↑↑↑,现实给我的↓↓↓ 虽然知道是我不懂,但是还是很打击人
代码是这个
void chazhaoren() //查找人
{
int i;
char m[20];
printf("请输入您想查询的学生姓名:");
scanf("%s",m);
printf("成绩1:%.2f\n成绩2:%.2f\n成绩3:%.2f\n",score1(m),score2(m),score3(m));
}
帮帮孩子吧,呜呜呜~
#include <stdio.h>
#include <string.h>
#include <windows.h>
int A;
int now_no=0;
struct school //学生信息
{
int num;
char name[50],sex[5]; //使用char数组
float score1,score2,score3;
int no;
} s[100]={{1,"bingqian","女",92,95,90},{2,"zhouzhou","女",94,92,93},{3,"qinying","女",95,98,89}};
void input() /*原始数据录入模块*/
{
int m,i;
printf("请输入您要录入的人数:");
scanf("%d",&m);
for(i=1;i<m+1;i++)
{
printf("请输入您要录入的学号:");
scanf("%d",&s[i].num);
printf("请输入您要录入的姓名:");
scanf("%s",s[i].name);
printf("请输入您要录入的性别:");
scanf("%s",s[i].sex);
printf("请输入您要录入的成绩1:");
scanf("%f",&s[i].score1);
printf("请输入您要录入的成绩2:");
scanf("%f",&s[i].score2);
printf("请输入您要录入的成绩3:");
scanf("%f",&s[i].score3);
}
printf("创建完毕!\n");
}
void chazhaoren() //查找人
{
int i;
char m[20];
printf("请输入您想查询的学生姓名:");
scanf("%s",m);
printf("成绩1:%.2f\n成绩2:%.2f\n成绩3:%.2f\n",score1(m),score2(m),score3(m));
}
int num(char a[20]) //学号
{
int i;
for(i=0;i<10;i++)
if(strcmp(s[i].name,a)==0)
return s[i].num;
}
float score1(char a[20]) //成绩1
{
int i;
for(i=0;i<10;i++)
if(strcmp(s[i].name,a)==0)
return s[i].score1;
}
float score2(char a[20]) //成绩2
{
int i;
for(i=0;i<10;i++)
if(strcmp(s[i].name,a)==0)
return s[i].score2;
}
float score3(char a[20]) //成绩3
{
int i;
for(i=0;i<10;i++)
if(strcmp(s[i].name,a)==0)
return s[i].score3;
}
int sex(char a[20]) //性别
{
int i;
for(i=0;i<10;i++)
if(strcmp(s[i].name,a)==0)
return i;
}
void display() /*显示数据函数*/
{
int i;
char m[20],as;
do
{
printf("\t\t\t学生信息列表\n");
printf("\t学号\t姓名\t性别\t成绩1\t成绩2\t成绩3\n");
for(i=0;i<now_no&&s[i].name[0];i++)
printf("\t%d\t%s\t%s\t%.2f\t%.2f\t%.2f\t%.2f\n",num(m),m,s[sex(m)].sex,score1(m),score2(m),score3(m));
}
while(!as);
}
void chaxinxi()
{
char m[20];
printf("请输入想要查询的学生姓名:");
scanf("%s",m);
printf("学号:%d\n姓名:%s\n性别:%s\n成绩1:%.2f\n成绩2:%.2f\n成绩3:%.2f\n",num(m),m,s[sex(m)].sex,score1(m),score2(m),score3(m));
}
void del() /*删除数据函数*/
{
int k,i;
printf("输入要删除学生的编号:");
scanf("%d",&k);
for(i=0; i<now_no; i++)
{
if(s[i].no==k)
{
if(i==now_no) now_no-=1;
else
{
s[i]=s[now_no-1];
now_no-=1;
}
break;
}
}
}
void menu()
{
printf("--------------欢迎进入学生信息管理系统--------------\n\n\n");
printf("1.录入学生信息\n");
printf("2.学生信息列表\n");
printf("3.删学生信息\n");
printf("4.查询学生成绩\n");
printf("5.退出\n\n\n");
printf("----------------------------------------------------\n\n\n");
printf("请输入您要执行的项目:");
}
int main() //主函数
{
int x,i;
for(i=0;i<10;i++)
{
menu();
scanf("%d",&x);
switch(x)
{
case 1:input();break;
case 2:display();break;
case 3:del();break;
case 4:chazhaoren();break;
case 5:exit(0);
default:printf("无此数字!\n");
}
}
}