C/C++ L5

2018/07/06 C/C++

C/C++程序语言设计 Level5。

MAC

习题

  1. 求一个4X4的矩阵的对角线元素之和。
  2. 输入一段字符串,然后统计其中包含的大写字母、小写字母、空格、数字的数量。
  3. 打印下面的图案。
      *
     ***
    *****
   *******
  *********
 ***********
*************
 ***********
  *********
   *******
    *****
     ***
      *

答案

答案1

#include <iostream>
using namespace std;

int main(){
    int a[4][4];
    for(int i=0;i<4;i++){
        for(int j=0;j<4;j++){
            cin >> a[i][j];
        }
    }
    int sum = 0;
    for(int i=0;i<4;i++){
        for(int j=0;j<4;j++){
            if(i==j || i+j==3){
                sum += a[i][j];
            }
        }
    }
    cout << sum << endl;
    return 0;
}

答案2

#include <iostream>
#include <string>
using namespace std;

int main(){
    string ch;
    int res[4] = {0};
    getline(cin, ch);
    for(int i=0;i<ch.length();i++){
        char c = ch[i];
        if(65<=c && c<=90){
            res[0]++;
        }
        else if('a'<=c && c<='z'){
            res[1]++;
        }
        else if(c == ' '){
            res[2]++;
        }
        else if('0'<=c && c<='9'){
            res[3]++;
        }
        else if(c == '\0'){
            break;
        }
    }
    cout << "统计有" << res[0] << 个大写字母 << endl;
    cout << "统计有" << res[1] << 个小写字母 << endl;
    cout << "统计有" << res[2] << 个空格 << endl;
    cout << "统计有" << res[3] << 个数字 << endl;
    return 0;
}

答案3

#include <iostream>
using namespace std;

int main(){
    int n = 1;
    for(int i=0;i<6;i++){
        for(int j=0;j<6-i;j++){
            cout << " ";
        }
        for(int j=0;j<n;j++){
            cout << "*";
        }
        cout << endl;
        n += 2;
    }
    for(int i=0;i<7;i++){
        for(int j=0;j<i;j++){
            cout << " ";
        }
        for(int j=0;j<n;j++){
            cout << "*";
        }
        cout << endl;
        n -= 2;
    }
    return 0;
}

Search

    Table of Contents