C++学习笔记(第一章 C++的基础知识 之二)

来源:互联网 发布:linux 入门基础 编辑:程序博客网 时间:2024/05/16 14:54

习题3:    输入3个整数,输出其中的最大值。

样例输入:123 345 62

样例输出:最大值为:345


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



习题4:  输入3个整数,输出其中的最大值和最小值。


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


习题4:  输入4个整数,输出其中的最大值。


解法1:分别求出两对数大值后,大值间比较出大值

#include <iostream>using namespace std;int main( ){int a,b,c,d,max1,max2,max;cout<<"请输入四个数值:"; cin>>a>>b>>c>>d;//先求出a和b的大值if(a>b)max1=a;elsemax1=b;//再求出c和d的大值if(c>d)max2=c;elsemax2=d;//两个大值中的大值为最后的大值if(max1>max2)max=max1;elsemax=max2;cout<<"最大值是: "<<max<<endl;return 0;}

解法2:逐个比较,得到最大值

#include <iostream>using namespace std;int main( ){int a,b,c,d,max;cout<<"请输入四个数值:"; cin>>a>>b>>c>>d;max=a;   //未进行比较前,暂认为a就是最大的if(max<b)  //如果b更大,当然最最大的就应该被赋值为bmax=b;if(max<c)  //同理max=c;if(max<d)  //亦然max=d;cout<<"最大值是: "<<max<<endl;return 0;}


解法3:采用交换的思想

#include <iostream>using namespace std;int main( ){int a,b,c,d,t;cout<<"请输入四个数值:"; cin>>a>>b>>c>>d;//经过下面的比较和可能进行的交换,a将不比b小if(a<b){  t=a;  a=b;  b=t;  }  //经过下面的比较和可能进行的交换,c将不比d小if(c<d){t=c;c=d;d=t;}//经过下面的比较和可能进行的交换,a将不比c小,为4个数中的最大值if(a<c){t=a;a=c;c=t;}cout<<"最大值是: "<<a<<endl;return 0;}


解法4:不用引入新的变量一样可以得到答案,不过自己的明白那个是最大或最小

#include <iostream>using namespace std;int main( ){int a,b,c,d;cout<<"请输入四个数值:"; cin>>a>>b>>c>>d;//经过下面的比较和可能进行的赋值,a将是a和b间的大值if(a<b)a=b; //经过下面的比较和可能进行的赋值,c将是c和d间的大值if(c<d)c=d;//经过下面的比较和可能进行的赋值,a将是a和c间的大值,也就是这四个数中的最大值if(a<c)a=c;cout<<"最大值是: "<<a<<endl;return 0;}


解法5:这道题还有很多种思想,自己可以多琢磨琢磨


习题5:  输入4个整数,输出其中的最大值和最小值。


#include <iostream>using namespace std;int main( ){int a,b,c,d,t;cout<<"请输入四个数值:"; cin>>a>>b>>c>>d;//经过下面的比较和可能进行的交换,a将不比b小if(a<b){  t=a;  a=b;  b=t;  }  //经过下面的比较和可能进行的交换,c将不比d小if(c<d){t=c;c=d;d=t;}//经过下面的比较和可能进行的赋值,a将不比c小,为4个数中的最大值if(a<c){t=a;a=c;c=t;}//在两个小值,即b和d间,经过下面的比较和可能的交换,d将是小者,也是4个数中的小者if(b<d){t=b;b=d;d=t;}cout<<"最大值是"<<a<<", 最小值是"<<d<<endl;return 0;}


0 0
原创粉丝点击