| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 212 人关注过本帖
标题:大佬帮帮忙这个怎么做?
只看楼主 加入收藏
mac9955
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2019-1-4
  问题点数:0  回复次数:1   
大佬帮帮忙这个怎么做?
编写一个控制台程序,完成以下功能:输入若干个职工的年终考核成绩,以负数为结束标志,如果成绩大于100则要求重新输入,直到正确为止;计算一共输入了多少个职工成绩,平均成绩是多少,最高成绩是多少
2019-01-04 22:42
ZJYTY
Rank: 2
等 级:论坛游民
帖 子:23
专家分:99
注 册:2018-12-20
  得分:0 
程序代码:

#if 1

#include <stdio.h>

typedef struct worker
{
    float score;
}WK;

WK wks[100];

void getMes(int &wkNum)
{
    int wkCount = 0;
    printf("职工考核成绩录入:\n");
    do
    {
        printf("num %d score : ",wkCount+1);
        scanf("%f", &(wks[wkCount].score));
        while (!getchar());
        if (wks[wkCount].score > 100.0)
        {
            printf("请输入有效成绩(0-100)\n");
            continue;
        }
        else if (wks[wkCount].score < 0.0)
        {
            wkNum = wkCount;
            printf("共计录入%d人\t", wkNum);
            break;
        }
        else
        {
            ++wkCount;
        }
    } while (1);
}

void get_ave_max(int wknum)
{
    float max = wks[0].score;
    float ave = 0.0;
    float total = 0.0;
    for (int i = 0; i < wknum;++i)
    {
        total += wks[i].score;
        if (max < wks[i].score)
        {
            max = wks[i].score;
        }
    }
    ave = total / wknum;
    printf("ave score : %.3f\tmax score : %.3f\n", ave, max);
}

int main()
{
    int wkNum;
    getMes(wkNum);
    get_ave_max(wkNum);

    getchar();
}
#endif

附件: 您没有浏览附件的权限,请 登录注册

-------------------------------若有不当之处,敬请谅解-------------------------------
2019-01-09 16:46







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

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