嵌入式-2024年7月15日作业

题目:

1.

学生成绩管理:switch-case

从外部输入一个学习成绩,范围为0 – 100,

成绩大于等于90分,则输出A,

成绩大于等于80,则输出B,

成绩大于等于60,则输出C,

小于60,则输出D

2.

企业发放的奖金根据利润提成:

利润低于或等于 10 万元时,奖金可提 10%;

利润高于 10 万元,低于 20 万元时,低于 10 万元的部分按 10% 提成,高于 10 万元的部分,可提成 7.5%

20 万到40 万之间时,高于 20 万元的部分,可 提成 5%

40 万到 60 万之间时高于 40 万元的部分,可提成 3%

60 万到 100 万之间时,高于 60 万元的部分,可提成 1.5%,

高于 100 万元时,超过 100 万元的部分按1% 提成,

从键盘输入当月利润 ,求应发放奖金总数

3.

循环打印以下形状

********

 ********

  ********

   ********

    ********

     ********

4.打印100-1000以内的所有的水仙花数

水仙花数:是指一个三位数的每一位的立方和还等于这个数,则这个数称之为水仙花数

num = 个位数的立方 + 十位数的立方 + 百位数的立方

if(153== 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3)

{

153就是水仙花数

}

解析:

1.

学生成绩管理:switch-case

从外部输入一个学习成绩,范围为0 – 100,

成绩大于等于90分,则输出A,

成绩大于等于80,则输出B,

成绩大于等于60,则输出C,

小于60,则输出D

#include <stdio.h>
int main(int argc, const char *argv[])    
{
    int score; 
    printf("请输入学生成绩(0-100):"); 
 
    scanf("%d",&score); 
    getchar(); 

    if(score<0 || score >100) 
    { 
        printf("输入错误!学生成绩必须在0-100之间。\n"); 
        return 1; 
    } 

    switch(score/10) 
    { 
    case 10: 
    case 9: 
        printf("A\n"); 
        break; 
    case 8: 
        printf("B\n"); 
        break; 
    case 7: 
    case 6: 
        printf("C\n"); 
        break; 
    default: 
        printf("D\n"); 
        break; 
     
    }   
    return 0;
}    
    
                                                     157,

结果:

2.

企业发放的奖金根据利润提成:

利润低于或等于 10 万元时,奖金可提 10%;

利润高于 10 万元,低于 20 万元时,低于 10 万元的部分按 10% 提成,高于 10 万元的部分,可提成 7.5%

20 万到40 万之间时,高于 20 万元的部分,可 提成 5%

40 万到 60 万之间时高于 40 万元的部分,可提成 3%

60 万到 100 万之间时,高于 60 万元的部分,可提成 1.5%,

高于 100 万元时,超过 100 万元的部分按1% 提成,

从键盘输入当月利润 ,求应发放奖金总数

#include <stdio.h>
int main(int argc, const char *argv[])    
{

     double lr,jj;//lr为利润   jj为奖金
     printf("请输入当月的利润:\n");
     scanf("%lf",&lr);

     if(lr <= 10)
     {
         jj = lr * 0.1;
     }else if(lr > 10 && lr <= 20)
     {
         jj  = 10*0.1 + (lr - 10)*0.075;
     }else if(lr > 20 && lr <=40)
     {
         jj = 10*0.1 + 10*0.075 + (lr - 20)*0.05;
     }else if(lr > 40 && lr <= 60)                                          
     {
         jj = 10*0.1 + 10*0.075 + 20*0.05 + (lr-40)*0.03;
     }else if(lr > 60 && lr <= 100)
     {
         jj = 10*0.1 + 10*0.075 + 20*0.05 + 20*0.03 + (lr-60)*0.015;
     }else if(lr>100)
     {
         jj = 10*0.1 + 10*0.075 + 20*0.05+  20*0.03 +40*0.015 +(lr-100)*0.01;
     }



     printf("应发放的奖金为:%.2f万元。\n",jj);

     
    }   
    return 0;
} 

结果为:

3.

循环打印以下形状

********

 ********

  ********

   ********

    ********

     ********

#include <stdio.h>
int main(int argc, const char *argv[])    
{

     int i = 0;
    int j =0;
    for(i=0;i<6;i++)
    {
        for(j=0;j<i;j++)//空格
        {
            putchar(' ');
        }
        for(j=0;j<8;j++)
        {
            putchar('*');//打印*
        }
        putchar('\n');
    }


     
    }   
    return 0;
} 

结果:

4.打印100-1000以内的所有的水仙花数

水仙花数:是指一个三位数的每一位的立方和还等于这个数,则这个数称之为水仙花数

num = 个位数的立方 + 十位数的立方 + 百位数的立方

if(153== 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3)

{

153就是水仙花数

}

#include <stdio.h>
int main(int argc, const char *argv[])    
{
    int number = 100;
    int hundreds,tens,units;
    while (number < 1000)
    {
        hundreds = number / 100;
        tens = (number / 10) % 10;
        units = number % 10;

      // 判断是否为水仙花数
        if (number == (hundreds * hundreds * hundreds) +  (tens * tens * tens) + (units * units * units))  

        {
            printf("%d\n", number);
        }

        number++;
    }


     
    }   
    return 0;
} 

结果:

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值