《C语言及程序设计》实践项目——利用switch语句解决问题

返回:贺老师课程教学链接 

【项目1:投票表决器】
设计一个投票表决器,其功能是:

  • 输入Y、y,打印agree
  • 输入N、n,打印disagree
  • 输入其他,打印lose

请在下面代码的基础上,将程序补充完整

#include <stdio.h>
int main( )
{
    char c;
    scanf("%c",&c);
    ____(1)____
    {
    case 'Y':
    case 'y':
        printf("agree");
        ____(2)____;
    case 'N':
    case 'n':
        printf("disagree");
        ____(3)____;
    ____(4)____:
        printf("lose");
    }
    return 0;
}

[参考解答]

【项目2:成绩等级】
给出一百分制成绩,要求输出成绩等级’A’,’B’,’C’,’D’,’E’。90分以上为’A’,80-89分为’B’,70-79分为’C’,60-69分为’D’,60分以下为’E’。
[参考解答]

【项目3:分段函数求值switch语句版】
从键盘输入x的值(要求为整型),根据公式1计算并输出x和y的值。要求用switch语句完成。

[参考解答]

【项目4:本月有几天?】
编程序,输入年份和月份,输出本月有多少天。合理选择分支语句完成设计任务。
样例输入1:2004 2
输出结果1:本月29天
样例输入2:2010 4
输出结果2:本月30天
[参考解答]

【项目5:个人所得税计算器switch语句版】
编写选择结构程序,输入个人月收入总额,计算出他本月应缴税款和税后收入(计算办法见附:关于个人所得税的有关背景知识)。
(1)用switch语句完成;
(2)可以在下面程序的基本框架基础上完成,如需其他变量自行增加

#include <stdio.h>
int main ( )
{
	double dSalary,dTax=0,dNetIncome=0;
	printf("请输入您本月的收入总额(元):");
	scanf("%lf", &dSalary);
	// 下面求解应缴个人所和税dTax和税后收入dNetIncome

	printf("您本月应缴个人所和税 %.2lf 元,税后收入是 %.2lf 元。\n", dTax, dNetIncome);
	printf("依法纳税,共享繁荣。谢谢使用!\n");
    return 0;
}

附:关于个人所得税的有关背景知识
计算方法:个人所得税=(收入总额-3500)*税率-速算扣除数
从2011年9月1日起,我国个人所得税起征点基数为3500元,超出部分按以下7级计算。

序号

收入范围

税率

速算扣除数

1

超过0至1500

3%

0

2

超过1500元至4500元的部分

10%

105

3

超过4500元至9000元的部分

20%

555

4

超过9,000元至35,000元的部分

25%

1005

5

超过35,000元至55,000元的部分

30%

2755

6

超过55,000元至80,000元的部分

35%

5505

7

超过80,000以上

45%

13505

例如:王某月收入总额3600元,个人所得税=(3600-3500)*3%=3元;
再例:李某月收入13500元,个人所得税=(13500-3500)*25%-1005=2500-1005=1495元。
更多了解速算扣除数,请找百度百科。
[参考解答]

【项目6:定期存款利息计算器】
输入存款金额并选择存款种类,计算出利息(不计利息税)和本息合计。要求使用switch语句,根据选择的存款种类,确定利率和存期后计算。
提示:利息=金额×年利率×存期(单位:年,3个月为0.25年,6个月为0.5年)。
例如:1000元存6个月,利息=1000×0.033×0.5=16.5元
利率使用2011年7月7日公布的年利率:3个月  3.10%,6个月 3.30%,一年 3.50%,二年 4.40%,三年 5.00%,五年 5.50%。
程序运行图参考下面的界面:

[参考解答]

【项目7:构造菜单】
在应用程序中,很多都将各种功能设计了“菜单”供用户选择,本项目做些体验。
请编写程序,显示“菜单”,由用户输入代号后,输出对所选项目的简短评论。运行结果参考下图:

[参考解答]

时间: 2025-01-20 10:31:52

《C语言及程序设计》实践项目——利用switch语句解决问题的相关文章

C语言及程序设计初步例程-26 利用switch语句解决问题

贺老师教学链接  C语言及程序设计初步 本课讲解 应用:计算运费每公里每吨货物的基本运费为p(price),货物重为w(weight),距离为s,折扣为d(discount),则总运费f(freight)的计算公式为 freight=price*weight*s*(1-discount) #include <stdio.h> int main() { int c,s; float p,w,d,f; printf("please enter p,w,s: "); scanf(

利用switch语句进行多选一判断的实例代码_php实例

实例如下: <!doctype html> <meta http-equiv="content-type" content="text/html" charset="utf-8"/> switch语句,switch语句用于根据多个不同条件执行不同动作.<br/> 如果你希望有选择地执行若干代码块之一,还请使用switch语句. <br/> 语法结构如下: <pre> switch(n)

C语言及程序设计初步例程-24 if语句的嵌套

贺老师教学链接  C语言及程序设计初步 本课讲解 应用:分段函数求解好程序 #include <stdio.h> int main() { float x, y; scanf("%f", &x); if(x<2) { y=x; } else if(x<6) { y=x*x+1; } else if(x<10) { y=sqrt(x+1); } else { y=1/(x+1); } printf("%f\n", y); retu

《C语言及程序设计》实践项目——用if语句实现分支结构

返回:贺老师课程教学链接  [项目1:被3或者5整除的数]编程序,输入一个数,判断它能否被3或者被5整除.如至少能被这两个数中的一个整除,则将此数打印出来,否则不打印.[参考解答] [项目2:乱玩数字]编程输入整数a和b,若两数之和大于100,则输出两数和百位以上的数字,否则输出两数之和.[参考解答] [项目3:两段函数求值]编程序,计算下面函数的值并输出(x取整型即可)[参考解答] [项目4:三角公式求值]写一程序,求y值  (x值由键盘输入).[参考解答] [项目5:我的加班费]小贺刚上班,

《C++语言基础》实践项目——银行储蓄系统开发

返回:贺老师课程教学链接 教学目标 通过完成一个有实用价值的应用程序,体会利用C++语言解决问题的过程: 多次迭代,逐步完善,用可以运行的程序,鼓舞自己的学习 实训安排 看视频"18 应用系统开发:银行储蓄系统",并阅读博客中提供的参考解答,了解基本系统的开发. 基本要求:定义了用户类(User)和银行类(Bank),用成员函数实现各种功能,多文件组织程序,能用文本文件存取数据(如示例中给出的技术): 拓展方向: 序号 加分项目 细       则 1 改变Bank类中用户信息的存储方

《C++语言基础》实践项目——链表类及其应用

返回:贺老师课程教学链接 [项目 - 链表类]动态链表也是程序设计中的一种非常有用的数据结构.可以说,是否能够理解有关操作的原理,决定了你是否有资格称为"科班"出身.在后续的专业基础课中,相关的内容还会从不同的角度,反复地认识,反复地实践.不过,在现阶段多些体验,也是很有必要的了.(1)阅读下面的程序,回顾一下动态链表,阅读程序过程中,请用笔画一画形成链表的过程中指针值的变化. #include <iostream> using namespace std; struct

《C++语言基础》实践项目——继承与派生

返回:贺老师课程教学链接 [项目0 - 是春哥啊]请在下面程序的横线处填上适当内容,以使程序完整,并使程序的输出为:Name: 春哥Grade: 19 #include <iostream> #include <cstring> using namespace std; class Person{ public: Person(char* s){ strcpy(name,s); } void display( ){ cout<<"Name: "<

《C++语言基础》实践项目——文本文件及应用

返回:贺老师课程教学链接 本周项目中用到的数据文件,请在这里下载:点击打开链接[项目1 - 小玩文件](1)下面程序的功能是统计文本文件abc.txt中的字符个数,请填空将程序补充完整. #include <iostream> #include <cstdlib> #include _____________ // (1) using namespace std; int main() { fstream file; file.open("abc.txt", _

《C++语言基础》实践项目——深复制、友元、模板

返回:贺老师课程教学链接 [项目1-深复制体验](1)阅读下面的程序,补足未完成的注释 #include<iostream> #include<cstring> using namespace std; class A { private: char *a; public: A(char *aa) { a = new char[strlen(aa)+1]; //(a)这样处理的意义在于:______________________________ strcpy(a, aa); //