【C|【C语言】打印图案——三角形、菱形等】问题一:
输入正整数n,输出n行字符图案。
例如n=5时输出:
文章图片
分析:
每行都是5个字符。
第n行之前,空格逐行减少1,*逐行增加1
第n行之后,空格逐行增加1,*逐行减少1
#include int main()
{
int n, i, j;
scanf("%d", &n);
for(i=1;
i<=2*n-1;
i++)
{
if(i<=n)
{
for(j=1;
j<=n-i;
j++) printf(" ");
for( ;
j<=n;
j++) printf("*");
printf("\n");
}
else
{
for(j=1;
j<=i-n;
j++) printf(" ");
for( ;
j<=n;
j++) printf("*");
printf("\n");
}
}
}
问题二:
输入正整数n,要求输出如下2*n+1行的菱形图案。(菱形右边不留多余空格)
例如n=2时输出:
文章图片
#include int main()
{
int n, i, j, k, t;
scanf("%d", &n);
for(i=1, j=n;
i<=n+1;
i++, j--)
{
for(k=1;
k<=j;
k++) printf(" ");
for(t=k;
t<=2*n+1-j;
t++) printf("*");
printf("\n");
}
for(i=n+2, j=1;
i<=2*n+1;
i++, j++)
{
for(k=1;
k<=j;
k++) printf(" ");
for(t=k;
t<=2*n+1-j;
t++) printf("*");
printf("\n");
}
}
问题3:
输入正整数n,输出如下中间数字为n的菱形图案。(菱形右边不留多余空格)
例如n=4时输出:
文章图片
#include int main()
{
int n, i, j, k, t, p;
scanf("%d", &n);
for(i=1, j=n-1;
i<=n;
i++, j--)
{
for(k=1;
k<=j;
k++) printf(" ");
for(t=1;
t<=i;
t++) printf("%d", t);
for(t=t-2;
t>=1;
t--) printf("%d", t);
printf("\n");
}
for(i=n+1, j=1, p=n-1;
i<=2*n-1;
i++, j++, p--)
{
for(k=1;
k<=j;
k++) printf(" ");
for(t=1;
t<=p;
t++) printf("%d", t);
for(t=t-2;
t>=1;
t--) printf("%d", t);
printf("\n");
}
}
推荐阅读
- C语言学习|第十一届蓝桥杯省赛 大学B组 C/C++ 第一场
- 【C】题目|【C语言】题集 of ⑥
- 单片机|自学单片机好找工作吗(会单片机能找什么工作?)
- 单片机|keil把源代码生成lib的方法
- c语言|一文搞懂栈(stack)、堆(heap)、单片机裸机内存管理malloc
- c语言|C语言初期学习遇到的特殊点 【三子棋详解】【初学者福音,详细总结,复习能手】
- 笔记|C语言数据结构——二叉树的顺序存储和二叉树的遍历
- c/c++|有感 Visual Studio 2015 RTM 简介 - 八年后回归 Dot Net,终于迎来了 Mvc 时代,盼走了 Web 窗体时代...
- C/C++|C/C++ basis 02
- 个人理解|【C语言基础之类型转换】