7-31 字符串循环左移 (20 分)

简介: 输入一个字符串和一个非负整数N,要求将字符串循环左移N次。

输入一个字符串和一个非负整数N,要求将字符串循环左移N次。


输入格式:


输入在第1行中给出一个不超过100个字符长度的、以回车结束的非空字符串;第2行给出非负整数N。


输出格式:


在一行中输出循环左移N次后的字符串。


输入样例:


1. Hello World!
2. 2

结尾无空行


输出样例:


llo World!He

结尾无空行


难点有二:

1.字符的移动,我们可以采用冒泡的思路进行移动

2.最难的一点算是k>字符串难度了,我采用的是回到原点的代码程序。

#include <stdio.h>
#include <string.h>
int main() {
  char str[101], t;
  gets(str);
  int k;
  scanf("%d", &k);
  int len = strlen(str);
  for (int i = 0; i < k; i++) {
    if (i == len) {//若len<k,回到原点,并且让k-len;
      k -= len;
      i = 0;
    }
    for (int j = 0; j < len - 1; j++) {//移动字符
      t = str[j];
      str[j] = str[j + 1];
      str[j + 1] = t;
    }
  }
  for (int i = 0; i < len; i++)//输出字符
    printf("%c", str[i]);
  return 0;
}

好了,题目就到这里了。

相关文章
|
Linux
Linux报错:tar: Error Is Not Recoverable: Exiting Now
Linux报错:tar: Error Is Not Recoverable: Exiting Now
873 0
|
JavaScript API
vue3使用ref和reactive
vue3使用ref和reactive
Java如何求得字符串的长度
Javad得到字符串的长度方法
1143 0
Java如何求得字符串的长度
|
Android开发 开发者 容器
Android自定义View:MeasureSpec的真正意义与View大小控制
Android自定义View:MeasureSpec的真正意义与View大小控制
357 0
Android自定义View:MeasureSpec的真正意义与View大小控制
|
Java Spring 容器
Spring中用于装配组件的常见扩展点的介绍
在Spring的项目中,组件的组装离不开Spring提供的一些扩展点,本文对BeanFactoryPostProcessor、FactoryBean、BeanPostProcessor、@Import这四个扩展点做了简单的介绍。
199 4
|
JSON Java uml
原型模式 与 建造者模式(1)
原型模式 与 建造者模式(1)
272 0
原型模式 与 建造者模式(1)
|
人工智能 运维 资源调度
华为重磅发布5G核心芯片天罡,全球首款5G折叠屏手机2月面世
上个星期,任正非在接受媒体采访时曾表示:全世界能做 5G 的厂家很少,华为做得最好。处在全球视线焦点之中的华为突然决定集中发布自己的最新技术。今天上午,华为在北京召开了 5G 发布会,发布了全球首款 5G 基站核心芯片天罡,以及 5G Modem Balong 5000。
426 0
华为重磅发布5G核心芯片天罡,全球首款5G折叠屏手机2月面世
|
Web App开发
RocksDB 写入流程详解
最初的写入流程,继承自 leveldb,多个 写线程组成一个 group, leader 负责 group 的 WAL 及 memtable 的提交,提交完后唤醒所有的 follwer,向上层返回。 支持 allow_concurrent_memtable_write 选项,在1的基础上,leader 提交完 WAL 后,group 里所有线程并发写 memtable。
|
容器
短视频平台搭建,相机截取图片位置
短视频平台搭建,相机截取图片位置
559 0
|
缓存 网络协议 安全