• c++ 上机实验题


       c++语言俺是不会啦,但是朋友考试需要,那只能勉为其难的入门下做做考试题了。

    以下就是具体的题目和答案:

    ----------------------------------------------------------------

    1、输入圆的半径r和圆柱的高h,依次输出圆周长、圆面积、圆球表面积、圆柱体积。其中,圆周长=2πr,圆面积=πr2,圆球表面积=4πr2,圆柱体积=hπr2

     

    源代码如下:

     

    #include<iostream>

    #include<math.h>

    usingnamespace std;

     

    int main() {

        double r;

        double h;

        cout<<"输入圆的半径r";

        cin >> r;

       

        cout<<"输入圆柱的高h";

        cin >> h;

       

        //计算周长:圆周长=2πr

        double circle_p = 2*M_PI*r;

        cout<<"圆周长为:"<<circle_p<<endl;

       

       

        //计算面积:圆面积=πr2

        double circle_s = M_PI*r*r;

        cout<<"圆面积为:"<<circle_s<<endl;

       

        //计算表面积:圆球表面积=4πr2

        double circle_sp = 4*M_PI*r*r;

        cout<<"圆球表面积为:"<<circle_sp<<endl;

       

       

        //计算表面积:圆柱体积=hπr2

        double circle_v = h*M_PI*r*r;

        cout<<"圆球表面积为:"<<circle_v<<endl;

       

        return 0;

    }

     

     

    运行结果第一组:

     

    输入圆的半径r1

    输入圆柱的高h1

    圆周长为:6.28319

    圆面积为:3.14159

    圆球表面积为:12.5664

    圆球表面积为:3.14159

     

     

    运行结果第二组:

    输入圆的半径r2

    输入圆柱的高h3

    圆周长为:12.5664

    圆面积为:12.5664

    圆球表面积为:50.2655

    圆球表面积为:37.6991

     

     

     

     

    2、输入大写字母,输出对应的小写字母。

     

    源代码如下:

     

    #include<iostream>

    #include<string>

    usingnamespace std;

     

    int main() {

        char a;

        cout<<"请输入一个大写英文字母:";

       

        cin >> a;

        //输入一字符,若为大写字母,转小写输出;

        if(a>='A' && a<='Z'){

           a= a+32;

        }

        cout << "您输入的大写字母对应的小写字母是:" << a << endl ;

          

        return 0;

    }

     

     

    运行结果第一组:

     

    请输入一个大写英文字母:A

    您输入的大写字母对应的小写字母是:a

     

    运行结果第二组:

     

    请输入一个大写英文字母:B

    您输入的大写字母对应的小写字母是:b

     

     

     

     

    3、有一分段函数如下,请编写程序,输入x值,输出y值。


     
    <!--[endif]-->

     

     

    源代码如下:

     

     

    #include<iostream>

    #include<math.h>

    usingnamespace std;

     

    int main() {

        double x;

        cout<<"输入x值:";

        cin >> x;

       

        double y = 0;

        if(x<0){

           //x<0

           y = pow(x,2)+2/x+sin(x);

        }elseif(x>=0 && x<10){

           // 0<=x<10

           y = 2*pow(x,5)-cos(x);

        }elseif(x>=10){

           //x>=10

           y = 1/sqrt(3*pow(x,2)-11);

        }

       

       

        cout<<"y值:"<<y<<endl;

       

        return 0;

    }

     

     

    运行结果第一组:

    输入x值:-2

    y值:2.0907

     

     

    运行结果第二组:

    输入x值:1

    y值:1.4597

     

     

     

     

     

    4、输入年份year,判断是否是闰年,若不是,输出NO,否则输出YES。(判断闰年的标准是:1、年份能被4整除而不能被100整除 2、年份能被400整除) 

     

    源代码如下:

     

    #include<iostream>

    usingnamespace std;

     

    int main() {

        int year;

        cout<<"输入年份值:";

        cin >> year;

     

       

        //1、年份能被4整除而不能被100整除 2、年份能被400整除

        if( (year%100==0)  || (year%4==0 && year%100!=0) ){

           cout<<"YES"<<endl;

        }else{

           cout<<"NO"<<endl;

        }

       

        return 0;

    }

     

    运行结果第一组:

    输入年份值:2012

    YES

     

    运行结果第二组:

    输入年份值:2015

    NO

     

     

     

     

     

    5、输入两个正整数mn,编写程序求其最大公约数和最小公倍数。

     

    源代码如下:

     

    #include<iostream>

    usingnamespace std;

     

    //求最大公约数

    int MaxY(int a, int b) {

        int min, max;

        int r;

        max=a>b ? a : b;

        min=a<b ? a : b;

        if (max%min==0)

           return min;

        while (max%min!=0) {

           r=max%min;

           max=min;

           min=r;

        }

        return min;

    }

     

    //求最小公倍数

    int MinY(int a, int b) {

        int min, max;

        int r;

        max=a>b ? a : b;

        min=a<b ? a : b;

        if (max%min==0)

           return max;

        while (max%min!=0) {

           r=max%min;

           max=min;

           min=r;

        }

        return a*b/min;

    }

     

    int main() {

        int m, n;

     

        cout<<"请输入两个数,求这两个数的最大公约数和最小公倍数(用空格分隔,按回车键(Enter)):";

        cin>>m>>n;

     

        cout<<"这两个整数的最大公约数为:"<<MaxY(m, n)<<endl;

        cout<<"这两个整数的最小公倍数为:"<<MinY(m, n)<<endl;

     

        return 0;

    }

     

    运行结果第一组:

    请输入两个数,求这两个数的最大公约数和最小公倍数(用空格分隔,按回车键(Enter)):5 25

    这两个整数的最大公约数为:5

    这两个整数的最小公倍数为:25

     

    运行结果第二组:

    请输入两个数,求这两个数的最大公约数和最小公倍数(用空格分隔,按回车键(Enter)):4 30

    这两个整数的最大公约数为:2

    这两个整数的最小公倍数为:60

     

     

  • 相关阅读:
    Win64 驱动内核编程-12.回调监控进线程创建和退出
    我的主站 SHARELIST -分享列表 (功能持续完善中 2019-11-24 版本0.3)
    Caddy-基于go的微型serve用来做反向代理和Gateway
    Docker Swarm删除节点
    Docker Swarm集群搭建
    Docker Machine-Windows
    Docker Compose
    Docker网络配置进阶
    Docker网络相关
    Docker数据管理
  • 原文地址:https://www.cnblogs.com/hehehaha/p/6147083.html
Copyright © 2020-2023  润新知