如何用c语言打印这个图形 **** * * * * ****

第一行4个*,第二行第一列第四列各一个*,第三行同第二行,第四行同第一行

#include <stdio.h>
void main(){
int i,j;
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
if(i*j==0||i==3||j==3)
printf("*");
else printf(" ");
printf("\n");
}
}

以上为本题程序。如果需要输入行数n,打印类似图形,那么:

#include <stdio.h>
void main(){
int i,j,n;
scanf("%d",&n);
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
if(i*j==0||i==n-1||j==n-1)
printf("*");
else printf(" ");
printf("\n");
}
}

运行示例:

追问

谢谢解答,我能问下第二个代码中。n,i,j,分别代表什么吗。n代表行数,那i代表什么呢

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-02-07
printf("****\n* *\n* *\n****\n");