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

设计师网站十大网站排名河南今日头条新闻最新

设计师网站十大网站排名,河南今日头条新闻最新,招远 两学一做 网站,提升学历英语使用多种方法实现字符串左旋转 一、 左移法 思路:每一次通过移动第一个字符,然后把后面的字符前移,然后再进行移动第一个字符再前移。故需要使用嵌套循环,外层循环控制移动第一个字符的次数,第二个循环进行字符前移 …

使用多种方法实现字符串左旋转

一、 左移法

思路:每一次通过移动第一个字符,然后把后面的字符前移,然后再进行移动第一个字符再前移。故需要使用嵌套循环,外层循环控制移动第一个字符的次数,第二个循环进行字符前移

代码如下:

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
#include <assert.h>void left_move(char* arr, int k)
{	assert(arr);//断言引用头文件 <assert.h>int len = strlen(arr);//注意引头文件 <string.h>for (int i = 0; i < k; i++){char tmp = *arr;//使用临时值接收第一个字符for (int j = 0; j < len - 1; j++)//前移{*(arr + j) = *(arr + j + 1);}*(arr + len - 1) = tmp;//把最后一个字符放回最后一个数组位置}
}
int main()
{int k = 0;char arr[30] = "ABCD";printf("请输入要左旋转字符的个数k:");scanf("%d",&k);left_move(arr, k);printf("%s", arr);return 0;
}

二、分步逆序法

思路:先使用一个移动函数,把前k个字符反转,再移动k后面字符反转。最后整体反转。即数组ABCD k为2,1.BA->2.DC->3DCBA。

代码如下:

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
#include <assert.h>void reserve(char* left,char* right)//初始位置 旋转位置
{assert(left && right);while (left < right)//循环进行交换字符{char tmp = *left;*left = *right;*right = tmp;left++;right--;}
}void left_move(char* arr, int k)
{int len = strlen(arr);reserve(arr,arr+k-1);reserve(arr+k, arr+len-1);reserve(arr,arr+len-1);
}int main()
{int k = 0;char arr[30] = "ABCD";printf("请输入要左旋转字符的个数k:");scanf("%d",&k);left_move(arr, k);printf("%s", arr);return 0;
}

三、函数法

思路:使用strncat把数组arr复制一份并放在arr数组中。通过循环直接获取对应位置字符串方法arr2即可。

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
#include <assert.h>void left_move(char* arr, char* arr2, int k)
{int len = strlen(arr);strncat(arr, arr, len);//ABCD->ABCDABCDfor (int i = 0; i < len; i++){arr2[i] = *(arr + k + i);//获取k + i个字符}
}int main(void)
{int k = 0;char arr[30] = "ABCD";char arr2[30] = { '\0'};printf("请输入要左旋转字符的个数k:");scanf("%d", &k);left_move(arr,arr2,k);printf("%s", arr2);return 0;
}
http://www.ds6.com.cn/news/44615.html

相关文章:

  • 网站建设使用的工具黑帽seo培训
  • 做的网站打印全乱掉了简述获得友情链接的途径
  • 怎么免费做网站教程自然搜索优化
  • 做app做网站从何学起好的seo网站
  • 网站建设客服工作搜索引擎推广有哪些
  • 长沙协会网站设计专业服务怎么做网页
  • 网站建设wesnowsat芜湖网络营销公司
  • 北京好的网站设计公司网站域名注册
  • 凡科 wordpress台州关键词优化推荐
  • 网络公司做网站后交代给客户什么360搜索网址是多少
  • 重庆学校网站建设武汉seo优化顾问
  • 做药品的b2b网站重庆网站排名
  • 江门网页模板建站重庆百度推广的代理商
  • 重庆企业建站模板免费个人网站制作
  • 广州白云区做网站二级域名查询网站
  • c 网站开发视频教程营销型网站和普通网站
  • 法制办网站建设惠州seo外包服务
  • 重庆装修公司口碑排名求职seo服务
  • 网络营销网站建设公司产品推广介绍
  • wordpress 私活乐云seo官网
  • 怎么做可以聊天的网站吗网络营销推广实战宝典
  • 国外手做网站推广普通话宣传语100字
  • 模板网站 怎么做优化求职seo
  • 网站开发项目报价方案网站联盟营销
  • 团购网站模板免费下载百度下载官网
  • 什么网站ppt做的好宁波微信推广平台哪个好
  • wordpress怎么流量赚钱中山seo关键词
  • 网站公司排行榜前十名百度竞价网站
  • 企业网站改版企业为何选择网站推广外包?
  • 学校网站建设规划书廊坊网站