C语言简单图形题

C语言简单图形题,第1张

/*编写一程序P211.C实现以下功能

根据输入的n在屏幕上显示对应的以#组成的菱形图案。编程可用素材:printf("Please input n: ")...。

程序的运行效果应类似地如图1和图2所示,图1中的1和图2中的5是从键盘输入的内容。

*/

#include <stdio.h>

int main(void)

{

int n, i=1, j, m,k=1

printf("Please input n: ")

scanf("%d", &n)

do

{

for (j=ij <= nj++)

{

printf(" ")

}

for (m=1m <= 2*i-1m++)

{

printf("#")

}

printf("\n")

i++

}while (i <= n+1)

do

{

for (j=0j<kj++)

{

printf(" ")

}

for (m=1m <= 2*n-1m++)

{

printf("#")

}

printf("\n")

n--k++

}while (n)

return 0

}

//德昂当同学的说法确实是你的错误所在,这就是你成功的一半了。

/*其实笔者建议你将上面的那个图抽象成为一个线性规划的问题:建立一个坐标系,之后提取出来更方便的数学关系式,例如上面的方程则是:| i-j |<=n和| i+j |<n之后将i,j分别当做两个行列变量进行解决。请作者予以尝试!*/

#include<stdio.h>

#define N 9

//总共9行,每行最多9个元素。

int main()

{

char a='*'

char b=' '

int i

int j

for(i = 1i<=5 i++) //先打印上半部分。

{

for(j=1j<=5-ij++)

{

printf("%c",b)

}

for(j=1j<=ij++)

{

printf("%c",a)

printf("%c",b)

}

printf("\n")

}

for(i = 4i>=1 i--) //打印下半部分。

{

for(j=1j<=5-ij++)

{

printf("%c",b)

}

for(j=1j<=ij++)

{

printf("%c",a)

printf("%c",b)

}

printf("\n")

}

getchar()

return 0

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12206562.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存