C++使用字符输出菱形

输入菱形对角线的对角线的字符个数n(为奇数),输入构成菱形的字符C;输出字个由字符C构成的菱形;(多组)如下;
输入:
【C++使用字符输出菱形】C++使用字符输出菱形
文章图片


输出:
C++使用字符输出菱形
文章图片
b

思路:分成两部分来输出,上部及下部,上部为字符递增,空格增减,下部反之,中部对角线放到上部输出,

先输出空格个数j(j=0到((n-1)-i)《包括(n-1)-i》),再输出字符个数k(k=0到2*i)《即共2*i+1个》; 然后是下一部分:也用一for语句控制输出,空格个数从(0到i),字符个数从(0到n-2*i)。

如下:

#include using namespace std; int main() { int i, j, k,n; while (cin >> n)//输入菱形的对角线字符个数, { char c; cin >> c; n /= 2; //按对角线总个数,如果不进行这步则是按对角线两角的个数 for (i = 0; i <= n; i++) { for (j = 0; j <= n - 1 - i; j++) cout << ' '; for (k = 0; k <= 2 * i; k++)// cout << c; cout << endl; } for (i = 0; i <= n - 1; i++) { for (j = 0; j <= i; j++) cout << ' '; for (k = 0; k <= (n - 1) * 2 - 2 * i; k++) cout << c; cout << endl; } } return 0; }


    推荐阅读