#include <iostream>
using namespace std;
int main() {
int i, j;
int n = 6;
for (i = 0; i < n; i++) {
for (j = 0; j < n - i - 1; j++) //n - i - 1,逐次降一;
cout << " ";
for (j = n - i - 1; j < n + i; j++) //i的动态变化,一加一减,逐次加二:
cout << "*";
cout << "\n";
}
cout << endl;
}
程序的主要逻辑是两个嵌套的for循环。外层循环控制行数,内层循环控制每一行的输出。
具体来说:
1.int n = 6; 定义了一个整数变量n,其值为6。这意味着我们要打印一个6行的菱形。
外层循环:for (i = 0; i < n; i++) 遍历每一行。
2.第一个内层循环:for (j = 0; j < n - i - 1; j++) 用于打印每一行前面的空格。这个循环的次数随着i的增加而减少,因为随着菱形上半部分的增大,需要的空格数会减少。
3.第二个内层循环:for (j = n - i - 1; j < n + i; j++) 用于打印每一行的星号。这个循环的次数随着i的增加而增加,因为随着菱形上半部分的增大,需要的星号数会增加。
4.cout << "\n"; 在每一行的末尾添加一个换行符,以便开始新的一行。
5.cout << endl; 在所有行都打印完毕后添加一个额外的换行符。
当程序运行时,它会输出一个6行的菱形,其中星号在中间对齐。
((重点重点重点))理解for循环的值:for (j = 0; j < n - i - 1; j++)和for (j = n - i - 1; j < n + i; j++)
但是你不能急于求成,这是学习计算机的大忌,不要去背这些值,只有理解了,才是自己的
?在这里提前祝你新年快乐!,希望你在2024越来越好,成为自己想成为的那个自己,加油!
拜拜,谢谢你的观看,我是一名小程序猿,在这里留下你的足迹吧!