C语言编程 两种方法打印一个菱形(渐入显示)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了C语言编程 两种方法打印一个菱形(渐入显示),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1652字,纯文字阅读大概需要3分钟。
内容图文
![C语言编程 两种方法打印一个菱形(渐入显示)](/upload/InfoBanner/zyjiaocheng/836/7e7ad376764542cd82da17b466fd92cb.jpg)
<1>第一种方法,利用字符数组定义一个空格数组和一个符号数组,
然后找到数组中间的元素,操作空格字符从中间开始向两边与符号数组的元素互换,
每互换一次进行一次输出,打印上半个菱形和下半个菱形需要两个for语句的支持。
源代码如下:
#include<stdio.h>
#include<stdlib.h>
#include<windows.h>//为了使用延时语句Sleep而调用
int main()
{
char suu1[] = "*****************************************";//符号语句
char suu2[] = " ";//空格语句
int right, left=0, mid;
right = strlen(suu2)-1;
mid = left + (right - left) / 2;
for (left = mid , right = mid ; left >= 0&&right<=strlen(suu2)-1 ; left--, right++)//上半部分打印
{
suu2[left] = suu1[left];
suu2[right] = suu1[right];
printf("%s\n", suu2);
Sleep(600);//延时操作
}
for (left = 0, right = strlen(suu1)-1; left <=mid && right >=mid; left++, right--)//下半部分打印
{
suu2[left] = ' ';
suu2[right] = ' ';
printf("%s\n", suu2);
Sleep(600);
}
system("pause");
return 0;
}
这种方法较为浅显易懂,但缺点是菱形的大小是通过所定义的字符数组的长度来定义的,不是特别灵活。
<2>
第二种方法算法上相比第一种较为复杂,但是可操控性比较高,主要是通关观察来得到所打印符号的行,列和符号个数之间的数学关系来打印。
源代码如下:
#include<stdio.h>
#include<stdlib.h>
int main()
{
int line = 0,m,k;
scanf("%d", &line);//通过输入来确定菱形的大小
int i = 0;
for (i = 0; i < line; i++)//上半部分打印
{
for (m = 0; m<line - 1 - i; m++)//观察所得关系式
printf(" ");
for (m= 0; m <2 * i+ 1; m ++)
{
printf("*");
}
printf("\n");
}
for (i = 0; i < line-1; i++)//下半部分打印
{
for (m = 0; m<=i; m++)
printf(" ");
for (m = 0; m <2 * (line-i-1)-1; m++)//观察得到的关系式
{
printf("*");
}
printf("\n");
}
system("pause");
return 0;
}
运行结果实例:
内容总结
以上是互联网集市为您收集整理的C语言编程 两种方法打印一个菱形(渐入显示)全部内容,希望文章能够帮你解决C语言编程 两种方法打印一个菱形(渐入显示)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。