标题:求牛人变C++程序 为C语言
只看楼主
jokerskill
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:392
专家分:554
注 册:2012-3-4
得分:0 
这好像是穷举算法????????
2012-06-21 20:52
雪狼MJ
Rank: 8Rank: 8
来 自:甘肃
等 级:蝙蝠侠
威 望:4
帖 子:267
专家分:853
注 册:2012-5-27
得分:0 
大哥啊,你的牛代码可真牛啊。。。。。

Edsger Dijkstra:算法+数据结构=程序
2012-06-21 20:52
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
得分:0 
jokerskill,我忍你很久了。如果你再发这种垃圾上来我见一次删一次。

重剑无锋,大巧不工
2012-06-21 22:22
jokerskill
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:392
专家分:554
注 册:2012-3-4
得分:0 
垃圾????你在挖鼻屎吗????
2012-06-22 17:18
jokerskill
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:392
专家分:554
注 册:2012-3-4
得分:0 
垃圾????你在挖鼻屎吗????
2012-06-22 17:48
墨本无非
Rank: 1
等 级:新手上路
帖 子:11
专家分:7
注 册:2012-6-20
得分:0 
回复 3楼 beyondyf
其实上次发错了, 这不是原来的C++程序 。我自己改了很长时间,然后给改砸了……万般无奈之下想到了求助,就稀里糊涂的发上来了。这是原先的程序,求大佬不吝赐教,给修改一下,感激万分,真的谢谢啦!
综合练习题:
给定一个班的学生(假定30人)学号(number)、姓名(name)、成绩(score),存入数组(stud)。
⑴    根据学生学号进行排序;
⑵    键盘输入一个学生名字,进行查找。若找到,将其学号、姓名、成绩输出。若没找到,输出“查无此人”;
⑶    求平均成绩,并将全班高于平均成绩的成员输出(学号、姓名、成绩)。
⑷    要求前三项,都是用函数实现。

#include<iostream>
#include<string>
#include<iomanip>
using namespace std;
int const N=3;
void main()
{
    void sort(int *,string[],int*);
    void find(string,int *,string [],int*);
    void average(int *,string [],int *);
    int i;
   int num[N],score[N];
    string name[N],somebody;
    cout<<"Please input data:"<<endl;
    for(i=0;i<N;i++)         //输入N个数据
    {
        cin>>num[i];
     cin>>name[i];
        cin>>score[i];
    }

   sort(num,name,score);
    for(i=0;i<N;i++)
    {
        cout<<num[i]<<setw(7);
        cout<<name[i]<<setw(7);
        cout<<score[i]<<endl;
    }
    cout<<"Please input a name:"<<endl;
    cin>>somebody;
    find(somebody,num,name,score);
   average(num,name,score);
}

void sort(int *nu,string na[],int *sc )//排序
{
    int i,j,num_temp,score_temp;
    string name_temp;

    for(i=0;i<N-1;i++)           
        for(j=i+1;j<N;j++)
        if(nu[i]<nu[j])
        {
            num_temp=nu[i];
            nu[i]=nu[j];
            nu[j]=num_temp;
            score_temp=sc[j];
            sc[j]=sc[i];
            sc[i]=score_temp;
            name_temp=na[i];
            na[i]=na[j];
            na[j]=name_temp;
        }
}

void find(string one,int *num,string name[],int *score)//查找
{
    bool flag=false;
    for(int i=0;i<N;i++)
        if(one==name[i])
        {
        flag=true;
        cout<<num[i]<<setw(7);
        cout<<name[i]<<setw(7);
        cout<<score[i]<<endl;
        }
    if(!flag)
        cout<<"No such people"<<endl;
}
void average(int *num,string name[],int *score)
//求平均值,输出高于平均的
{
    int i,sum=0;
    float ave;
    for(i=0;i<N;i++)
        sum+=score[i];
    ave=(float)sum/N;
    cout<<"Average="<<ave<<endl;
    cout<<"Above the average:"<<endl;
    for(i=0;i<N;i++)
        if(score[i]>ave)
        {
            cout<<num[i]<<setw(7);
            cout<<name[i]<<setw(7);
           cout<<score[i]<<endl;
        }
}


2012-06-24 13:06
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
得分:0 
回复 16楼 墨本无非
不太想干这种体力活。另开个帖子,30分帮你改好。

如果同意这个交易就再回答我一个问题。

你是只想在原程序的数据结构和逻辑上改呢,还是可以换一套逻辑只要实现原程序的功能就行?

我对你贴的代码不太满意,如果只想实现这个功能我可以给你重写一个。


[ 本帖最后由 beyondyf 于 2012-6-24 20:56 编辑 ]

重剑无锋,大巧不工
2012-06-24 20:49
墨本无非
Rank: 1
等 级:新手上路
帖 子:11
专家分:7
注 册:2012-6-20
得分:0 
回复 17楼 beyondyf
帖子已经新开 实现功能即可
2012-06-25 14:00



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




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

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