我是靠谱客的博主 唠叨指甲油,这篇文章主要介绍选择结构练习题(if语句、if else语句、switch语句)一、if语句练习二、if else语句练习4.输入一个人的月收入,输出应交的个人所得税,起征点为 5000 元,税率如下:三、switch语句练习,现在分享给大家,希望可以做个参考。

一、if语句练习

1.输入三个整数,按从小到大的顺序输出
思路:if语句冒泡排序3次

复制代码
1
2
3
4
5
6
7
8
9
10
#include<stdio.h> int main(){ int a,b,c,t; scanf("%d%d%d",&a,&b,&c); if(a>b){t=a;a=b;b=t;} if(b>c){t=c;c=b;b=t;} if(a>b){t=a;a=b;b=t;} printf("a=%d,b=%d,c=%d",a,b,c); return 0; }

二、if else语句练习

1.请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。(Monday、Tuesday、Wednesday、Thursday、Friday、Saturday、Sunday)

思路:

1.当输入MWF时,三个首字母无重复,直接输出星期几

2.当输入ST时,继续读入下一个字母,根据下一个字母输出星期几
注意:当需要使用多个输入函数接收字符时需要注意的是:多使用一次getchar()接收回车换行符

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include<stdio.h> int main(){ char c; c=getchar(); getchar(); if(c=='M')printf("星期一"); else if(c=='W')printf("星期三"); else if(c=='F')printf("星期五"); else{ printf("请输入第二个字母:"); char c2=getchar(); getchar(); if(c2=='u')printf(c=='T'?"星期二":"星期天"); else printf(c2=='h'?"星期四":"星期六"); } return 0; }

2.输入图书的定价数量,计算购书金额并输出。其中,图书销售策略为:正常情况下按九折出售,超过10本按八五折出售,超过100本按八折出售。

思路:傻瓜题,注意定价类型和购书金额类型,scanf函数输入时要求严格匹配,double型使用%lf格式,float型使用%f格式

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
#include<stdio.h> int main(){ double p,sp; int n; printf("请输入定价和数量:"); scanf("%lf%d",&p,&n); if(n>100)sp=n*p*0.8; else if(n>10)sp=n*p*0.85; else sp=n*p*0.9; printf("购书金额为:%.2lf",sp); return 0; }

3.从键盘输入某年某月某日,输出这个日期是该年的第几天。

思路:定义数组存储每个月份的天数,从1月累加到当前月份天数。

注意当年份为闰年时设置2月为29天

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include<stdio.h> int main(){ int y,m,d; printf("请依次输入年月日:"); scanf("%d%d%d",&y,&m,&d); int a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}; if((y%4==0&&y%100!=0)||y%400==0){ a[2]=29; } int today=d,i; for(i=1;i<m;i++) today+=a[i]; printf("该日期是该年的第%d天n",today); return 0; }

4.输入一个人的月收入,输出应交的个人所得税,起征点为 5000 元,税率如下:

级数

应税所得额 m=月收入-5000

税率(%)

1

m<=2500

3

2

m>2500 且m<=5500

10

3

m>5500 且m<=10000

20

4

m>10000 且 m<=35000

25

思路:先输入月收入值,然后用公式(应税所得额 m=月收入-5000)求出需要缴税的金额,如果m的值<=0输出“不需要缴税”,否则个人所得税=m*r
(1)m<=2500:r=0.03
(2)m<=5500:r=0.1
(3)m<=10000:r=0.2
(4)m<=35000:r=0.25

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
#include<stdio.h> int main(){ float in; scanf("%f",&in); float m=in-5000; if(m<=0)printf("不需要缴税"); else if(m<=2500)printf("%f",m*0.03); else if(m<=5500)printf("%f",2500*0.03+(m-2500)*0.1); else if(m<=10000)printf("%f",2500*0.03+3000*0.1+(m-5500)*0.2); else if(m<=35000)printf("%f",2500*0.03+3000*0.1+4500*0.2+(m-10000)*0.25); return 0; }

三、switch语句练习

1.从键盘输入某年某月,输出该年份该月的天数。

思路:1、3、5、7、8、10、12是31天,4、6、9、11是30天,2月平年28天、闰年29天

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include<stdio.h> int main(){ int y,m; printf("请依次输入年月:"); scanf("%d%d",&y,&m); switch(m){ case 1:case 3:case 5:case 7:case 8:case 10:case 12: printf("31天");break; case 4:case 6:case 9:case 11: printf("30天");break; case 2:printf((y%4==0&&y%100!=0)||y%400==0?"29天":"28天"); } return 0; }

2.输入2个数,显示这两个数的四则运算结果。

思路:根据操作符进行匹配case,匹配上后输出计算结果

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include<stdio.h> int main(){ float a,b; char c; scanf("%f%c%f",&a,&c,&b); switch(c) { case '+':printf("%f",a+b);break; case '-':printf("%f",a-b);break; case '*':printf("%f",a*b);break; case '/':printf("%f",a/b);break; } return 0; }

最后

以上就是唠叨指甲油最近收集整理的关于选择结构练习题(if语句、if else语句、switch语句)一、if语句练习二、if else语句练习4.输入一个人的月收入,输出应交的个人所得税,起征点为 5000 元,税率如下:三、switch语句练习的全部内容,更多相关选择结构练习题(if语句、if内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(97)

评论列表共有 0 条评论

立即
投稿
返回
顶部