Max-Zero 2016-03-28 13:59 采纳率: 0%
浏览 1959

求助两道关于c++循环的小编程题!

1.输入12个正整数,在去掉一个最小值和一个最大值后,求剩余10个正整数之和。
2.输入一个整数X(1<X<10),在屏幕上显示数字三角形。例如,X=5,显示:
1
121
12321
1234321
123454321

  • 写回答

1条回答

  • 林深 2016-03-28 15:08
    关注

    1.简单的累加,记录最大最小值,然后减一下就可以了

     #include "iostream"
    using namespace std;
    
    int main() {
    
        int max,min,sum=0,inputNum;
    
        for (int i=0; i<12; i++) { // 输入12个数
            cin>>inputNum;
            sum += inputNum;        // 所有的数都求和
            if (i==0) {
                max = inputNum;
                min = inputNum;
            }
            else {
                if (max < inputNum) {   // 记录最大值
                    max = inputNum;
                }
                if (min > inputNum) {   // 记录最小值
                    min = inputNum;
                }
            }
    
        }
    
        sum -= max;
        sum -= min;     // 12个数的和 减去最大值和最小值,就是中间的10个数的和
    
        cout << sum <<endl;
    
        return 0;
    }
    

    2.循环的简单用法,学会分解输出的情况

     #include "iostream"
    using namespace std;
    
    int main() {
    
        int X;
        while (cin >> X) {          // 允许循环输入
    
            for (int i=0; i<X; i++) { // 输出有X行
                for (int j=0;j<i;j++) // 每行前一半增序数从 1到i 输出
                {
                    cout<<j+1;
                }
                cout<<i+1;              // 输出 中间的数
                for (int j=i-1;j>=0;j--) // 每行后一半逆序从 i到1 输出
                {
                    cout<<j+1;
                }
                cout<<endl;             // 换行
            }
        }
        return 0;
    }
    
    评论

报告相同问题?

悬赏问题

  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容