只用两个FOR循环
输出一个%字符的菱形.
并且FOR只能用来打印...
只用两个FOR循环
输出一个%字符的菱形.
并且FOR只能用来打印...
#include "stdafx.h"
#include <stdio.h>
int main(){
printf("输入N的个数,N为奇数");
int n;
scanf("%d",&n);
for (int i=0;i<n;i++)
{
int space, star;
star=2*i+1;
if (star>n)
star = n-star%n;
space=(n-star)/2;
for (int j=1;j<=n;j++)
{
if (j>space && j<= space+star)
{
printf("*");
}else
printf(" ");
}
printf("\n");
}
return 0;
}
很简单,先定义一个2维数组,将%字符的菱形存放在其中。然后用for循环输出。
下面是3*3的示意
char s[3][3]={" % ","%%%", " % "};
for(int i = 0;i < 3;i++){
for(int j = 0;j < 3;j++)
printf("%c", s[i][j]);
printf(“\r\n”);
}