C语言自编程序3——模拟上下开关窗帘
#include "stdio.h"
#include "stdlib.h"
#include "windows.h"
void main()
{
int i,j=15,k,h,len,g;
char select,img='U';
printf("select (u/U) open the window or select (s/S) close the window:");
scanf("%c",&select);
if(select=='u'||select=='U')
{
for(i=1;i<=j;i++) //关窗帘前先显示出窗帘
{
for(k=1;k<=30;k++)
printf("%c",img);
printf("\n");
}
Sleep(1000);
system("cls");
//开始开窗帘
j=15; //模拟窗帘高度//拆解为15行
h=1;
len=30; //模拟一行窗帘划分成多少格格
for(;1;)
{
for(k=1;k<=len;k++) //模拟输出一个罗马杆
printf("%c",'+');
printf("\n");
j--;
for(i=1;i<=j;i++)//模拟输出窗帘
{
for(k=1;k<=len;k++)
printf("%c",img);
printf("\n");
}
for(i=1;i<h;i++)//窗帘上升,用空行补充留空的行
{
for(k=1;k<=len;k++)
printf("%c",' ');
printf("\n");
}
h++;
for(k=1;k<=len;k++)//模拟窗户下面的阳台
printf("%c",'+');
printf("\n");
if(j==1)
break;
Sleep(1000);
system("cls");
}
}
//开始关窗帘,仿照上面代码,增加窗帘行,减少空行
//关窗帘是物联2131学生实现的
if(select=='s'||select=='S')
{
//关闭窗帘
len=30; //模拟一行窗帘划分成多少格格
j=1; //控制窗帘行的数量,刚开始为1,然后关窗帘就开始模拟增加到2行 3行 4行,也就是窗帘往下了,窗帘多了
h=1; //控制空行的变化,h用来遍历g的数量
g=15; //代表空行的数量
//下面解释下,关窗帘前,首先要把窗帘的状态模拟出来,也就是
//最上面一个罗马杆模拟
//接着是收起来的一行窗帘模拟
//然后是用空行代表的空白窗口模拟
//最后是模拟出一个窗台边沿
//假如这个窗户高度是12行,也就是1行罗马杆,1行收起来的窗帘,9行空行,1行窗台边沿
//后面就要在这个基础上,1行罗马杆不变,而窗帘就要开始增加,空行开始减少,窗帘加1行,空行就要减少1行,这两个配合联动
//1行的窗台边沿位置不动,也不变
//下面模拟
for(;1;)
{
// 1 罗马杆
for(k=1;k<=len;k++) //模拟输出一个罗马杆
printf("%c",'+');
printf("\n");
// 2 多行的窗帘(第一次只显示一行,第二次循环的时候,就要开始加窗帘行)
for(i=1;i<j;i++) //这里用i遍历j的数量,看有多少行窗帘要显示出来
{
//里面就是固定显示窗帘的空行
for(k=1;k<=len;k++)
printf("%c",img);
printf("\n");
}
// 3 多行空行(第一次显示的是多行,第二次循环的时候,就开始减少空行)
for(h=1;h<=g;h++)
{ for(k=1;k<=len;k++)
printf("%c",' ');
printf("\n");
}
// 4 窗台边沿
for(k=1;k<=len;k++)//模拟窗户下面的阳台
printf("%c",'+');
printf("\n");
j++;
g--;
//控制退出循环,借用空行变量,最后空行就归1了
if(h==1)
break;
//刷屏,让窗口位置固定
Sleep(1000);
system("cls");
}
}
getchar();
getchar();
}
相关内容
相关资讯
-
nvidia公司(nvidia工资待遇)
大家好,如果您还对nvidia公司不太了解,没有关系,今天就由本站为大家分享nvidia公司的知识,包括nvidia工资待遇的问题都会给大家分析到,还望可以解
-
2010年民生银行的股票平均收益民生银行大额存款有风险吗
其实2010年民生银行的股票平均收益的问题并不复杂,但是又很多的朋友都不太了解民生银行大额存款有风险吗,因此呢,今天小编就来为大家分享2010年民生银行的股票平均收益的一些知识,希望可以帮助到大家,下面我们一
-
1970到1980英镑汇率贬值1949年英镑贬值
大家好,如果您还对1970到1980英镑汇率贬值不太了解,没有关系,今天就由本站为大家分享1970到1980英镑汇率贬值的知识,包括1949年英镑贬值的问题都会给大家分析到,还望可以解决大家的问题,下面我们就
-
东方财富网天龙集团股票行情天龙集团主营业务
老铁们,大家好,相信还有很多朋友对于东方财富网天龙集团股票行情和天龙集团主营业务的相关问题不太懂,没关系,今天就由我来为大家分享分享东方财富网天龙集团股票行情以及天龙集团主营业务的问题,文章篇幅可能偏长,希望
-
10国想撤回对科索沃承认
10国想撤回对科索沃承认10国想撤回对科索沃承认10国想撤回对科索沃承认2021年8月3日 星期二 11:53据俄罗斯卫星通讯社sputniknews报道,塞尔维亚报纸《Poli
-
st上市公司什么意思?上市公司ST
各位老铁们,大家好,今天由我来为大家分享st上市公司什么意思,以及上市公司ST的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的