c语言打印图形字母N,利用C语言如何实现一些简单图形的打印

1#define_CRT_SECURE_NO_WARNINGS 1

因为笔者采用的是VS的编译环境所以有了上面的这一句话

我们都知道平面图形是由一条条线段构成,所以我们就先实现线段的打印

//打印自定义长度的线段

#include

int main()

{

int i = 0;

int n;

while (~scanf("%d", &n))

{

for (i = 0; i < n; i++)

printf("* ");

printf("\n");

}

return 0;

05ab088848bc3e01c27313f446681c6b.png

那么,线段学会了,我们就可以进行简单图形的打印了

首先我们从正方形开始:

//打印自定义边长的正方形

#include

int main()

{

int j = 0, i = 0;

int n;

while (~scanf("%d", &n))

{

for (i = 0; i < n; i++)//控制行

{

for (j = 0; j < n; j++)//控制列

printf("* ");

printf("\n");

}

}

return 0;

}

091803f223814c6e88a63a9b0fe4bb4b.png

接下来是三角形:(笔者准备了六种三角形)

//打印三角形—1

#include

int main()

{

int j = 0, i = 0, n;

while (~scanf("%d", &n))

{

for (j = 0; j < n; j++)//行

{

for (i = 0; i < n - j; i++)//列

{

printf("* ");

}

printf("\n");

}

}

return 0;

}

//打印三角形—2

#include

int main()

{

int j = 0, i = 0, n;

while (~scanf("%d", &n))

{

for (j = 0; j < n; j++)//行

{

for (i = 0; i <= j; i++)//列

{

printf("* ");

}

printf("\n");

}

}

return 0;

}

//打印三角形—3

#include

int main()

{

int j = 0, i = 0, n;

while (~scanf("%d", &n))

{

for (j = 0; j < n; j++)//行

{

for (i = 0; i < n - j - 1; i++)//列

{

printf(" ");

}

for (i = 0; i <= j; i++)

{

printf("* ");

}

printf("\n");

}

}

return 0;

}

//打印三角形—4

#include

int main()

{

int j = 0, i = 0, n;

while (~scanf("%d", &n))

{

for (j = 0; j < n; j++)//行

{

for (i = 0; i < j ; i++)//列

{

printf(" ");

}

for (i = 0; i < n - j ; i++)

{

printf("* ");

}

printf("\n");

}

}

return 0;

}

//打印三角形—5

#include

int main()

{

int j = 0, i = 0, n;

while (~scanf("%d", &n))

{

for (j = 0; j < n; j++)//行

{

for (i = 0; i <= n - j ; i++)//列

{

printf(" ");

}

for (i = 0; i <= j; i++)

{

printf("* ");

}

printf("\n");

}

}

return 0;

}

//打印三角形—6

#include

int main()

{

int j = 0, i = 0, n;

while (~scanf("%d", &n))

{

for (j = 0; j < n; j++)//行

{

for (i = 0; i < j; i++)//列

{

printf(" ");

}

for (i = 0; i < n - j; i++)

{

printf("* ");

}

printf("\n");

}

}

return 0;

}

e5268276f73e604314554f2dde132cd2.png

0d87f0864d1676741b63f380028a7cd5.png

4243e262087c39c5420c79000b5cf9fb.png

aa88310906445ec62b4936985986c5cc.png

fbc8becd0c5298e432e32afc564bcbdb.png

be4df60a6ee72b04998b8ba4f792e4ef.png

现在就可以尝试一下图形的挖空了

我们仍然保持之前的顺序从正方形到三角形:

//空心正方形

#include

int main()

{

int j = 0,i=0;

int n;

while (~scanf("%d", &n))

{

for (j = 0; j < n; j++)

{

for (i = 0; i < n; i++)

{

if (j == 0 || i==0 ||j==n-1 || i==n-1)

printf("* ");

else

printf(" ");

}

printf("\n");

}

}

}

//空心三角形

#include

int main()

{

int n;

int i = 0, j = 0;

while (~scanf("%d", &n))

{

for (i = 0; i < n; i++)

{

for (j = 0; j <= i; j++)

{

if (j == 0 || i == j || i==n-1 )

printf("* ");

else

printf(" ");

}

printf("\n");

}

}

}

4bba29ba9a930b3954d6a269dc30c5ba.png

60683584585aa0ae9fbd0fce06c1cc7e.png

那么我们可以从以上知识尝试一下自己打出一个菱形以及空心菱形

#define _CRT_SECURE_NO_WARNINGS 1

#include

#include

int main()

{

int i = 0, j = 0;

int n;

while (~scanf("%d", &n))//在这的n我们必须保证是奇数

{

for (i = 0; i < n; i++)

{

for (j = 0; j < abs(n / 2 - i); j++)

printf(" ");

for (j = 0; j < n - 2 * abs(n / 2 - i); j++)

printf("*");

printf("\n");

}

}

return 0;

为了更好的理解,笔者微微修改了以上代码

#define _CRT_SECURE_NO_WARNINGS 1

#include

#include

#include

int main()

{

int i = 0, j = 0;

int n;

while (~scanf("%d", &n))

{

for (i = 0; i < n; i++)

printf("%2d",i);

printf("\n");

for (i = 0; i < n; i++)

{

for (j = 0; j < abs(n / 2 - i); j++)

{

printf(" ");

Sleep(100);

}

for (j = 0; j < n - 2 * abs(n / 2 - i); j++)

{

printf("* ");

Sleep(100);

}

printf("\n");

Sleep(100);

}

}

return 0;

}

此外在提供一个打印菱形的代码

#include

int main()

{

int i, j, n;

{

while (~scanf("%d", &n))

{//上边部分

for (i = 0; i < n; i++)

{

for (j = i; j < n - 1; j++)

printf(" ");

for (j = 0; j < 2 * i + 1; j++)

printf("*");

printf("\n");

}

for (i = n - 2; i >= 0; i--) //这里i从n-2开始的,要是从n-1开始会出现两行相同的情况

{

for (j = i; j < n - 1; j++)

printf(" ");

for (j = 0; j < 2 * i + 1; j++)

printf("*");

printf("\n");

}//下边部分

}

return 0;

}

}

当然,肯定要在这给几个笔者参考过的文章

在这笔者再提供一个由字符组成的三角形

#include

int main()

{

int i, j, n, k = 0;

char ch = 'A';

printf("请输入行数:");

scanf("%d", &n);

for (i = 0; i < n; i++)

{

for (j = 0; j < 2*(n-i)-1; j++)

{

k++;

if (k % 2 != 0)

{

printf("%c", ch++);

}

else

printf("%c", ch);

}

printf("\n");

}

return 0;

}

15e28f3ed0ed393522f69080fe693038.png

最后可以大家可以尝试一下自己打印空心菱形以及由字符构成的图形

到此这篇关于利用C语言如何实现一些简单图形打印的文章就介绍到这了,更多相关C语言简单图形的打印内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值