2001年北理复试上机题目B

1、请输入高度 h,输入一个高为 h,上底边长为 h的等腰梯形(例如 h=4,图形如下)。

   ****

  ******

 ********

**********

#include<cstdio>

int main()
{
    int h;
    scanf("%d", &h);
    for (int i = 0; i < h; i++)
    {
        for (int j = 0; j < h - i - 1; j++)printf(" ");
        for (int j = 0; j < h + 2 * i; j++)printf("*");if(i != h - 1)printf("\n");
    }
    return 0;
}

2、请编写一个程序,从键盘上输入 n(n 的范围是1~20),求 n 的阶乘。

#include<cstdio>

int main()
{
    int n, ans = 1;
    scanf("%d", &n);
    for (int i = 1; i <= n; i++)ans *= i;
    printf("%d\n", ans);
    return 0;
}

3、从键盘上任意输入一个长度不超过 20 的字符串,对所输入的字符串,按照 ASCII 码的大小从小到大进行排序,请输出排序后的结果。

#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;

int main()
{
    char s[25];
    cin >> s;
    int n = strlen(s);
    sort(s, s + n);
    cout << s << endl;
}
posted @ 2019-08-11 10:37  郭怡柔  阅读(137)  评论(0)    收藏  举报