2014秋C++第5周项目3参考-简单分支问题体验

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,实践要求见http://blog.csdn.net/sxhelijian/article/details/39493833

课程资源在云学堂“贺老师课堂”同步展示,使用的帐号请到课程主页中查看。

【项目3-简单分支问题体验】至少选择(1)-(3)中的一个完成体验,小组共同完成(4)

阅读课件中“给两个数,求两数中的大者”例子(见课件),结合对课堂讲授内容的理解,仔细领会让计算机进行判断,然后根据不同情况进行处理的方法。

若在手机上直接输入感到困难,请先在草稿纸上写出来。

(1)输入两个正整数(前大后小,前小后大都可以),求出两数的正差值并输出。

样例输入之一:7 10

样例输出之一:3

样例输入之二:12 7

样例输出之二:5

提示:“正差值”意味着无论这两数孰大孰小,输出的差值为非负数。结果应该是前数减后数,还是后数减前数,这是一个需要通过判断才能决定的事。

解答一:根据比较结果,直接输出大值减小值的差

#include <iostream>
using namespace std;
int main( )
{
    int a,b;
    cout<<"请输入a、b的值:";
    cin>>a>>b;
    cout<<a<<" 和 "<<b<< " 之间的正差值是: ";
    if(a>b)
        cout<<a-b;
    else
        cout<<b-a;
    cout<<"\n";
    return 0;
}  

解答二:用另一个变量,记录下大值减小值的结果后再输出

#include <iostream>
using namespace std;
int main( )
{
    int a,b,c;
    cout<<"请输入a、b的值:";
    cin>>a>>b;
    if(a>b)
        c=a-b;
    else
        c=b-a;
    cout<<a<<" 和 "<<b<< " 之间的正差值是: "<<c<<"\n";
    return 0;
}

解答三:先通过交换,保证a>=b后,输出a-b

#include <iostream>
using namespace std;
int main( )
{
    int a,b,t;
    cout<<"请输入a、b的值:";
    cin>>a>>b;
    if(a<b)  //如果a<b,交换a、b的值,使a≥b成立
    {
        t=a;
        a=b;
        b=t;
    }
    cout<<a<<" 和 "<<b<< " 之间的正差值是: "<<a-b<<"\n";
    return 0;
}  

解答四:先算出两数的差,如果是负值,求出其相反数并输出

#include <iostream>
using namespace std;
int main( )
{
    int a,b,c;
    cout<<"请输入a、b的值:";
    cin>>a>>b;
    c=a-b;
    if(c<0)  //如果这个差值是负的,c赋值为c的相反数-c
        c=-c;
    cout<<a<<" 和 "<<b<< " 之间的正差值是: "<<c<<"\n";
    return 0;
}  

(2)输入3个整数,输出其中的最大值
样例输入:12 45 32

样例输出:最大值为:45

参考解答:

#include <iostream>
using namespace std;
int main( )
{
    int a,b,c,max;
    cout<<"请输入四个数值:";
    cin>>a>>b>>c;
    //先求出a和b的大值
    if(a>b)
        max=a;
    else
        max=b;
    //再求出c和max的大值
    if(c>max)
        max=c;
    cout<<"最大值是: "<<max<<"\n";
    return 0;
}

(3)某公司工资按周发放,标准是每小时制20元,若员工周工作时间超过40小时,超出部分每小时30元。编程序输入一名员工一周的工作小时数,输出他的周工资。
样例输入之一:32

样例输出之一:640

样例输入之二:48

样例输出之二:1040

参考解答:

#include <iostream>
using namespace std;
int main( )
{
    int hour, sum;
    cout << "本周工作了多少小时: ";
    cin >> hour;
    if(hour>40)
        sum= 40*20 + (hour-40)*30;
    else
        sum = hour*20;
    cout<<"周工资为:" << sum << "元。"<<endl;
    return 0;
}

 

=================== 迂者 贺利坚 CSDN博客专栏=================
|== IT学子成长指导专栏 专栏文章的分类目录(不定期更新) ==|
|== C++ 课堂在线专栏  贺利坚课程教学链接(分课程年级) ==|
|== 我写的书——《逆袭大学——传给IT学子的正能量》    ==|
===== 为IT菜鸟起飞铺跑道,和学生一起享受快乐和激情的大学 =====
时间: 2024-07-29 19:46:30

2014秋C++第5周项目3参考-简单分支问题体验的相关文章

2014秋C++第5周项目2参考-简单计算问题体验

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,实践要求见http://blog.csdn.net/sxhelijian/article/details/39493833. 课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.   [项目2 - 简单计算问题体验]至少选择(1)-(3)中的一个完成体验,小组共同完成(4) 阅读"英尺到米的转换"实例(见课件),仔细领会定义变

2014秋C++第8周项目2参考-加班费

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,实践要求见http://blog.csdn.net/sxhelijian/article/details/39493833. 课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.   [项目2:加班费,要不要?] 小贺刚上班,按工作时间小时制领取周工资,工资标准是,每小时rate元RMB.每周工作时间40小时,如果要加班,超出部分按正常工资的1.

2014秋C++第11周项目6参考-回文、素数

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.  [项目6-回文.素数](1)编制一个函数reverse,返回给定数据的"反序数",例如输入1234,输出4321.请编制reverse函数,在下面代码的基础上补充相关的部分,实现要求的功能. int main() { int m,n; cin>>m; n=re

2014秋C++第14周项目5参考-体会棋盘游戏

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.  [项目5-体会棋盘游戏中的数据存储]定义一个8行8列的二维数组a[8][8].(1)为二维数组中的数据赋50以内的随机数(程序模板中setdata()函数已经完成,利用产生随机数的系统函数实现),可能的取值如图所示:(2)设计函数out()按行输出二维数组中的数据:(3)设计函数outDia

2014秋C++第11周项目4参考-特殊三位数

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.   [项目4-特殊三位数]请输出满足条件n=a!+b!+c!的所有三位数n,其中,a.b.c分别是n的百.十.个位数.要求用自定义函数实现求阶乘. int main() { } long fac(int n) //用于求n的阶乘 { } 参考解答: #include<iostream&g

2014秋C++第12周项目4参考- 银行系统

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.  [项目4 - 银行系统]这是我们要做的一个真正的项目!涉及到的技术都用过了,只不过,程序真的要长得多了. 在学习中,总是想要些成就感的.当你没有做过一些事情的时候,总是不能知道所学知识究竟能干些什么.在学习过程中,完成一个像样的项目,那是一件很酷的事情,也让我们更有激情.做好思想准备,中间可

2014秋C++第19周 项目2参考 猴子选大王

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.  [项目2-猴子选大王]一群猴子,编号是1,2,3 ...m,这群猴子(m个)按照1-m的顺序围坐一圈.从第1只开始数,每数到第n个,该猴子就要离开此圈,这样依次下来,直到圈中只剩下最后一只猴子,则该猴子为大王.输入m和n,输出为大王的猴子是几号.提示1:(1)链表解法:可以用一个循环的单链表

2014秋C++第17周 项目7参考 电子词典结构体版

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.  [项目7-电子词典结构体版]做一个简单的电子词典.在文件dictionary.txt中,保存的是英汉对照的一个词典,词汇量近8000个,英文.中文释义与词性间用'\t'隔开.编程序,由用户输入英文词,显示词性和中文释义.提示1:定义一个Word结构体表示一个词条,其中的数据成员string

2014秋C++第14周项目4参考-电子词典

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.  [项目4-电子词典]做一个简单的电子词典.在文件dictionary.txt中,保存的是英汉对照的一个词典,词汇量近8000个,英文与释义间用'\t'隔开.编程序,将文件中的内容读到两个数组e[]和c[]中,分别代表英文和中文,由用户输入英文词,显示中文意思.运行程序后,支持用户连续地查词典