我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

本页主题: 急,求达人! 显示签名 | 打印 | 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题

爆炸钩



性别: 帅哥 状态: 该用户目前不在线
等级: 人见人爱
发贴: 3221
威望: 0
浮云: 1113
在线等级:
注册时间: 2006-12-06
最后登陆: 2009-09-07

5come5帮你背单词 [ sorrow /'sorəu/ n. 悲伤,忧愁 ]


急,求达人!

表弟现在正在考c语言
题目:给出n个学生的mgate课程的考试成绩信息,每条信息由姓名、课程代号与分数组成,要求设计算法:
(1)输入每个人的各gate课程的成绩,计算每人的平均成绩;
(2)按平均成绩的高低次序,打印出出个人的名次,平均成绩相同的为同一名次;
(3)按名次列出每个学生的姓名和各科成绩;
〔基本要求〕 学生的考试成绩必须通过键盘输入,且需对输出进行格式控制;
〔算法提示〕可以用选择排序、冒泡排序等多种排序算法求解;
表弟写了一个,可是有问题,他发给我让我修改哈,可我学c语言那是大一时候的
求达人蝈蝈指点:
#include <stdio.h>

struct CStu
{
char m_strName[20];//姓名
double m_dbEnglish; //英语成绩
double m_dbMath; //数学成绩
double m_dbChinese; //语文成绩
double m_dbAvg; //平均成绩
int m_nPlace; //名次
};

int k = 0;
int m = 1;
const int COUNT = 3;
CStu g_strStu[COUNT];


//求平均成绩
double computeAvg(CStu stu)
{
double dbAvg = (stu.m_dbEnglish+stu.m_dbMath+stu.m_dbChinese)/3.0;
return dbAvg;
}

//录入学生成绩
double AddStu()
{
CStu stu;


printf("请输入学生姓名:");
scanf("%s", stu.m_strName);

printf("请输入英语成绩:");
scanf("%lf", &stu.m_dbEnglish);

printf("请输入数学成绩:");
scanf("%lf", &stu.m_dbMath);

printf("请输入语文成绩:");
scanf("%lf", &stu.m_dbChinese);
stu.m_nPlace = 1;
stu.m_dbAvg = computeAvg(stu);
g_strStu[k++] = stu;

return stu.m_dbAvg;
}

//排名
void OrderByScore()
{
double dbTemp = g_strStu[0].m_dbAvg;

for(int i = 0; i < COUNT; i++)
{
for(int j = 0; j < COUNT - i - 1; j++)
{
if(g_strStu[j].m_dbAvg < g_strStu[j+1].m_dbAvg)
{
CStu stuTemp = g_strStu[j];
g_strStu[j] = g_strStu[j + 1];
g_strStu[j + 1] = stuTemp;
}
}
}

for(i = 0; i < COUNT - 1; i++)
{

if(g_strStu.m_dbAvg > g_strStu[i+1].m_dbAvg)
{
g_strStu.m_nPlace = m++;
}
else
{
g_strStu.m_nPlace = m;
}
}

g_strStu[COUNT - 1].m_nPlace = m;

}

//按排名显示
void show()
{
OrderByScore();
printf("学生成绩排名");
for(int i = 0; i < COUNT; i++)
{
printf("\n%d %s %lf %lf %lf\n",g_strStu.m_nPlace,g_strStu.m_strName,g_strStu.m_dbEnglish,
g_strStu.m_dbMath,g_strStu.m_dbChinese);
}
}

void main(void)
{
for(int i = 0; i < COUNT; i++)
{
printf("该学生平均是:%lf\n", AddStu());
}

show();
}
顶端 Posted: 2007-07-10 14:37 | [楼 主]
爆炸钩



性别: 帅哥 状态: 该用户目前不在线
等级: 人见人爱
发贴: 3221
威望: 0
浮云: 1113
在线等级:
注册时间: 2006-12-06
最后登陆: 2009-09-07

5come5帮你背单词 [ lift /lift/ v. 提升,抬起,举起,(尤指云、雾)消散;n. 举起,升起,搭便车,电梯 ]


达人蝈蝈在哪啊?
快快现身吧!
阿弥陀佛!
顶端 Posted: 2007-07-10 14:59 | [1 楼]
百年孤独



性别: 帅哥 状态: 该用户目前不在线
头衔: 孤独是我的宿命
等级: 荣誉会员
家族: 考研俱乐部
发贴: 3774
威望: 3
浮云: 377
在线等级:
注册时间: 2006-10-14
最后登陆: 2011-03-03

5come5帮你背单词 [ jet /d3əet/ n. 喷气发动机,喷气式飞机,喷射,射流,喷口,喷嘴;vi. 喷射,喷出 ]


编译了一下,报的错太多了

+++++++++++
$ gcc temp.c -o temp.o
temp.c:16: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘g_strStu’
temp.c:20: error: expected ‘)’ before ‘stu’
temp.c: In function ‘AddStu’:
temp.c:29: error: ‘CStu’ undeclared (first use in this function)
temp.c:29: error: (Each undeclared identifier is reported only once
temp.c:29: error: for each function it appears in.)
temp.c:29: error: expected ‘;’ before ‘stu’
temp.c:33: error: ‘stu’ undeclared (first use in this function)
temp.c:45: error: ‘g_strStu’ undeclared (first use in this function)
temp.c: In function ‘OrderByScore’:
temp.c:53: error: ‘g_strStu’ undeclared (first use in this function)
temp.c:55: error: ‘for’ loop initial declaration used outside C99 mode
temp.c:57: error: ‘for’ loop initial declaration used outside C99 mode
temp.c:61: error: ‘CStu’ undeclared (first use in this function)
temp.c:61: error: expected ‘;’ before ‘stuTemp’
temp.c:63: error: ‘stuTemp’ undeclared (first use in this function)
temp.c: In function ‘show’:
temp.c:90: error: ‘for’ loop initial declaration used outside C99 mode
temp.c:92: error: ‘g_strStu’ undeclared (first use in this function)
temp.c: In function ‘main’:
temp.c:99: error: ‘for’ loop initial declaration used outside C99 mode
temp.c:98: warning: return type of ‘main’ is not ‘int’
+++++++++++

要改的地方很多,而偏偏又把C忘了差不多,改是来不及了。
顶端 Posted: 2007-07-10 15:42 | [2 楼]
我来我网·5come5 Forum » 程序员之家

Total 0.007448(s) query 5, Time now is:11-23 15:42, Gzip enabled
Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号