输入正整数n,打印由“*”组成的(2*n-1)×(2*n-1)菱形图案。例如,输入为3,输出以下图案: * *** ***** *** *
时间: 2023-11-25 21:07:41 浏览: 190
这是一个关于打印菱形图案的问题,输入一个正整数n,输出由“*”组成的(2*n-1)×(2*n-1)菱形图案。可以使用两个for循环来实现,第一个for循环用于打印上半部分的菱形,第二个for循环用于打印下半部分的菱形。具体实现可以参考提供的两个代码段,它们都是使用for循环来实现的,只是打印的方式略有不同。
<<引用:>>
```
int n;
cin >> n;
for(int i=0;i<n;i++){
for(int j=0;j<n-i-1;j++){
cout << " ";
}
for(int k=1;k<2*i+2;k++){
cout << "*";
}
cout << endl;
}
for(int i=n-2;i>=0;i--){
for(int j=0;j<n-i-1;j++){
cout << " ";
}
for(int k=1;k<2*i+2;k++){
cout << "*";
}
cout << endl;
}
```
<<引用:>>
```
int n = 0;
printf("请输入:\n");
scanf("%d", &n);
int i = 0;
//上半部分
for (i = 0; i < n; i++){
int j = 0;
for (j = 0; j < n - 1-i; j++){
printf(" "); }
for (j = 0; j<=2*i; j ++){
printf("*");
}
printf("\n");
}
//下半部分
for (i = 0; i < n - 1; i++){
int j = 0;
for (j = 0; j <= i; j++){
printf(" ");
}
for (j = 0; j < 2*n-3-2*i; j++){
printf("*");
}
printf("\n");
}
```
阅读全文