萌新写题第八天

代码总能更优化,本文仅供参考!

1、(数据输入输出)在C语言中是区分大小写的,利用ASCII码中大写字母和小写字母之间差值为32的特性,可以将小写字母转换为大写字母。在小写字母的基础上减去32,就得到了大写字母。运行程序,终端输入一个小写字母,按ENTER键,程序即可将该字母转换为大写字母,并输出大写字母的ASCII码值。

代码:

#include<stdio.h>

int main(){
    char a_a, a_b;
    for(int i = 0; i < 1; i++){
        printf("请输入一个小写字母:");
        scanf("%c", &a_a);
        if(a_a < 'a' || a_a > 'z'){
            printf("请重新输入!\n");
            i--;
            continue;
        }
        else{
            a_b = a_a - 32;
            printf("%c = %d\n", a_b, a_b);
        }
    }
}

运行结果:

2、(分支结构)编写一个程序,要求从键盘上输入某个学生的四科成绩,求出该学生的最高分和最低分。(90)

代码:

#include<stdio.h>

int main(){
    float a[4];
    for(int i = 0; i < 4; i++){
        printf("请输入学生的成绩:");
        scanf("%f", &a[i]);
    }

    float temp = a[0];
    for(int j = 0; j < 4; j++){
        for(int k = 0; k < 3; k++){
            if(a[k] > a[k + 1]){
                temp = a[k];
                a[k] = a[k + 1];
                a[k + 1] = temp; 
            }
        }
    }
    printf("最低分为:%f,最高分为:%f\n", a[0], a[3]);
}

运行结果:

3、(分支结构)已知某公司员工的工资底薪为500元,员工销售的软件金额与提成方式如下:

销售额<=2000              没有提成

2000<销售额<=5000         提成8%

5000<销售额<=10000        提成10%

销售额>10000              提成12%

利用switch 语句编写程序,求员工的工资。

代码:

#include<stdio.h>

int main(){
    int a, b;
    double zixin;
    printf("请输入销售的软件金额:");
    scanf("%d", &a);
    if(a <= 2000)
      b = 1;
    else if(a <= 5000 && a >2000)
      b = 2;
    else if(a <= 10000 && a > 5000)
      b = 3;
    else
      b = 4;
    switch(b){
        case 1:
          {
            zixin = 500; break;
          }
        case 2:
          {
            zixin = 500 + a*0.08; break;
          }
        case 3: zixin = 500 + a * 0.1; break;
        default: zixin = 500 + a * 0.12;
    }
    printf("员工的工资为:%f元!\n", zixin);

}

运行结果:

4、(分支结构)变成要求输入整数a和b,若a的平方加b的平方结果大于100,则输出a平方加b平方的值,否则输出a+b的结果(90)

代码:

#include<stdio.h>

int main(){
    int a, b, c;
    printf("请输入a和b的数:");
    scanf("%d %d", &a, &b);
    c = a * a + b * b; 
    if(c >100){
        printf("a的平方加b的平方等于:%d\n",c);
    }
    else{
        printf("a加b等于%d\n",a + b);
    }
}
 

运行结果:

5、(循环)一农户在集市上卖西瓜,他总共有1020个西瓜,第一天卖掉一半多两个,第二天卖掉剩下的一半多两个,问照此规律卖下去,该农户几天能将所有的西瓜卖完。(116)

代码:


#include<stdio.h>

int main(){
    int a, b = 1020, i, j, k;
    for(i = 1; a > 0; i++){
        if(i == 1){
            a = b/2 - 2;
        printf("第%d天剩余%d个西瓜!!!\n", i, a);
        }
        else{
            a = a/2 - 2;
            if(a < 0){
                //i--;
                break;
            }
        printf("第%d天剩余%d个西瓜!!!\n", i, a);
        }
    }
    --i;
    printf("农户%d天可以卖完西瓜!!!\n", i);
}
 

运行结果:

 

 

 

 

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值