当前位置: 首页 > news >正文

仿快递网站源码州网站建设

仿快递网站源码,州网站建设,电商平台网站建设策划书,集团网前言 不知道大家在做题时有没有遇到过“字符串旋转”的题目#xff0c;很多人可能没有思路#xff0c;这里我不具体讲解单一的题目#xff0c;而是展现一个“弹幕滚动”的示例#xff0c;相信大家看懂后就能做出“字符串旋转”的题了#xff01; 技术名词解释 1.什么是“… 前言 不知道大家在做题时有没有遇到过“字符串旋转”的题目很多人可能没有思路这里我不具体讲解单一的题目而是展现一个“弹幕滚动”的示例相信大家看懂后就能做出“字符串旋转”的题了 技术名词解释 1.什么是“字符串旋转”  举个例子给定字符串“abcdef”左旋一个单位就是“bcdefa”两个就是“cdefab”右旋同理。 2.何为弹幕滚动 弹幕滚动就是基于字符串旋转的原理只不过是持续进行旋转罢了比如“abcdef”紧接着的是“bcdefa”……每次显示都会覆盖上次显示的内容用到回车符接下来我们主要介绍从右向左滚动的实现 整体架构思路 1.正常遍历字符串 给定一个字符串我们来看一下正常遍历的代码是怎样的 int main() {char str[] da jia hao ,wo shi xxx;int len strlen(str);int i;for (i 0; i len; i){putchar(str[i]);}return 0; } 大家应该都对这段代码没什么问题那就应该知道这段代码是从字符串的第一个元素开始打印的要想滚动显示下一次就应该从第二个元素开始打印吧并且首元素还要放在最后一位第三次是第三个元素打头末尾放第二元素……要想实现这种流程我们不妨再借助一位变量的帮助这就有了我们的第二个思路 2.另创变量cnt打头元素靠他变末尾元素照不误 int i; int cnt 0; char str[] da jia hao, wo shi xxx; int len strlen(str);for (i 0; i len; i){if (cnt i len)putchar(str[cnt i]);elseputchar(str[cnt i - len]);} 分析一下代码在遍历过程中如果cnti没有超出最大下标len-1那么所要显示的元素下标便是cnti,但如果大于等于lencnti就不可能作为数组下标了吧因为会越界但是没关系我们最后要显示的是本次所显示的开头元素之前的元素所以最后要显示的元素下标是cnti-len当然现在我们的cnt是0所以跟之前的只有i的情况没啥区别但只要当cnt1时是不是就是从第二个元素开始遍历了呢cnt2时是从第三个开始以此类推…… 列举一下看看假设字符串长度为5abcde当cnt1时i从0到4递增当i0,1,23时只靠if语句就可以显示bcde了当i4时cnti等于5该走else语句了显示的是cnti-len也就是0下标因此最后一个元素就是首元素这不就达成了预期吗 OK思路到这里没问题吧接下来就要考虑如何让cnt变化了也就是有了思路三。 3.cnt背后当大佬让谁出场谁出场 cnt该怎么变化呢我们知道弹幕滚动的关键变化就在开头和结尾第一次以字符串的首元素为开头第二次以次元素开头……不知道大家有没有发现每当显示开头字符的时候i的值必然为0而要显示的首字符又是依次递增的那是不是只要让cnt依次递增首字符也就依次往后排了呢OK就是这个思路往下走cnt初始值是0依次递增下去直到cntlen-1时也就是最后一个元素下标时str【cnti】(i0)就是字符串的最后一个字符如果想再来一遍滚动就让cnt重新归0并重复上述过程即可。代码如下 int main() {int i;int cnt 0;char str[] da jia hao, wo shi xxx;int len strlen(str);while (1){putchar(\r);for (i 0; i len; i){if (cnt i len)putchar(str[cnt i]);elseputchar(str[cnt i - len]);}Sleep(500);if (cnt len - 1)cnt;elsecnt 0;}return 0; } 技术细节 1.代码补充 最后代码示意图中采用了无限循环“字幕滚动”的形式为了避免“字符满天飞”的现象用了‘\r’每次显示弹幕但会覆盖掉上次的弹幕因此最终屏幕上也只有一行字符同时为了体现出“滚动”的效果中间用了Sleep函数延缓程序短暂时间也就是每次显示完一行弹幕后都会延缓0.5秒才显示下一次的弹幕 2.关于弹幕从左向右滚动 无需改变过多代码只需将下面的if else语句稍加修改即可 int main() {int i;int cnt 0;char str[] da jia hao, wo shi xxx;int len strlen(str);while (1){putchar(\r);for (i 0; i len; i){if (cnt i len)putchar(str[cnt i]);elseputchar(str[cnt i - len]);}Sleep(500);if (cnt 0)cntlen-1;elsecnt --;}return 0; } 小结 学好字幕滚动字符串旋转都是小菜
http://www.zqtcl.cn/news/975626/

相关文章:

  • 万网一台虚拟主机做多个网站wordpress畅言插件
  • 南宁网站建设优势辽宁大连直客部七部电话
  • 淮安网站建设报价.net网站制作
  • 做母亲节网站的素材最好用的搜索引擎排名
  • 免费创建个人网站网站怎么做下载内容
  • 网站群建设路径桥头网站建设
  • 网站建设创业经历深圳龙华区教师招聘
  • 网站开发的形式全网营销代运营
  • 集团网站设计方案wordpress+仿简书模板
  • 展览馆网站建设方案书wordpress怎么重装
  • 做半成品网站网站开发合同模板
  • 建筑工程师的工作内容山东网站营销优化开发
  • 织梦网站首页错位淄博汽车网站建设
  • 匿名聊天网站开发长沙关键词快速排名
  • 成都网站设计报价手机微信官方网站
  • 网页设计模板网站免费做那个男女的视频网站
  • 庄河网站建设如何上传文件到网站
  • 北京企业网站改版wordpress comer
  • 做租赁的行业网站腾讯云服务器用什么做网站
  • 承德优化网站建设建设旅游网网站软件
  • 金山专业网站建设科技作品手工
  • 企业网站开发丨薇大型门户网站制作教程
  • m开头的网站开发工具青少儿编程
  • 确定网站风格域名查询中国万网
  • 邢台网站优化定制网站内怎么做搜索
  • 深圳公司网站开发济宁医院网站建设
  • vr功能网站建设手机网站引导页js插件
  • 汕头企业建站系统模板沈阳网站建设q479185700棒
  • 外包公司做网站多少百度做推广一般要多少钱
  • asp静态网站用shopify 做网站