标题:求助,一个简单的学生成绩查询程序!!不知道错在哪??
只看楼主
猎刃
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-9-1
 问题点数:0 回复次数:3 
求助,一个简单的学生成绩查询程序!!不知道错在哪??

#include<stdio.h>
#include<string.h>
void chaxun();
void input();
struct student
{
char name[15];
int score;

};

struct student std[5];
void input()
{

int i;
printf("\t请输入信息\n");
printf("========================\n");
for(i=0;i<5;i++)
{
printf("\n学员%d的信息\n",i+1);
printf("姓名:");
fflush(stdin);
gets(std[i].name);
printf("成绩:");
scanf("%d",&std[i].score);
}

}

void chaxun()
{
int i,k=0;
char name2[15];
printf("\n输入要查找的姓名:\n");
fflush(stdin);
gets(name2);

for(i=0;i<5;i++)
{
if(std[i].name==name2)
{
k=1;
break;

}
}
printf("查询后的结果:\n");
if(k==1)
{
printf("\n%s:%d\n",std[i].name,std[i].score);
}
}

void main()
{
input();
chaxun();
}




不知道错在何处,请大侠们帮着看看,该如何改?谢谢!!!

搜索更多相关主题的帖子: 学生 查询 
2007-09-01 18:23
crys_chyf
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2007-5-20
得分:0 
以下是引用猎刃在2007-9-1 18:23:45的发言:

#include<stdio.h>
#include<string.h>
void chaxun();
void input();
struct student
{
char name[15];
int score;

};

struct student std[5];
void input()
{

int i;
printf("\t请输入信息\n");
printf("========================\n");
for(i=0;i<5;i++)
{
printf("\n学员%d的信息\n",i+1);
printf("姓名:");
fflush(stdin);
gets(std[i].name);
printf("成绩:");
scanf("%d",&std[i].score);
}

}

void chaxun()
{
int i,k=0;
char name2[15];
printf("\n输入要查找的姓名:\n");
fflush(stdin);
gets(name2);

for(i=0;i<5;i++)
{
if(std[i].name==name2)这是比较两个地址,不是比较字符串的内容
{
k=1;
break;

}
}
printf("查询后的结果:\n");
if(k==1)
{
printf("\n%s:%d\n",std[i].name,std[i].score);
}
}

void main()
{
input();
chaxun();
}




不知道错在何处,请大侠们帮着看看,该如何改?谢谢!!!


2007-09-01 18:59
peswe
Rank: 1
等 级:新手上路
帖 子:197
专家分:0
注 册:2006-11-22
得分:0 

#include<stdio.h>
#include<string.h>
void chaxun();
void input();
struct student
{
char name[15];
int score;

};

struct student std[5];
void input()
{

int i;
printf("\t请输入信息\n");
printf("========================\n");
for(i=0;i<5;i++)
{
printf("\n学员%d的信息\n",i+1);
printf("姓名:");
fflush(stdin);
gets(std[i].name);
printf("成绩:");
scanf("%d",&std[i].score);
}

}

void chaxun()
{
int i,k=0;
char name2[15];
printf("\n输入要查找的姓名:\n");
fflush(stdin);
gets(name2);

for(i=0;i<5;i++)
{
if(strcmp(std[i].name,name2)==0)//这里用strcmp()函数就可以了!~
{
k=1;
break;

}
}
printf("查询后的结果:\n");
if(k==1)
{
printf("\n%s:%d\n",std[i].name,std[i].score);
}
}

void main()
{
input();
chaxun();
}


C斗士~~~fighting!!!!
2007-09-02 15:33
猎刃
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-9-1
得分:0 
谢谢,我试试!
2007-09-02 17:31



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




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

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