| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 999 人关注过本帖
标题:又发了个白痴问题,可是对于C语言我就是个白痴,渴望某位大侠提携啊!
只看楼主 加入收藏
qgujinxin
Rank: 1
等 级:新手上路
帖 子:12
专家分:2
注 册:2010-11-23
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:16 
又发了个白痴问题,可是对于C语言我就是个白痴,渴望某位大侠提携啊!
其实原来要求用结构体和指针的,可惜小的学业不精,只鼓捣出这么个东西,还是错的,没脸见人啊,怎奈有些东西不得不会,所以只好发出来请教诸位前辈,还望不吝赐教!!

/*编写一个程序,输入n个学生的学号,姓名,3门课程的成绩,求出总分最高的学生并输出该学生的所有信息*/
#include <stdio.h>
#define size 80

main()
{
    int n,i;
    int studentID[size];
    char studentName[size];
    int scoreComputer[size];
    int scoreEnglish[size];
    int scoreMath[size];
    int sum[size];
    int Max,a;
    printf("please enter the total number:");
    scanf("%d",&n);
    printf("please enter the information of everybody:\n");
    for (i=0;i<n;i++)
    {
        scanf("%d",&studentID);
        scanf("%c",&studentName);
        scanf("%d",&scoreComputer);
        scanf("%d",&scoreEnglish);
        scanf("%d",&scoreMath);
    }
    for (i=0;i<n;i++)
    {
        sum[i]=scoreComputer[i]+scoreEnglish[i]+scoreMath[i];
    }
    Max=sum[0];
    for (i=0;i<n;i++)
    {
        if (sum[i]>Max)
        {
            Max=sum[i];
            a=i;
        }
    }
    printf("ID:%d,Name:%c,Computer:%d,English:%d,Math:%d\n",studentID[a],studentName[a],
        scoreComputer[a],scoreEnglish[a],scoreMath[a]);
}
搜索更多相关主题的帖子: C语言 结构体 姓名 学生 
2010-12-25 10:26
JZY0801
Rank: 2
等 级:论坛游民
帖 子:25
专家分:36
注 册:2010-12-23
收藏
得分:0 
“渴望某位大侠提携” “提携”之意可否理解为“提鞋”?

2010-12-25 10:34
zhaoya881010
Rank: 9Rank: 9Rank: 9
来 自:芒砀古郡
等 级:蜘蛛侠
威 望:1
帖 子:339
专家分:1177
注 册:2010-11-21
收藏
得分:0 
漏洞百出啊楼主

Go Go Go
2010-12-25 10:41
qgujinxin
Rank: 1
等 级:新手上路
帖 子:12
专家分:2
注 册:2010-11-23
收藏
得分:0 
回复 2楼 JZY0801
没有,要提也是我提!
2010-12-25 10:45
qgujinxin
Rank: 1
等 级:新手上路
帖 子:12
专家分:2
注 册:2010-11-23
收藏
得分:0 
回复 3楼 zhaoya881010
那能说一下不?
2010-12-25 10:46
五当家
Rank: 12Rank: 12Rank: 12
等 级:火箭侠
威 望:2
帖 子:1112
专家分:3674
注 册:2010-10-20
收藏
得分:4 
#include <stdio.h>
#define size 80

main()
{
    int n,i;
    int studentID[size];
    char studentName[100][size];        //有改动
    int scoreComputer[size];
    int scoreEnglish[size];
    int scoreMath[size];
    int sum[size];
    int Max,a;
    printf("please enter the total number:");
    scanf("%d",&n);
    printf("please enter the information of everybody:\n");
    for (i=0;i<n;i++)            //这个循环里面都有改动.
    {      
        scanf("%d",&studentID[i]);
        scanf("%s",studentName[i]);
        scanf("%d",&scoreComputer[i]);
        scanf("%d",&scoreEnglish[i]);
        scanf("%d",&scoreMath[i]);
    }
    for (i=0;i<n;i++)
    {
        sum[i]=scoreComputer[i]+scoreEnglish[i]+scoreMath[i];
    }
    Max=sum[0];
    for (i=0;i<n;i++)
    {
        if (sum[i]>Max)
        {
            Max=sum[i];
            a=i;
        }
        else
            a=0;
    }
    printf("ID:%d,Name:%s,Computer:%d,English:%d,Math:%d\n",studentID[a],studentName[a],
        scoreComputer[a],scoreEnglish[a],scoreMath[a]);                //这里也有改动
}

我改的地方你自己看看吧,唉,的确漏洞百出.

经验积累中............
2010-12-25 10:47
zhaoya881010
Rank: 9Rank: 9Rank: 9
来 自:芒砀古郡
等 级:蜘蛛侠
威 望:1
帖 子:339
专家分:1177
注 册:2010-11-21
收藏
得分:6 
程序:
程序代码:
#include <stdio.h>
#define size 80

main()
{
    int n,i;
    int studentID[size];
    char studentName[size];
    int scoreComputer[size];
    int scoreEnglish[size];
    int scoreMath[size];
    int sum[size];
    int Max,a;
    printf("please enter the total number:");
    scanf("%d",&n);
    //  printf("please enter the information of everybody:\n");
    for (i=0;i<n;i++)
    {   
        printf("please enter the informatio of %d sudent\n",i+1);
        printf("studentID:\n");
        scanf("%d",&studentID[i]);
        printf("studentName:\n");
        scanf("%s",&studentName[i]);
        printf("scoreComputer:\n");
        scanf("%d",&scoreComputer[i]);
        printf("scoreEnglish:\n");
        scanf("%d",&scoreEnglish[i]);
        printf("scoreMath:\n");
        scanf("%d",&scoreMath[i]);
    }
    for (i=0;i<n;i++)
    {
        sum[i]=scoreComputer[i]+scoreEnglish[i]+scoreMath[i];
    }
    Max=0;
    for (i=0;i<n;i++)
    {
        if (sum[i]>Max)
        {
            Max=sum[i];
            a=i;
        }
    }
    printf("ID:%d,Name:%s,Computer:%d,English:%d,Math:%d\n",studentID[a],&studentName[a],
        scoreComputer[a],scoreEnglish[a],scoreMath[a]);
} 
结果:
图片附件: 游客没有浏览图片的权限,请 登录注册


Go Go Go
2010-12-25 11:03
zhaoya881010
Rank: 9Rank: 9Rank: 9
来 自:芒砀古郡
等 级:蜘蛛侠
威 望:1
帖 子:339
专家分:1177
注 册:2010-11-21
收藏
得分:0 
回复 6楼 五当家
图片附件: 游客没有浏览图片的权限,请 登录注册

这一句少了一个去地址符吧,vc++会报段错误的

Go Go Go
2010-12-25 11:07
qgujinxin
Rank: 1
等 级:新手上路
帖 子:12
专家分:2
注 册:2010-11-23
收藏
得分:0 
回复 6楼 五当家
大侠,谢谢
2010-12-25 11:15
qgujinxin
Rank: 1
等 级:新手上路
帖 子:12
专家分:2
注 册:2010-11-23
收藏
得分:0 
回复 7楼 zhaoya881010
表示天王就是天王,不同凡响
2010-12-25 11:16
快速回复:又发了个白痴问题,可是对于C语言我就是个白痴,渴望某位大侠提携啊!
数据加载中...
 
   



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

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