如何打印反Z图案?
正常Z模式的代码:
int main() {
int n;
printf("Enter number of rows: ");
scanf("%d", &n);
for (int row = 0; row < n; row++) {
for (int column = 0; column < n; column++) {
if (row == 0 || row == n - 1 || column == n - 1 - row) {
printf("* ");
}
else {
printf(" ");
}
}
printf("\n");
}
return 0;
上面代码的输出为n = 5:
* * * * *
*
*
*
* * * * *
提前致谢。
答案 0 :(得分:2)
这应该有效:
int main() {
int n;
printf("Enter number of rows: ");
scanf("%d", &n);
for (int row = 0; row < n; row++) {
for (int column = n-1; column >=0; column--) {
if (row == 0 || row == n - 1 || column == n - 1 - row)
{
printf("* ");
}
else {
printf(" ");
}
}
printf("\n");
}
return 0;
}
答案 1 :(得分:0)
转发Z:
* * * * * * * *
*
*
*
*
*
*
* * * * * * * *
逆Z:
* * * * * * * *
*
*
*
*
*
*
* * * * * * * *
提示:如果您将* * * * * *
输出与单个*
输出分开,则应该更容易调整生成的代码以满足您的需求。
答案 2 :(得分:0)
这是我为Z模式制作的,相反,只需在if语句的末尾替换“ x + 1”
x = int(input("Enter size: "))
for i in range(0, x): #row
for j in range(0, x): #columns
if (i == 0 or i == x-1) or i+j==x-1: #determines whether to print "X" or ""
print("X", end="")
else:
print(" ", end="")
print()