PAT乙级1027
题目链接 https://pintia.cn/problem-sets/994805260223102976/problems/994805294251491328 题解 主要有两个内容: 获取第一行(最长行)字符的个数。这个与一般的菱形打印不同,该题的字符不一定用完。 通过循环输出空格与字符(末尾空格就不用输出了) // PAT BasicLevel 1027 // https://pintia.cn/problem-sets/994805260223102976/problems/994805294251491328 #include <iostream> using namespace std; int getLineMaxCount(int maxNum); int main() { // 字符可用数量及字符 int n;char c; cin >> n >> c; // 获取第一行字符的个数 int maxNum = getLineMaxCount(n); // 已输出字符个数 int count=0; // 当前行输出字符个数 int num = maxNum; // 输出上半部分 while(num>1){ // 输出空格 for(int i=0;i<(maxNum-num)/2;++i){ cout << ' '; } // 输出字符 count+=num; for