@彬-_-|| 2021-03-04 16:28 采纳率: 0%
浏览 70

C语言作业,求大佬相助

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

#define P 100

 struct stuff                //员工数据结构
{
     double  Num[12];
    double  Qsale[4];
    double  Ysale;
    double  Award;
    char    Name[10];
}Player[P];

 struct company             //公司的数据结构:人数,总销售额度,年、季度销售排名
{
    int Member;                         //人数
    long double Tsale;       //公司总销售
    unsigned long Yrank;     //年排名
    unsigned long Qrank[4];     //季度排名
};

int Menu()          //菜单界面
{

    printf("\n\n\n");
    printf("    ***************Management  System***************\n\n");
    printf("                   1.初始化系统                        \n ");
    printf("                   2.员工销售额输入                         \n");
    printf("                   3.数据更改                        \n ");
    printf("                   4.统计                        \n");
    printf("                   5.奖金发放                        \n \n");
    printf("                 *** 请输入您的选项  ***                       ");

    return 0;
}

int add_infor(struct stuff Player[], int n)          //输入员工工号,姓名
{
    int j;
    printf("输入员工人数");
    scanf_s("%d", n);

    for(j=0;j<n;j++)          
    {
        printf("请输入第%d位员工信息", j + 1);
        printf("\n\t\t\t工号:");
        scanf_s("\t\t%d", &Player[n].Num);
        printf("\t\t\t姓名:");
        scanf_s("\t\t%c", &Player[n].Name[10]);
    }

    return n;
}

int qsale(struct stuff Player[], int n)     //员工的季度销售额
{
    int i;
    for (i = 1; i < 5; i++)
    {
    
    printf("\n\t\t\t第%d季度销售额度:", i);
    scanf_s("\t\t%d", &Player[n].Qsale[i]);

    }

}

int re_infor(struct stuff Player[], int n)        //修改员工信息
{
    int option, choice;
    int i = 0,j=0;
    char old_temp[20] = { 0 };
    char new_temp[10] = { 0 };
    float new_score;

    printf("\n\t\t\t1、按工号查找修改\n");
    printf("\t\t\t2、按姓名查找修改\n");
    printf("\n\t\t请输入选项选择功能:");
    scanf_s("%d", &option);

    if (1 == option)
    {
        printf("\n\t\t请输入学号:");
        scanf_s("%d", &old_temp);

        while ((strcmp(Player[i].Num, old_temp) != 0) && i < n)
        {
            i++;
        }

        if (i == n)
        {
            printf("\n\t\t未找到!");
        }
    }

    if (2 == option)
    {
        printf("\n\t\t请输入姓名:");
        scanf_s("%c", &old_temp);

        while ((strcmp(Player[i].Num, old_temp) != 0) && i < n)
        {
            i++;
        }

        if (i == n)
        {
            printf("\n\t\t未找到!");
        }
    }

    printf("\n\t\t待修改学生的信息:\n");
    printf("\n\t\t学号:%d\n\t\t姓名:%c\n\t\t成绩:%3d\n", Player[i].Num, Player[i].Name, Player[i].Qsale);

    printf("\n\t\t请选择要修改的信息(1.学号 2.姓名 3.季度销售额):");
    scanf_s("%d", &choice);

    if (1 == choice)
    {
        printf("\n\t\t输入修改后的学号:");
        scanf_s("%c", &new_temp);

        Player[i].Num == new_temp;
        printf("\t\t修改成功!\n");
    }

    if (2 == choice)
    {
        printf("\n\t\t输入修改后的姓名:");
        scanf_s("%c", &new_temp[10]);
  
        for (j = 0; j < 10; j++)
        {
            Player[i].Name[j] == new_temp[j];
        }
        printf("\t\t修改成功!\n");
    }

    if (3 == choice)
    {
        printf("\n\t\t输入修改第几季度销售额:");
        scanf_s("%d", &j);
        printf("\n\t\t输入修改后的季度销售额:");
        scanf_s("%d", &new_score);

        Player[i].Qsale[j] = new_score;
        printf("\t\t修改成功!\n");
    }
}


int award(struct stuff Player[], int n)   //奖金计算
{
    long double i=0;
    int j;
    for (j = 0; j < 4; j++)    //季度相加计算年销售
    {
        Player[n].Ysale += Player[n].Qsale[j];
    }
        
    i= *&Player[n].Ysale;
    double  bonus;              //正常奖学金        我还没弄出第一!!!!!!!!!!!!!!!

    if (i <= 100000)
        bonus = i * 0.1;
    else if (i <= 15000000)
        bonus = i * 0.11;
    else if (i <= 20000000)
        bonus = i * 0.12;
    else if (i <= 600000)
        bonus = i * 0.13;
    else if (i <= 1000000)
        bonus = i * 0.14;
    else
        bonus = i* 0.15;
    printf("bonus=%d", bonus);
    return bonus;          
}

int main()                 //主函数
{

    int select = 0;//选择
    int n = 0;               //第几个员工

    while (1)
    {
        Menu();

        printf("\t\t输入标号选择功能: ");
        scanf_s("%d", &select);
        switch (select)
        {
        case 1:
            printf("\n\t\t********录入员工信息********\n");
            n=add_infor(&Player[n],n);
            break;
        case 2:
            printf("\n\t\t********输入员工每季度销售额********\n");
            qsale(&Player[n],n);
            break;
        case 3:
            printf("\n\t\t**********修改员工信息**********\n");
            re_infor(&Player[n], n);
            break;
        case 4:
            printf("\n\t\t*********统计全年企业的销售额*********\n");
            n = (Player[n], n);
            break;
        case 5:
            printf("\n\t\t*********统计个人销售额及员工的奖金*********\n");
            award(Player[n].Qsale, n);
            break;
        default:
            printf("\n\n\t\t**********谢谢使用!**********\n");
            exit(0);
            break;
        }

    }
}
 

  • 写回答

2条回答 默认 最新

  • 小白小白你好菜 2021-03-04 17:32
    关注

    问题是啥

    评论

报告相同问题?

悬赏问题

  • ¥15 不同尺寸货物如何寻找合适的包装箱型谱
  • ¥15 求解 yolo算法问题
  • ¥15 虚拟机打包apk出现错误
  • ¥30 最小化遗憾贪心算法上界
  • ¥15 用visual studi code完成html页面
  • ¥15 聚类分析或者python进行数据分析
  • ¥15 三菱伺服电机按启动按钮有使能但不动作
  • ¥15 js,页面2返回页面1时定位进入的设备
  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。