2.选择结构程序设计

三个数找最大值:

题目描述
有三个整数a b c,由键盘输入,输出其中的最大的数。

输入格式
一行数组,分别为a b c

输出格式
a b c其中最大的数

样例输入
10 20 30

样例输出
30

#include <stdio.h>
int main()
{
    int a, b, c;
    int maxnum;
    scanf("%d%d%d", &a, &b, &c);
    if(a > b) maxnum = a;
    if(maxnum < c) maxnum = c;
    printf("%d", maxnum);
    return 0;
}

分段函数求值

题目描述
有一个函数
y={  x      x<1
    |  2x-1   1<=x<10
    { 3x-11  x>=10

写一段程序,输入x,输出y

输入格式
一个数x

输出格式
一个数y

样例输入
14
样例输出
31

#include <stdio.h>
int main()
{
    int x, y;
    scanf("%d", &x);
    if(x < 1) y = x;
    else if(x >= 1 && x < 10) y = 2 * x - 1;
    else y = 3 * x - 11;
    printf("%d", y);
    return 0;
}

成绩评定:

题目描述
给出一百分制成绩,要求输出成绩等级‘A’、‘B’、‘C’、‘D’、‘E’。 90分以及90分以上为A,80-89分为B,70-79分为C,60-69分为D,60分以下为E。
输入格式
一个整数0-100以内
输出格式
一个字符,表示成绩等级
样例输入
90
样例输出
A

#include<stdio.h>
int main()
{
    int score;
    scanf("%d", &score);
    if(score > 100 || score < 0) printf("输入错误");
    else{
        if(score >= 90) printf("A");
        else if(score >= 80 && score <= 89) printf("B");
        else if(score >= 70 && score <= 79) printf("C");
        else if(score >= 60 && score <= 69) printf("D");
        else printf("E");
    }
    return 0;
}

数字的处理和判断

题目描述
给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
输入格式
一个不大于5位的数字
输出格式
三行 第一行 位数 第二行 用空格分开的每个数字,注意最后一个数字后没有空格 第三行 按逆序输出这个数
样例输入
12345
样例输出
5
1 2 3 4 5
54321

#include<stdio.h>
#include <string.h>
int main()
{
    char str[100];
    scanf("%s", str);
    int len = strlen(str);
    printf("%d\n", len);
    for(int i = 0; i < len; i ++) printf("%c ", str[i]);
    printf("\n");
    for(int i = len - 1; i >= 0; i --) printf("%c", str[i]);
    return 0;
}

利润计算

题目描述
企业发放的奖金根据利润I提成。

利润I低于或等于100000元的,奖金可提10%;
利润高于100000元,低于或等于200000元(100000<I≤200000)时,低于等于100000元部分按10%提成,高于100000元的部分,可提成 7.5%;
200000<I≤400000时,低于200000元部分仍按上述办法提成(下同),高于200000元的部分按5%提成;
400000<I≤600000元时,高于400000元的部分按3%提成;

600000<I≤1000000时,高于600000元的部分按1.5%提成;
I>1000000时,超过1000000元的部分按1%提成。

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

输入格式
一个整数,当月利润。

输出格式
一个整数,奖金。

样例输入
900
样例输出
90

#include<stdio.h>
int main()
{
    int s, res, base;
    scanf("%d", &s);
    base = 0;
    if(s <= 100000) {
        res = s * 0.1;
    }
    else if(s <= 200000){
        base = 100000 * 0.1;
        res = base + (s - 100000) * 0.075;
    }
    else if(s <= 400000){
        base =100000 * 0.1 + 100000 * 0.075;
        res = base + (s - 200000) * 0.05;
    }
    else if(s <= 600000){
        base = 100000 * 0.1 + 100000 * 0.075 + 200000 * 0.05;
        res = base + (s - 400000) * 0.03;
         
    }
    else if(s <= 1000000){
        base = 100000 * 0.1 + 100000 * 0.075 + 200000 * 0.05+ 200000 * 0.03;
        res =  base + (s - 600000) * 0.015;
         
    }
    else {
        base = 100000 * 0.1 + 100000 * 0.075 + 200000 * 0.05+ 200000 * 0.03+ 400000 * 0.015;
        res = 100000 * 0.1 + 100000 * 0.075 + 200000 * 0.05+ 200000 * 0.03+ 400000 * 0.015 + (s - 1000000) * 0.01;
    }
    printf("%d", res);
    return 0;
}
posted @ 2024-10-10 12:54  ericf  阅读(27)  评论(0)    收藏  举报