【c++】字符串循环左移
来源:互联网 发布:unity5.3.4f1破解mac 编辑:程序博客网 时间:2024/03/29 23:49
输入一个字符串和一个非负整数N,要求将字符串循环左移N次。
输入格式:
输入在第1行中给出一个不超过100个字符长度的、以回车结束的非空字符串;第2行给出非负整数N。
输出格式:
在一行中输出循环左移NN次后的字符串。
输入样例:
Hello World!2
输出样例:
llo World!He
程序代码:
#include<stdio.h>void left_1(char* str,int length);void left_n(char*str,int length,int time);int main(){ //100个字符加上‘\0’需要的空间是101字节 char str[101]; int i=0; char c; //输入字符串的方法 while((c=getchar())!='\n') { str[i]=c; i++; } str[i]='\0'; int N; scanf("%d",&N); left_n(str,i,N); //for(int j=0;j<i;j++) printf("%s",str); return 0; }//left_1()函数实现字符串左移一位void left_1(char* str,int length){ char c= str[0]; int i=0; for(i=0;i<length-1;i++) { str[i]=str[i+1]; } str[i]=c;}//调用left_1()函数time次,实现循环左移time次void left_n(char*str,int length,int time){ for(int i=0;i<time;i++) left_1(str,length);}
运行结果:
在这里两个函数left_1()
和left_n()
的定义体现了一种思路,即当某种操作需要重复多次时,可以先想想怎样实现操作一次,将这种操作写成函数,然后重复调用该函数即可实现重复多次这种操作。也就是把复杂问题一分为二:1.考虑怎样实现单次操作;2.多次调用。这种思路在应对复杂问题是有一些帮助。
0 0
- 【c++】字符串循环左移
- 字符串循环左移
- 循环左移字符串
- 循环左移字符串
- 字符串循环左移
- 字符串循环左移
- 循环左移字符串
- 字符串循环左移
- 字符串循环左移
- 循环左移字符串
- 字符串循环左移
- 字符串循环左移
- 字符串循环左移
- 字符串循环左移
- 字符串循环左移
- 字符串循环左移
- 字符串循环左移
- c 循环左移
- JAVA反射API以及常见用法
- Codeforces 300C Beautiful Numbers 【组合数学】
- Codeforces Round #345 (Div. 1) E - Clockwork Bomb
- android中很多情况下我们需要会使用多个fragment,我们这时就需要一个showFragment来实现fragment之间的切换
- epoll的高效实现原理
- 【c++】字符串循环左移
- hdu 5171 fib矩阵快速幂
- Git 教程索引
- BigInteger(HDU1002)和BigDecimal处理
- 冒泡排序
- 滑雪(记忆化)
- 数的同构 检测程序 为什么会花这么多时间???
- 新闻客户端应用项目源码
- OBIEE中JS的使用--在分析列中添加链接