一个双循环的问题求解,希望能解答
其他问答
1
【问题描述】编写一个程序,输入一个正整数N,在屏幕上用*和~打印以N为边长的正六边形。 【输入形式】输入一个正整数N。 【输出形式】屏幕上输出以N为边长的正六边形。
-
供参考:
#include<stdio.h> int main() { int i, j, n; scanf("%d", &n); for (i = 1; i <= (2 * n - 1); i++) { if (i == 1 || i == (2 * n - 1)) { for (j = 1; j <= (2 * n - 1); j++) (j < n) ? printf(" ") : printf("*"); } if (i > 1 && i <= n) { for (j = 1; j <= (2 * n + i - 2); j++) (j == (n - i + 1) || j == (2 * n + i - 2)) ? i % 2 == 0 ? printf("~") : printf("*") : printf(" "); } if (i > n && i < (2 * n - 1)) { for (j = 1; j <= (4 * n - i - 2); j++) (j == (i + 1 - n) || j == (4 * n - i - 2)) ? i % 2 == 0 ? printf("~") : printf("*") : printf(" "); } printf("\n"); } return 0; }
发表回复