中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何用批处理显示一个金字塔出来?
« [1] [2] »
作者:
标题: 如何用批处理显示一个金字塔出来? 上一主题 | 下一主题
anqing
高级用户




积分 859
发帖 413
注册 2006-8-14
状态 离线
『楼 主』:  如何用批处理显示一个金字塔出来?

如何用批处理显示一个金字塔出来?

不能全用echo!


    如下:                                 *
                                           ****
                                        ********
10层的金字塔

2007-2-18 07:53
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
huzixuan
高级用户




积分 537
发帖 219
注册 2006-10-31
来自 芜湖
状态 离线
『第 2 楼』:  

http://www.cn-dos.net/forum/view ... ghlight=%2Bhuzixuan
兄请参考这个帖子



江湖远
碧空长
路茫茫

    一个人漫无目的的奔跑,风,刺骨的冷....
2007-2-18 08:53
查看资料  发短消息 网志   编辑帖子  回复  引用回复
slore
铂金会员





积分 5212
发帖 2478
注册 2007-2-8
状态 离线
『第 3 楼』:  

@echo off
setlocal enabledelayedexpansion
set empty=         
for /l %%i in (1,1,10) do (
set empty=!empty:~1!
set str=!str!顶
echo !empty!!str!
)
pause>nul

汉字占2个字节~所以这样就可以了……但是如果把“顶”换成“*”就对7了……

   此帖被 +11 点积分        点击查看详情   
评分人:【 PPdos 分数: +3  时间:2007-2-18 12:27
评分人:【 anqing 分数: +8  时间:2007-2-18 12:49


2007-2-18 09:34
查看资料  发短消息 网志   编辑帖子  回复  引用回复
anqing
高级用户




积分 859
发帖 413
注册 2006-8-14
状态 离线
『第 4 楼』:  

漂亮,加分

2007-2-18 12:49
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
anqing
高级用户




积分 859
发帖 413
注册 2006-8-14
状态 离线
『第 5 楼』:  

@echo off
setlocal enabledelayedexpansion
set empty=           
for /l %%i in (1,1,10) do (
set empty=!empty:~1!
set str=!str!新
echo !empty!!str!
)
setlocal enabledelayedexpansion
set empty1=           
for /l %%i in (1,1,10) do (
set empty1=!empty1:~1!
set str1=!str1!年
echo            !empty1!!str1!
)
setlocal enabledelayedexpansion
set empty2=           
for /l %%i in (1,1,10) do (
set empty2=!empty2:~1!
set str2=!str2!快
echo                       !empty2!!str2!
)
setlocal enabledelayedexpansion
set empty3=           
for /l %%i in (1,1,10) do (
set empty3=!empty3:~1!
set str3=!str3!乐
echo                                  !empty3!!str3!
)
pause>nul
学习一下

2007-2-18 13:12
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
slore
铂金会员





积分 5212
发帖 2478
注册 2007-2-8
状态 离线
『第 6 楼』:  

呵呵,新年快乐!!

2007-2-18 13:14
查看资料  发短消息 网志   编辑帖子  回复  引用回复
anqing
高级用户




积分 859
发帖 413
注册 2006-8-14
状态 离线
『第 7 楼』:  

希望能横排显示,正在想!有人想出来,发出来呀?

2007-2-18 13:17
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
slore
铂金会员





积分 5212
发帖 2478
注册 2007-2-8
状态 离线
『第 8 楼』:  

@echo off
setlocal enabledelayedexpansion
set empty=         
for /l %%i in (1,1,10) do (
set empty=!empty:~1!
set str1=!str1!新
set str2=!str2!年
set str3=!str3!快
set str4=!str4!乐
echo !empty!!str1!!empty!!empty!!str2!!empty!!empty!!str3!!empty!!empty!!str4!
)
pause>nul

   此帖被 +8 点积分        点击查看详情   
评分人:【 anqing 分数: +8  时间:2007-2-18 13:51


2007-2-18 13:37
查看资料  发短消息 网志   编辑帖子  回复  引用回复
6622186
高级用户





积分 894
发帖 411
注册 2007-2-17
状态 离线
『第 9 楼』:  赞杨

太棒了

2007-2-18 13:46
查看资料  发短消息 网志   编辑帖子  回复  引用回复
anqing
高级用户




积分 859
发帖 413
注册 2006-8-14
状态 离线
『第 10 楼』:  

好极了,希望能倒三角显示
就是把上面的,倒着显示,连在一起,字体为红色!

2007-2-18 13:52
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
slore
铂金会员





积分 5212
发帖 2478
注册 2007-2-8
状态 离线
『第 11 楼』:  

@echo off
color Fc
setlocal enabledelayedexpansion
::set empty=
set str1=新新新新新新新新新新
set str2=年年年年年年年年年年
set str3=快快快快快快快快快快
set str4=乐乐乐乐乐乐乐乐乐乐
for /l %%i in (1,1,9) do (
set empty=!empty!
set str1=!str1:~1!
set str2=!str2:~1!
set str3=!str3:~1!
set str4=!str4:~1!
echo !empty!!str1!!empty!!empty!!str2!!empty!!empty!!str3!!empty!!empty!!str4!
)
pause>nul

2007-2-18 14:08
查看资料  发短消息 网志   编辑帖子  回复  引用回复
slore
铂金会员





积分 5212
发帖 2478
注册 2007-2-8
状态 离线
『第 12 楼』:  

你再看看这个吧~哈哈

@echo off
color Fc
setlocal enabledelayedexpansion
set empty=
set str1=新新新新新新新新新新
::set str2=年年年年年年年年年年
set str3=快快快快快快快快快快
::set str4=乐乐乐乐乐乐乐乐乐乐
for /l %%i in (1,1,9) do (
set empty=!empty!
set str1=!str1:~1!
set str2=!str2!年
set str3=!str3:~1!
set str4=!str4!乐
echo !empty!!str1!!str2!!str3!!str4!
)
pause>nul

2007-2-18 14:17
查看资料  发短消息 网志   编辑帖子  回复  引用回复
anqing
高级用户




积分 859
发帖 413
注册 2006-8-14
状态 离线
『第 13 楼』:  

把你传我的,发了
@echo off
color Fc
setlocal enabledelayedexpansion
set empty=         
for /l %%i in (1,1,9) do (
set empty=!empty:~1!
set str5=!str5!新
set str6=!str6!年
set str7=!str7!快
set str8=!str8!乐
echo !empty!!str5!!empty!!empty!!str6!!empty!!empty!!str7!!empty!!empty!!str8!
)
set empty1=
set str1=新新新新新新新新新
set str2=年年年年年年年年年
set str3=快快快快快快快快快
set str4=乐乐乐乐乐乐乐乐乐
for /l %%j in (1,1,8) do (
set empty1=!empty1!
set str1=!str1:~1!
set str2=!str2:~1!
set str3=!str3:~1!
set str4=!str4:~1!
echo !empty1!!str1!!empty1!!empty1!!str2!!empty1!!empty1!!str3!!empty1!!empty1!!str4!
)

pause>nul

2007-2-18 14:47
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
namejm
荣誉版主

batch fan


积分 5226
发帖 1737
注册 2006-3-10
来自 成都
状态 离线
『第 14 楼』:  

正金字塔一:
@echo off
set num=5
setlocal enabledelayedexpansion
for /l %%i in (1,2,10) do (
    for /l %%j in (1,1,!num!) do set /p= <nul
    set /a num-=1
    for /l %%j in (1,1,%%i) do set /p=*<nul
    echo.
)
pause
正金字塔二:
@echo off
setlocal enabledelayedexpansion
for /l %%i in (1,1,10) do (
    set /a num=10-%%i
    for /l %%j in (1,1,!num!) do set /p= <nul
    for /l %%j in (1,1,%%i) do set /p=顶<nul
    echo.
)
pause
倒金字塔一:
@echo off
setlocal enabledelayedexpansion
for /l %%i in (9,-2,1) do (
    set /a num+=1
    for /l %%j in (1,1,!num!) do set /p= <nul
    for /l %%j in (1,1,%%i) do set /p=*<nul
    echo.
)
pause
倒金字塔二:
@echo off
setlocal enabledelayedexpansion
for /l %%i in (10,-1,1) do (
    set /a num+=1
    for /l %%j in (1,1,!num!) do set /p= <nul
    for /l %%j in (1,1,%%i) do set /p=顶<nul
    echo.
)
pause


   此帖被 +4 点积分        点击查看详情   
评分人:【 PPdos 分数: +4  时间:2007-2-21 09:13




尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。
2007-2-21 03:46
查看资料  发短消息 网志   编辑帖子  回复  引用回复
anqing
高级用户




积分 859
发帖 413
注册 2006-8-14
状态 离线
『第 15 楼』:  

代码学习了。

2007-2-21 04:04
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
« [1] [2] »
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: