开源 企业版 高校版 私有云 模力方舟 AI 队友
代码拉取完成,页面将自动刷新
捐赠
捐赠前请先登录
扫描微信二维码支付
取消
支付完成
支付提示
将跳转至支付宝完成支付
确定
取消
3 Star 20 Fork 7

Anbang24/cgames

加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
已有帐号? 立即登录
文件
master
分支 (1)
master
master
分支 (1)
master
克隆/下载
克隆/下载
提示
下载代码请复制以下命令到终端执行
为确保你提交的代码身份被 Gitee 正确识别,请执行以下命令完成配置
初次使用 SSH 协议进行代码克隆、推送等操作时,需按下述提示完成 SSH 配置
1 生成 RSA 密钥
2 获取 RSA 公钥内容,并配置到 SSH公钥
在 Gitee 上使用 SVN,请访问 使用指南
使用 HTTPS 协议时,命令行会出现如下账号密码验证步骤。基于安全考虑,Gitee 建议 配置并使用私人令牌 替代登录密码进行克隆、推送等操作
Username for 'https://gitee.com': userName
Password for 'https://userName@gitee.com': # 私人令牌
master
分支 (1)
master
cgames
/
cgame4-3(strings).cpp
cgames
/
cgame4-3(strings).cpp
cgame4-3(strings).cpp 3.38 KB
一键复制 编辑 原始数据 按行查看 历史
Anbang24 提交于 2022年08月31日 16:25 +08:00 . 第4章:字符动画和字符串动画
//https://gitee.com/devcpp/cgames anbangli@foxmail.com GNU GPL v3
//cgame4-3(strings)v1.cpp 多种字符串动画
#include <iostream> //C++基本输入输出函数库头文件
#include <cstdlib> //C++标准函数库头文件(包括随机数相关函数)
#include <ctime> //C++时间相关函数库头文件
#include <windows.h> //非标准库函数 Sleep 所需的头文件
#include <conio.h> //非标准库函数 kbhit 和 getch 所需的头文件
using namespace std; //使用C++中的名字空间"std"
int main() {
cout << "多种字符串动画" << endl;
char str[120] = "Welcome to Wuhan, my friends! Have a good time here!";
int i, len = strlen(str); //求出字符串长度
cout << "字符串闪烁" << endl;
while (!kbhit()) {
cout << "\r" << str ; //光标回到行首,输出显示字符串
Sleep(250);
cout << "\r"; //光标回到行首
for (i = 0; i < len; i++)
cout << ' ';
Sleep(250);
}
getch(); //读取用户键入的字符,防止被用于后续输入
cout << "\r" << str << endl; //光标回到行首,输出显示字符串并换行
cout << "字符串逐渐显现和擦除" << endl;
i = -1;
while (!kbhit()) {
i = (i + 1) % (len * 2); //循环变量增1并对 len * 2 取余
if (i == 0 || i == len)
cout << "\r"; //光标回到行首
if (i < len) //[0, len-1]
cout << str[i]; //输出单个字符
else //[len, len*2-1]
cout << ' '; //输出字符
Sleep(50);
}
getch(); //读取用户键入的字符,防止被用于后续输入
cout << "\r" << str << endl; //光标回到行首,输出显示字符串并换行
cout << "字符串左右往复移动" << endl;
int width = 75; //一行内所能显示的最大字符数
len = strlen(str);
int left = 0;
int inc = 1; //左边空格字符每次增加量(increase)
while (!kbhit()) {
left += inc;
if (left == 0 || left == width - len) //左边空格数增长到最大值
inc = -1 * inc; //翻转字符增加量(1 <-> -1)
cout << '\r'; //光标回到行着
for (i = 0; i < left; i++) //输出左边空格
cout << ' ';
cout << str; //输出整个字符串
for (i = left + len; i < width; i++) //输出右边空格
cout << ' ';
Sleep(100);
}
getch();
cout << endl;
cout << "字符串从右向左滚动输出" << endl;
strcpy (str, "Welcome to Wuhan, my friends! ");
len = strlen(str); //字符串长度
width = 60; //屏幕上最大输出字符数
int pos = 0; //字符串起始输出点
while (!kbhit()) {
pos = (pos + 1) % len; //输出起始点增1,并对 len取余
cout << "\r";
for (i = 0; i < width; i++ )
cout << str[(pos + i) % len];
Sleep(150);
}
getch();
cout << endl;
cout << "字符串从右向左滚动输出(正确处理中英文混和字符串)" << endl;
strcpy (str, "Welcome to Wuhan! 欢迎来到英雄城市武汉! ");
len = strlen(str); //字符串长度
width = 40; //屏幕上最大输出字符数
pos = 0; //字符串起始输出点
while (!kbhit()) { //主循环
if (str[pos] > 0 && str[pos] < 127) //如果字符串当前元素为英文字符
pos = (pos + 1) % len; //起始点增1,并对 len取余
else //非英文字符
pos = (pos + 2) % len; //起始点增2 并对len取余
cout << "\r";
for (i = 0; i < width; i++ )
cout << str[(pos + i) % len];
Sleep(150);
}
getch();
cout << endl;
return 0;
}
Loading...
举报
举报成功
我们将于2个工作日内通过站内信反馈结果给你!
请认真填写举报原因,尽可能描述详细。
请选择举报类型
取消
发送
误判申诉

此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。

如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。

取消
提交

简介

一些经典字符型游戏程序。Classic C/C++ Character User Interface Games
暂无标签
GPL-3.0
使用 GPL-3.0 开源许可协议
取消

发行版

暂无发行版

贡献者

全部

语言

近期动态

不能加载更多了
编辑仓库简介
简介内容
主页
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C
1
https://gitee.com/devcpp/cgames.git
git@gitee.com:devcpp/cgames.git
devcpp
cgames
cgames
master
点此查找更多帮助

搜索帮助

评论
仓库举报
回到顶部
登录提示
该操作需登录 Gitee 帐号,请先登录后再操作。
立即登录
没有帐号,去注册

AltStyle によって変換されたページ (->オリジナル) /