• C++高级语言程序设计实验二-中国矿业大学


    第一题

    利用循环结构,输入打印图形的行数,打印显示出如下“图形”。

    3
    1
    131
    13531
    
    #include<iostream>
    using namespace std;
    int main(){
        int lines;
        cin>>lines;
        for (int line=0; line<lines; line++){
            int a=1;
            for (;a<line*2+1;a+=2){
                cout<<a;
            }
            for (;a>=1;a-=2){
                cout<<a;
            }
            cout<<endl;
        } 
    }
    

    第二题

    某商店出售四种商品: A商品每公斤2.75元;B商品每个12.5 元;C商品每米26.8 元;D商品每台512元,超过3台优惠10%,超过8台优惠15%。设计一个计算价格的程序,通过输入购买四种商品的数量,计算并显示每种商品应付金额以及总金额。

    #include<iostream>
    using namespace std;
    int main(){
        float a,b,c,d;
        cin>>a>>b>>c>>d;
        if (d>8) d*=0.85;
        else if (d>3) d*=0.90;
        cout<<"A:"<<2.75*a<<endl;
        cout<<"B:"<<12.5*b<<endl;
        cout<<"C:"<<26.8*c<<endl;
        cout<<"D:"<<512*d<<endl;
        cout<<"total:"<<2.75*a+12.5*b+26.8*c+512*d<<endl;
    }
    

    第三题

    求n以内被3除余1且个位数为6的所有整数(如16、46、...、286等)并显示在屏幕上。

    #include<iostream>
    using namespace std;
    int main(){
        int n;
        cin>>n;
        for (int i=1; i<=n; i++){
            if (i%3==1 && i%10==6){
                cout<<i<<" ";
            }
        }
    }
    

    第四题

    编写一程序统计参赛选手的得分,计分标准为去掉一个最高分和一个最低分后,对剩余得分求平均值。要求首先从键盘输入评委的个数num,然后输入num个分数(分数为小于等于10的一个正实数),输出最终得分。

    #include<iostream>
    using namespace std;
    int main(){
        int n;
        float sum;
        float min=0, max=10;
        cin>>n;
        for (int i=0; i<n; i++){
            float temp;
            cin>>temp;
            if (temp>min){
                min = temp;
            }
            if (temp<max){
                max = temp;
            }
            sum+=temp;
        }
        cout<<(sum-max-min)/(n-2)<<endl;
    }
    

    第五题

    设计一个程序,对于用户输入的任意正整数a(a≥1)和b(b≥2),求出满足b^n≤a的最大整数n。

    #include<iostream>
    using namespace std;
    int main(){
        int a,b,s=1;
        int n=0;
        cin>>a>>b;
        while(1){
            if (s>a) {
                cout<<--n;
                break;
            }
            n++;
            s*=b;
        }
    }
    

    第六题

    给定一个十进制正整数N,请将其转换为十六进制并输出。输出N对应的十六进制,用数字 0~9 以及大写字母 A~F 来表示。

    #include<iostream>
    using namespace std;
    int main(){
        long n;
        int list[100];
        int i=0;
        int j=0;
        cin>>n;
        while(1){
            list[j] = n%16;
            n=n/16;
            j++;
            if (n==0) break;
        }
        j--;
        for (;j>=0; j--){
            switch(list[j]){
                case 10: cout<<'A'; break;
                case 11: cout<<'B'; break;
                case 12: cout<<'C'; break;
                case 13: cout<<'D'; break;
                case 14: cout<<'E'; break;
                case 15: cout<<'F'; break;
                default:
                cout<<list[j];break;
            }
        }
    }
    

  • 相关阅读:
    iis7 绑定多个ssl证书
    公众号微信消息接口官方demo
    前端HTML入门教程,一篇文章搞定,你就是web前端行内人了
    很多优秀的程序员,都有一个好习惯,这个习惯就是做博客写文章
    JavaScript入门到精通,需要掌握的技能盘点
    感觉CSS学习起来很难?很恐惧,消除恐惧的权威CSS学习指南来了
    这5个可以提高前端开发效率的 Chrome扩展程序,建议你尝鲜体验下
    那些你从不使用的 HTML 属性,背后竟然大有文章,赶快了来了解下
    按键消抖实验
    状态机练习 基于EEPROM的I2C 随机读、写
  • 原文地址:https://www.cnblogs.com/hujunyao37201/p/14123234.html
Copyright © 2020-2023  润新知