c语言问题 打印图案

来源:百度知道 编辑:UC知道 时间:2024/07/06 13:58:59
由键盘输入正数n,要求输出中间数字为n的菱形图案。要求菱形左边紧靠屏幕左边
如输入:3
输出:
1
121
12321
121
1

#include<stdio.h>
int main(void)
{
int i,j,k,n,m;
scanf("%d",&n);

for(i=1,k=1;i<2*n;i++,(i>n?k--:k++))
{
m=1;

for(j=1;j<2*k;j++,(j>k?m--:m++))
printf("%d",m);
printf("\n");
}
return 0;
}

编译好的

#include <stdio.h>
void main()
{
int n,i,j,k;
printf("Please input n:");
scanf("%d",&n);
for(i=1;i<n;i++)
{for(j=1;j<=i;j++)
printf("%d",j);
for(k=i-1;k>0;k--)
printf("%d",k);
printf("\n");
}
for(i=n;i>0;i--)
{
for(j=1;j<=i;j++)
printf("%d",j);
for(k=i-1;k>0;k--)
printf("%d",k);
printf("\n");
}
}
//做两个循环就好,试试吧

楼上两位的结果都不是菱形,我给的这个是符合楼主要求的:

#include<stdio.h>