题目1:
从键盘上输入两个正整数,并输入一个四则运算符号:+ - * / ,进行相应运算并输出它们的结果。
例:
(1)输入:2,3,+ 输出:2+3=5
(2)输入:3,2,- 输出:3-2=1
(3)输入:3,4,* 输出:3*4=12
(4)输入:6,2,/ 输出:6/2=3

方法1(if else 语句):

#include<stdio.h>
int main()
{   int a,b,c;char ch;scanf("%d,%d,%c",&a,&b,&ch);if (ch=='+'){c=a+b;}else if(ch=='-'){c=a-b;}else if(ch=='*'){c=a*b;}else if(ch=='/'){c=a/b;}printf("%d%c%d=%d",a,ch,b,c);return 0;
}

方法2(switch语句):

#include<stdio.h>
int main()
{   int a,b,c;char ch;scanf("%d,%d,%c",&a,&b,&ch);switch(ch)//整型变量 字符型变量 枚举变量 {case '+': c=a+b;break;case '-': c=a-b;break;case '*': c=a*b;break;case '/': c=a/b;break;//最后一个break可写可不写}printf("%d%c%d=%d",a,ch,b,c);return 0;
}

题目2:
企业发放的奖金根据利润提成。
(1)利润I低于或等于10万元时,奖金可提成10% ;
(2)利润高于10万元,低于20万元(100000<I≤200000)时,其中10万元按10%提成,高于10万元的部分,可提成7.5% ;
(3)200000<I≤400000时,其中20万元仍按上述办法提成(下同),高于20万元的部分按5%提成;
(4)400000<I≤600000时,高于40万元的部分按3%提成;
(5)600000〈I≤1000000时,高于60万的部分按1.5%提成;
(6)I>1000000时,超过100万元的部分按1%提成。
从键盘输入当月利润I(单位为万元),求应发放奖金总数(保留4位小数)。
数据类型选择double。

例:
(1)输入:10 输出:profit=10.0000,bonus=1.0000
(2)输入:15 输出:profit=15.0000,bonus=1.3750
(3)输入:30 输出:profit=30.0000,bonus=2.2500
(4)输入:50 输出:profit=50.0000,bonus=3.0500
(5)输入:90 输出:profit=90.0000,bonus=3.8000
(6)输入:100 输出:profit=100.0000,bonus=3.9500
(7)输入:200 输出:profit=200.0000,bonus=4.9500

方法1(switch语句):

#define _CRT_SECURE_NO_WARNINGS 1//在vs环境下使用scanf需要写
#include<stdio.h>
int main()
{double i = 0, b = 0;scanf("%lf", &i);int ch = i / 10;switch (ch){case 0:{b = i * 0.1; printf("profit=%.4lf,bonus=%.4lf", i, b); break;}case 1:{b = 10 * 0.1 + (i - 10)*0.075;printf("profit=%.4lf,bonus=%.4lf", i, b); break;}case 2:case 3: { b = 10 * 0.1 + 10 * 0.075 + (i - 20) * 0.05;printf("profit=%.4lf,bonus=%.4lf", i, b); break; }case 4:case 5: { b = 10 * 0.1 + 10 * 0.075 + 20 * 0.05 + (i - 40) * 0.03;printf("profit=%.4lf,bonus=%.4lf", i, b); break; }case 6:case 7:case 8:case 9: { b = 10 * 0.1 + 10 * 0.075 + 20 * 0.05 + 20 * 0.03 + (i - 60) * 0.015;printf("profit=%.4lf,bonus=%.4lf", i, b); break; }case 10: { b = 10 * 0.1 + 10 * 0.075 + 20 * 0.05 + 20 * 0.03 + 40 * 0.015 + (i - 100) * 0.01;printf("profit=%.4lf,bonus=%.4lf", i, b); break; }default: { b = 10 * 0.1 + 10 * 0.075 + 20 * 0.05 + 20 * 0.03 + 40 * 0.015 + (i - 100) * 0.01;printf("profit=%.4lf,bonus=%.4lf", i, b); break; }}return 0;
}

方法2(if else 语句):

#include<stdio.h>
int main()
{double i = 0,b=0;scanf("%lf", &i);if (i <= 100000)b = i * 0.1;else if (i > 100000 && i <= 200000)b = 100000 * 0.1 + (i - 100000) * 0.075;else if (i > 200000 && i <= 400000)b = 100000 * 0.1 + 100000 * 0.075 + (i - 200000) * 0.05;else if (i > 400000 && i <= 600000)b = 100000 * 0.1 + 100000 * 0.075 + 200000 * 0.05 + (i - 400000) * 0.03;else if (i > 600000 && i <= 1000000)b = 100000 * 0.1 + 100000 * 0.075 + 200000 * 0.05 + 200000 * 0.03 + (i - 600000) * 0.015;elseb = 100000 * 0.1 + 100000 * 0.075 + 200000 * 0.05 + 200000 * 0.03 + 400000 * 0.015+(i-1000000)*0.01;printf("profit=%.2lf,bonus=%.2lf", i, b);return 0;
}

题目3:
给出一百分制成绩,要求输出成绩等级:
(1)90分以上为A
(2)80~89分为B
(3)70~79分为C
(4)60~69分为D
(5)60分以下为E

例:
(1)输入:100 输出:grade=A
(2)输入:93 输出:grade=A
(3)输入:81 输出:grade=B
(4)输入:70 输出:grade=C
(5)输入:69 输出:grade=D
(6)输入:33 输出:grade=E

#include<stdio.h>
int main()
{int score;scanf("%d",&score);switch(score/10){case 10 :case 9 : printf("grade=A");break;case 8 : printf("grade=B");break;case 7 : printf("grade=C");break;case 6 : printf("grade=D");break;default : printf("grade=E");break;}return 0;
}

switch语句练习相关推荐

  1. Go 学习笔记(62)— Go 中 switch 语句中的 switch 表达式和 case 表达式之间的关系

    switch 语句对 switch 表达式的结果类型,以及各个 case 表达式中子表达式的结果类型都是有要求的. 毕竟,在 Go 语言中,只有类型相同的值之间才有可能被允许进行判等操作. 1. sw ...

  2. C#中switch语句注意

    大家肯定对switch语句并不陌生,它能够让程序根据控制表达式的值,从多个动作中作出选择(从逻辑过程看,和多分支语句if-else有些相似).在C++和java中也有这一语句,不过在C#中,这一语句则 ...

  3. c语言switch不允许实型,C语言中switch语句什么意思

    Switch在C语言中是保留字,其作用是进行判断选择.switch(开关语句)常和case break default一起使用. Switch用在编程中,如C语言中它经常跟Case一起使用,是一个判断 ...

  4. switch的case使用数组C语言,使用常量数组的元素作为switch语句中的case

    我正在尝试将一组按键映射到一组命令.因为我处理来自多个地方的命令,所以我想在键和命令之间设置一个抽象层,这样如果我更改底层键映射,我就不必更改很多代码.我目前的尝试看起来像这样: // input.h ...

  5. switch语句中在case块里声明变量会遇到提示“Expected expression before...的问题

    switch语句中在case块里声明变量会遇到提示"Expected expression before..."的问题 例如在如下代码中 1 case constant: 2 in ...

  6. JavaScript Switch 语句

    avaScript Switch 语句 如果希望选择执行若干代码块中的一个,你可以使用 switch 语句: 语法: switch(n){case 1:执行代码块 1breakcase 2:执行代码块 ...

  7. 我去,你写的 switch 语句也太老土了吧

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 昨天早上通过远程的方式 review 了两名新来同事的代码,大部分 ...

  8. 你真的懂switch吗?聊聊switch语句中的块级作用域

      最近在代码中不小心不规范的,在switch里面定义了块级变量,导致页面在某些浏览器中出错,本文讨论以下switch语句中的块级作用域. switch语句中的块级作用域 switch语句中的块级作用 ...

  9. c#switch语句判断成绩_Go的条件判断语句

    现实时间中,我们如果想去购物,可以选择网上或者线下去购物,甚至说,要购买的物品都有许多选择,选价格便宜的,选质量好的,选不用运费等等 那么在计算机语言中,我们要怎么实现现实中,这些选择呢? Go语言支 ...

  10. R语言switch语句语法、实战:Switch语句用来处理嵌套的if else处理起来比较困难或者麻烦的条件判断问题

    R语言switch语句语法.实战:Switch语句用来处理嵌套的if else处理起来比较困难或者麻烦的条件判断问题 目录

最新文章

  1. 单目和双目模式识别---游戏控制
  2. 单元测试(Android)_JUnit
  3. MySQL高级-索引是个什么东西?explain到底怎么用-MySQL查询优化大全
  4. 37款机型升级鸿蒙系统,华为终于想通,为鸿蒙系统敞开大门,37款机型将同步升级...
  5. mySQL日期函数并运行_mysql日期相关的函数
  6. 美国团购网站Groupon的盈利模式
  7. editor.md 实现拖拽剪切复制粘贴上传图片,文件插件
  8. js 取小数整数部分
  9. ghost系统优化、精简、封装,光盘制作所有工具下载!!!
  10. cmake设置了CMAKE_MODULE_PATH,include找不到文件
  11. Linux 进程间通信 无名管道(pipe)
  12. vsCode编写Latex文本( texlive +vsCode )
  13. ncbi下载数据sra和转换fastq流程
  14. 五子棋等级考试软件的开发(三)
  15. 计算机快捷键 f6,联想g510笔记本触摸板无法使用快捷键f6关闭?
  16. 计算机启动方式如何选择USB启动,如何设置电脑从usb启动详细方法
  17. JDBC连接报错:Client does not support authentication protocol requested by server; consider upgrading MyS
  18. 上海数据交易中心交易系统开放
  19. 那就这样,先结个尾吧
  20. 美国企业邮箱怎么注册,有没有可替代国外邮箱的国内邮箱?

热门文章

  1. ipad手写笔什么牌子好?性价比高的ipad手写笔排行
  2. 小程序源码:AI智能配音助手-多玩法安装简单
  3. BMZCTF 栅栏密码
  4. 关于《Python 从入门到实践》Django 创建学习主页 网站响应出现“Template-loader postmortem”的解决方法
  5. for循环的遍历的三种方式
  6. error: ‘CV_RGB2GRAY’ was not declared in this scope 的解决方法
  7. 科大讯飞离线命令词的使用
  8. matlab r53,【GE逻辑测试面试题】面试问题:4. MIZ7… - 看准网
  9. 中国剩余定理又叫孙子定理
  10. 【通知】CSDN学院:<华为流程体系课程> 正式上线啦!