dos c语言显示符号图案,在DOS命令行窗口中显示出用各种字符拼凑出来的各种图案的实现方法,如本人头像...

注:文中例子是本人刚学C++编程语言的时候制作的,实现方法很简单,主要使用for循环语句,无需什么复杂烧脑的算法。

由于经常看到各种符号拼成的图案,感觉很有意思,所以自己也弄了个,纯属好玩。

a9ba04668ef0992ba854a410f3b61c27.png(作品---->原图)  

e7fefc853849fbd30a04718263fb9475.png

思   路:

>>实现这个图案的关键之处在于构造图案中的各个符号的定位

第一步:首先需要注意一下,在DOS命令行窗口中,默认情况下,每行之间的字符间距大概是每一行行内字符间间距的2倍(视觉上)。

如果你的图案是一个正方形,设图案每一行有X个字符(包含空格),则行数为X/2行。

451bd571a0c0a6f84660bd0828c8448d.png

第二步:按照这个视觉比例,用word文档创建如下内容(如下图,本文中每一行都是一个个星号组成的),并打印出来。

然后按照设计的图案的每行中的字符个数,在打印出来的纸中用铅笔画出一个边框(范围),然后可以在边框范围内尽情的连线,

最后拼成图案。(这一步解决图案中符号定位的问题,属于笨办法,但是十分有效,而且很直观,本例选择的行字符数为40。)

3791c564a519834419aeb13563f036b2.png

第三步:按行计算边框范围内连起来的线经过的点(每个点到该行行首的距离),经过则用自定义的符号显示,没有经过的点用空格显示。

可以在上图中标上刻度,方便计算每个符号的位置。

第四步:为了方便在命令行窗口中左右移动图案,给每一行行首都增加了一个int型变量,并根据该变量的值在每行行首添加空格,

使得图案的左边框离窗口的左边界之间的距离可以随意改变。该步骤可以省略。

第五步:本例实现代码如下(出现图案雏形后在根据视觉上的差异对部分字符位置进行微调)

#include

using namespace std;

int main(){

int a;

cout<

cin>>a; //图案左边框离窗口左边界的距离值,可替换成任意常量,也可以忽略。

for(int x=0;x<30;x++){

for(int y=0;y<60+a;y++){

if(x==0||x==29){if(y

else if(x==1){if(y

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/526261.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

android自定义圆圈动画,自定义view实现动画数字圆圈

我们要实现的是如下的效果&#xff0c;1.该view在设置属性之后时候会有数字和圆圈不断增长的效果2.该view在按下和放开状态下显示不同的样式。这种效果逻辑上并不复杂&#xff0c;底层灰色圆圈和蓝色扇形圆圈都是用canvas.drawArc()绘制出来的&#xff0c;中间的数字用drawtext…

android+水滴粘性动画,Android控件实现水滴效果

看到ios版上QQ刷新效果像水滴&#xff0c;然后自己也想着去实现这样的效果&#xff0c;这篇文章暂时没有介绍下拉刷新的效果&#xff0c;只是单独用一个控件来实现这样的水滴效果。效果图如下&#xff1a;一、总体思路1、画两个圆形&#xff0c;其中一个就是上面的大圆&#xf…

第一台鸿蒙手机是,第一台预装鸿蒙OS的手机终于登场。

原标题&#xff1a;第一台预装鸿蒙OS的手机终于登场。千呼万唤始出来&#xff0c;之前大家期待了很久的鸿蒙OS它终于真正到来了。据工业和信息化部公布的消息&#xff0c;搭载鸿蒙OS的新款华为手机正式入网了&#xff0c;这也将是华为第一台预装鸿蒙OS的新款手机。但令人完全没…

html跳转网页为什么网页无法访问,朋友的网站被网址跳转,导致官网无法正常访问...

原标题&#xff1a;朋友的网站被网址跳转&#xff0c;导致官网无法正常访问昨天中午接到客户的一个电话&#xff0c;告知其某个网站打开之后直接跳转到其他的网站。客户的这个网站&#xff0c;不是我们做的&#xff0c;但是关系一直保持的不错&#xff0c;所以就顺带给他解决一…

2021中卫一中高考成绩查询,2021年宁夏高中排名及分数线 高考本科升学率排行榜...

2019年宁夏高中排名及分数线 高考本科升学率排行榜如何判断一所高中学校的优劣好坏&#xff0c;人们往往从这几个方面来看&#xff1a;高考/竞赛成绩、生源质量、师资力量、软硬件设施、管理水平等。高考成绩因为最直接&#xff0c;最广为关注&#xff0c;但是很多时候未免有失…

微观经济学如何计算机会成本,【微观经济学】机会成本

概念&#xff1a;机会成本机会成本是指你做了某项选择&#xff0c;而不得不因此失去的其他利益。比如你选择了A&#xff0c;就必须放弃B&#xff0c;B就是A的机会成本。对企业来说&#xff0c;最优方案的机会成本&#xff0c;就是次优方案可能带来的收益。机会成本是听起来很简…

计算机网络技术俄罗斯方块,《The Tetris Effect》:这本新书讲述了俄罗斯方块的传奇故事...

原标题&#xff1a;《The Tetris Effect》:这本新书讲述了俄罗斯方块的传奇故事在游戏发展史上&#xff0c;俄罗斯方块是个传奇。没有一款游戏像它一样影响深远&#xff0c;受到全球不同人的喜爱。在即将出版的《The Tetris Effect》(俄罗斯方块效应)中&#xff0c;科技记者 Da…

计算机主机响是什么原因,电脑主机发出不同的响声及解决措施

电脑在使用一段时间后&#xff0c;难免都会遇到些小问题。如很多朋友使用的台式电脑&#xff0c;在开机的时候&#xff0c;主机就会发出很大的响声。其实当主机发出不同响声时&#xff0c;就代表着不同的故障&#xff0c;我们可以根据相应的响声来找出故障的所在。今天U大侠小编…

计算机上的键有什么功能吗,电脑功能键都有什么用,电脑上功能键的用法_系统圣地...

电脑大家都使用了不少年了&#xff0c;但是对于键盘最上方的F1到F12的功能都是什么&#xff0c;相信不少小伙伴都一知半解吧&#xff0c;毕竟平时使用的比较少&#xff0c;但是在某些情况下&#xff0c;这些功能键能够有效的提升你的做事效率&#xff0c;所以了解一下还是不错的…

云测试软件详解,软件测试之登录测试详解

一、功能测试–登录功能性测试用例包括&#xff1a;1.什么都不输入&#xff0c;点击提交按钮&#xff0c;看提示信息。(非空检查)2.输入已注册的用户名和正确的密码&#xff0c;验证是否登录成功&#xff1b;3.输入已注册的用户名和不正确的密码&#xff0c;验证是否登录失败&a…

计算机启用时间 查找方式,电脑实用知识技巧 篇六:不需要第三方软件,这种方法查看系统启动时间...

电脑实用知识技巧 篇六&#xff1a;不需要第三方软件&#xff0c;这种方法查看系统启动时间2019-04-04 09:19:210点赞0收藏0评论上次我们说到&#xff1a;开机小助手&#xff0c;要让我们看到开机时间&#xff0c;必须添加自启动项目&#xff0c;这将拖慢我们的开机速度。有没有…

迷你世界显示未连接服务器成功,迷你世界登录未成功是什么意思 | 手游网游页游攻略大全...

发布时间&#xff1a;2017-08-29迷你世界两周年庆活动到来,那么两周年庆迷你世界有哪些活动呢?很多小伙伴都不了解吧,那么下面牛游戏小编就给大家仔细的介绍一下迷你世界两周年庆活动吧,希望能给大家带来帮助. 迷你世界两周年庆活动 世界守护计划--环保筑梦师 ...标签&#xf…

广播 消息 没有服务器,服务器节点消息广播

服务器节点消息广播 内容精选换一换添加节点时提示“添加节点失败&#xff0c;节点已存在”。待添加节点的服务器上已安装系统性能分析或者添加过节点。如果待添加节点的服务器上已安装系统性能分析&#xff0c;需要登录服务器卸载系统性能分析&#xff0c;详细步骤请参见卸载&…

微信收款音响s3服务器断开,微信收款音响s2和s3有什么区别

微信收款音响s2和s3的区别&#xff1a;1、S2是一款四角梯形形状的音箱&#xff0c;S3是一款圆角正方体形状的音箱。2、S2电池1200mAh&#xff0c;S3电池1800mAh。3、S3可以连接WiFi&#xff0c;S2都不可以。音响(Audio electronics)广义上是指一种利用电子回路设计进行音讯与电…

手机访问服务器中的数据库文件,手机连接服务器数据库文件在哪里

手机连接服务器数据库文件在哪里 内容精选换一换通过PostgreSQL客户端连接实例的方式有非SSL连接和SSL连接两种&#xff0c;其中SSL连接通过了加密功能&#xff0c;具有更高的安全性。绑定弹性公网IP并设置安全组规则。对目标实例绑定弹性公网IP。关于如何绑定弹性公网IP&#…

浅谈C语言字节对齐

首先&#xff0c;我们得知道为什么要进行内存对齐&#xff0c;它的意义何在&#xff1f;在这儿可以先看这样一张图。&#xff08;手绘请见谅&#xff01;&#xff01;&#xff01;&#xff09; 我们知道&#xff0c;在32位CPU下&#xff0c;一个读取周期可以读取四个字节。一个…

C语言中函数调用中的传值与传址

首先介绍一下函数中传值与传址的概念&#xff1a; 传值&#xff1a;传值&#xff0c;实际是把实参的值赋值给行参&#xff0c;相当于copy。那么对行参的修改&#xff0c;不会影响实参的值 。传址&#xff1a; 实际是传值的一种特殊方式&#xff0c;只是他传递的是地址&#xf…

C语言交换两个变量数值的几种方法

因为经常见到这类题目&#xff0c;就自己总结了以下几种办法 1. 创建中间变量 这是最快也是最简单的办法&#xff0c;例如&#xff1a; #include<stdio.h>int main() {int a10;int b20;int temp;printf("交换前a,b的值为:\n");printf("a%d\n",a);…

vim中自动添加文件的作者、时间信息、版本等

1、linux系统版本&#xff1a;ubuntu-10.10 2、打开&#xff1a;vim ~/.vimrc 在文件末尾添加如下内容&#xff0c;如图一 &#xff08;图一&#xff09; 3、新建文件后直接按“F4”可插入作者文件信息&#xff0c;如图二所示 &#xff08;图二&#xff09;

数组的下标越界与内存溢出

很相似的两个概念&#xff0c;一不小心就会混淆 首先&#xff0c;对两个名词做一个大概的解释&#xff1a; 下标越界 在引用数组元素时&#xff0c;使用的下标超过了该数组下标的应有范围&#xff0c;但应注意的是&#xff1a; C/C不对数组做边界检查。 可以重写数组的每一…