| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 959 人关注过本帖
标题:[原创]学生成绩查寻
只看楼主 加入收藏
百丈潭
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-5-7
收藏
 问题点数:0 回复次数:5 
[原创]学生成绩查寻

各位大狭,帮我看看下面的程序有些什么错误,非常感谢!!!!!!!
#include<conio.h>
#include<ctype.h>
#include<process.h>
#include<stdio.h>
#include<string.h>
#define N 5
struct credit
{
int num;
char name[20];
char sex;
float score[3];
float total;
};

void caltotal(struct credit stu[],int n)
{
int i,j;
for(i=0;i<n;i++)
for(j=0;j<3;j++)
stu[i].total+=stu[i].score[j];
}

void sort(struct credit stu[],int n)
{
struct credit temp;
int i,j,k;
for(i=0;i<n;i++)
{
k=i;
for(j=i+1;j<n-1;j++)
if(k!=i)
{
temp=stu[i];stu[i]=stu[k];stu[k]=temp;
}
}
}

void search_xuehao(struct credit stu[],int n)
{
int i,xuehao;
printf("input xuehao:");
scanf("%d",&xuehao);
for(i=0;i<n;i++)
{
if(stu[i].num-xuehao==0)
{
printf("num:%d,name:%s,sex:%c,score1:%d,score2:%d,score3:%d,total:%d",stu[i].num,stu[i].name,stu[i].sex,stu[i].total);
}
}
}

void search_name(struct credit stu[],int n)
{
int i;
char Name[20];
printf("input name:");
scanf("%s",&Name);
for(i=0;i<n;i++)
{
if(strcmp(stu[i].name,Name)==0)
{
printf("num:%d,name:%s,sex:%c,score1:%d,score2:%d,score3:%d,total:%d",stu[i].num,stu[i].name,stu[i].sex,stu[i].total);
}
}
}

void search_total(struct credit stu[],int n)
{
int i;
float fenshu;
printf("zenfengshu:");
scanf("%f",&fenshu);
for(i=0;i<n;i++)
{
if(stu[i].total-fenshu==0)
printf("num:%d,name:%s,sex:%c,score1:%d,score2:%d,score3:%d,total:%d",stu[i].num,stu[i].name,stu[i].sex,stu[i].total);
}
}

void display(struct credit *pstu,int n)
{
int i,j;
printf("pk NO name sex score1 score2 score3 total\n");
for(i=0;i<n;i++)
{
printf("%-2d,%-3d,%-20d,%-3c",i+1,pstu->num,pstu->name,pstu->sex);
for(j=0;j<3;j++)
printf("%-6.1f",pstu->score[j]);
printf("%-6.1f",pstu->total);
}
}

main()
{
static struct credit student[N]={
{10301,"zhan san",'f',{80,82,85},247},
{10302,"li si",'m',{75,90,80},245},
{10303,"wangwu'",'f',{80,90,83},253},
{10304,"sunhua",'f',{78,80,85},243},
{10305,"zhaowei",'m',{83,85,90},258}
};
caltotal(student,N);
sort(student,N);
search_xuehao(student,N);
search_name(student,N);
search_total(student,N);
display(student,N);
getch();
}

搜索更多相关主题的帖子: 查寻 学生 
2006-05-23 17:45
coloar123
Rank: 1
等 级:新手上路
帖 子:111
专家分:0
注 册:2005-1-6
收藏
得分:0 
没错误啊

两耳不闻窗外事,专心只读圣贤书
2006-05-23 18:31
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
收藏
得分:0 

//初战告捷,留几个函数LZ自己调试吧
#include<conio.h>
#include<ctype.h>
#include<process.h>
#include<stdio.h>
#include<string.h>
#define N 5
struct credit
{
int num;
char name[20];
char sex;
float score[3];
float total;
};

void caltotal(struct credit stu[],int n)
{
int i,j;
for(i=0;i<n;i++)
for(j=0;j<3;j++)
stu[i].total+=stu[i].score[j];
}

void sort(struct credit stu[],int n)
{
struct credit temp;
int i,j,k;
for(i=0;i<n;i++)
{
k=i;
for(j=i+1;j<n-1;j++)
if(k!=i)
{
temp=stu[i];stu[i]=stu[k];stu[k]=temp;
}
}
}

void search_xuehao(struct credit stu[],int n)
{
int i,xuehao;
printf("input xuehao:");
scanf("%d",&xuehao);
for(i=0;i<n;i++)
{
if(stu[i].num-xuehao==0)
{
printf("num:%d,name:%s,sex:%c,score1:%d,score2:%d,score3:%d,total:%d",stu[i].num,stu[i].name,stu[i].sex,stu[i].total);
}
}
}

void search_name(struct credit stu[],int n)
{
int i;
char Name[20];
printf("input name:");
scanf("%s",&Name);
for(i=0;i<n;i++)
{
if(strcmp(stu[i].name,Name)==0)
{
printf("num:%d,name:%s,sex:%c,score1:%d,score2:%d,score3:%d,total:%d",stu[i].num,stu[i].name,stu[i].sex,stu[i].total);
}
}
}

void search_total(struct credit stu[],int n)
{
int i;
float fenshu;
printf("zenfengshu:");
scanf("%f",&fenshu);
for(i=0;i<n;i++)
{
if(stu[i].total-fenshu==0)
printf("num:%d,name:%s,sex:%c,score1:%d,score2:%d,score3:%d,total:%d",stu[i].num,stu[i].name,stu[i].sex,stu[i].total);
}
}

void display(struct credit *pstu,int n)
{
int i,j;
printf("pk NO name sex score1 score2 score3 total\n");
for(i=0;i<n;i++,pstu++)////pstu要++
{
// printf("%-2d,%-3d,%-20d,%-3c",i+1,pstu->num,pstu->name,pstu->sex);
printf("%-2d,%-3d,%-10s,%-3c",i+1,pstu->num,pstu->name,pstu->sex);
for(j=0;j<3;j++)
printf("%-6.1f",pstu->score[j]);
printf("%-6.1f",pstu->total);
printf("\n");
}
}

main()
{
static struct credit student[N]={
{10301,"zhan san",'f',{80,82,85},0},//你不要狗捉老鼠,要让caltotal()去算总分
{10302,"li si",'m',{75,90,80},0},
{10303,"wangwu'",'f',{80,90,83},0},
{10304,"sunhua",'f',{78,80,85},0},
{10305,"zhaowei",'m',{83,85,90},0}
};
caltotal(student,N);
sort(student,N);
/*以下3个函数LZ自行解决吧:
search_xuehao(student,N);
search_name(student,N);
search_total(student,N);
*/
display(student,N);
getch();
}


落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-05-23 19:07
my1286
Rank: 1
等 级:新手上路
帖 子:46
专家分:0
注 册:2006-5-15
收藏
得分:0 
struct credit *pstu,这里面的*我不懂,还还没有学呢,不过我认为是不是该再对pstu弄个初值哦,其它好像没有什么问题,

2006-05-23 23:23
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 
百丈潭 这些都是基本操作,仔细对照教材好好看看,应该没什么问题

叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-05-23 23:26
金为床兮银为椅
Rank: 1
等 级:新手上路
帖 子:183
专家分:0
注 册:2006-3-20
收藏
得分:0 
我把你的程序粘贴到我的vc6中按f7,没有错误,只有一个警告,main要有函数类型而且应该有返回值。不知道你用的是什么编译器。

运行的时候出现的结果是输入学号,名字,zongfenshu,然后就是
num:%d,name:%s,sex:%c,score1:%d,score2:%d,score3:%d,total:%d",stu[i].num,stu[i].name,stu[i].sex,stu[i].total
不知道你这是什么意思,是你想要的输出吗?再好好看看。

努力学习C、C++、LINUX、ORACLE、ENGLISH,累死为止。
2006-05-24 08:50
快速回复:[原创]学生成绩查寻
数据加载中...
 
   



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

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