BIT-CS-2000年复试机试

2019-01-25  本文已影响1人  小白之白小明

1、输入任意 4 个字符(如:abcd),并按反序输出(如:dcba)。

#include<iostream>
using namespace std;
int main() {
    char n[5];
    cin >> n;
    for (int i = 3; i >= 0; i--) {
        cout << n[i];
    }
    system("pause");
    return 0;
}

2、设 a、b、c 均是 0 到 9 之间的数字,abc、bcc 是两个三位数,且有:abc+bcc=532。求满足条件的所有a、b、c 的值。

#include<iostream>
using namespace std;
int main() {
    for(int a=0;a<=9;a++)
        for(int b=0;b<=9;b++)
            for (int c = 0; c <= 9; c++) {
                if (a * 100 + b * 10 + c + b * 100 + c * 10 + c == 532)
                    cout << a << " " << b << " " << c << endl;
            }
    system("pause");
    return 0;
}

3、一个数如果恰好等于它的各因子(该数本身除外)子和,如: 6=3+2+1,则称其为“完数”;若因子之和大于该数,则称其为“盈数”。求出 2 到 60 之间所有“完数”和“盈数”,并以如下形式输出: E: e1 e2 e3 ......(ei 为完数) G: g1 g2 g3 ......(gi 为盈数) 。

#include<iostream>
using namespace std;
int main() {
    cout << "E:";
    for (int i = 2; i <= 60; i++) {
        int sum = 0;
        for (int j = 1; j < i; j++) {
            if (i%j == 0)
                sum += j;
        }
        if (sum == i)
            cout << i << " ";
    }
    cout << endl;
    cout << "G:";
    for (int i = 2; i <= 60; i++) {
        int sum = 0;
        for (int j = 1; j < i; j++) {
            if (i%j == 0)
                sum += j;
        }
        if (sum > i)
            cout << i << " ";
    }
        
    system("pause");
    return 0;
}
上一篇下一篇

猜你喜欢

热点阅读