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

温州网站定制哪家好爱企查企业信息查询

温州网站定制哪家好,爱企查企业信息查询,网站建设 视频教程,平面设计必学软件一. 实现一个函数#xff0c;可以左旋字符串中的k个字符。 例如#xff1a; ABCD左旋一个字符得到BCDA ABCD左旋两个字符得到CDAB 通过分析#xff0c;可以知道实际的旋转次数#xff0c;其实是k%#xff08;字符串长度#xff09;。假设一个字…一.   实现一个函数可以左旋字符串中的k个字符。       例如         ABCD左旋一个字符得到BCDA         ABCD左旋两个字符得到CDAB  通过分析可以知道实际的旋转次数其实是k%字符串长度。假设一个字符串长度是3那左旋4个字符后得到的字符串就是它本身。 1.直接旋转法 将字符串中的字符一个一个旋转 步骤先定义一个变量tmp将第一个字符赋值给这个变量然后将后面的字符依次往前赋值再将tmp的值赋值给最后一个字符 代码 #includestdio.h #includestring.h //方法一 void Turnleft(char arr[6],int len,int k) {int time k % len;//实际旋转次数for (int i 0; i time; i){char tmp arr[0];for (int j 0; j len-1; j){//交换 arr[j] arr[j 1];}arr[len - 1] tmp;} } int main() {char arr[] ABCDEF;int len strlen(arr);int k 2;//旋转次数Turnleft(arr, len, k);printf(%s, arr); } 2.库函数法 介绍使用到的库函数 1).strcpy(); 字符串拷贝 2).strncat(); 字符串拼接 -n个 这两个函数传递的参数都是地址即指针 1).strcpy函数 char * strcpy ( char * destination, const char * source ); destination目的地即要追加的目标字符串source指复制的内容 复制字符串 将源指向的 C 字符串复制到目标指向的数组中包括终止 null 字符并在该点停止 举例说明: 注意该函数复制的字符串会覆盖原字符串 2).strncat char * strncat ( char * destination, const char * source, size_t num ); destination目的地即要追加的目标字符串source指追加的内容num指追加字符的个数 从字符串中追加字符 将源的前 num 个字符附加到目标以及终止 null 字符。 如果 source 中 C 字符串的长度小于 num则仅复制直到终止 null 字符的内容 举例说明 假设左旋ABCDEF这个字符串的两个字符那么只需先复制后四个字符然后再讲前两个字符拼接上去就行了 代码 #includestdio.h #includestring.h void Turnleft2(char arr[],int len,int k) {int time k % len;//实际旋转次数char tmp[100] 0;strcpy(tmp, arr time);//复制字符串这里的arr是数组首元素的地址//arr time 是数组第time1个元素的地址strncat(tmp, arr, time);//拼接,time表示拼接的字符串个数strcpy(arr, tmp);//再把得到的新的字符串返回原数组 } int main() {char arr[] ABCDEF;int len strlen(arr);int k 2;//旋转次数Turnleft2(arr, len, k);printf(%s, arr); } 3.三段旋转法 代码 #includestdio.h #includestring.h //三段旋转法 void ReverseRange(char* arr,int start,int end)//数组名是数组首元素的地址 {int left start;int right end;while (left right){char tmp *(arr left);//arr[left] *(arrleft)*(arr left) *(arr right);*(arr right) tmp;left;right--;} } void Turnleft3(char* arr,int len,int k) {int time k % len;//三段旋转ReverseRange(arr, 0, time-1);ReverseRange( arr, time ,len-1 );ReverseRange( arr,0,len-1); } int main() {char arr[] ABCDEF;int len strlen(arr);int k 2;//旋转次数Turnleft3(arr, len, k);printf(%s, arr); } 二.写一个函数判断一个字符串是否为另外一个字符串旋转之后的字符串。 例如给定s1 AABCD和s2 BCDAA返回1 给定s1abcd和s2ACBD返回0. AABCD左旋一个字符得到ABCDA AABCD左旋两个字符得到BCDAA AABCD右旋一个字符得到DAABC 解决这个题目很重要的一个步骤就是如何判断两个字符串是否相同我们可以通过每个字符的ASCII码值来比较  strcmp函数 strcmpcmp是compare的缩写用来比较字符串的大小 比较的内容ASCII码值 比较规则一个一个字符去比较先出现的不一样的字符的大小就是整个字符串的大小 例如zbcabcdefabcdefabc 输出整数表示大于 输出0表示等于) 输出负数表示(小于) 1.旋转后再判断 直接用上面写过的函数进行旋转然后比较字符串的大小 注这里旋转函数的旋转次数就是字符串长度-1 代码 #includestdio.h #includestring.h //方法一 int Find_Turnleft(char arr1[6],char arr2[], int len) {for (int i 0; i len; i){char tmp arr1[0];for (int j 0; j len - 1; j){//交换 arr1[j] arr1[j 1];}arr1[len - 1] tmp;if (strcmp(arr1,arr2)0){return 1;}}//循环结束字符串不相等返回0return 0;} int main() {char arr1[] ABCDEF;char arr2[] CDEFAB;int len strlen(arr1); int ret Find_Turnleft(arr1, arr2, len);if (ret 1){printf(是旋转后的结果);}else{printf(不是旋转后的结果);}} 2.库函数法 将一段字符串拼接两次那么它旋转后的结果一定能在这里面找到 介绍使用到的库函数 1).strstr函数 const char * strstr ( const char * str1, const char * str2 );char * strstr ( char * str1, const char * str2 ); str1要扫描的 C 字符串。 str2包含要匹配的字符序列的 C 字符串。 查找子字符串 返回指向 str1 中 str2 第一次出现的指针如果 str2 不是 str1 的一部分则返回 null 指针。 匹配过程不包括终止 null 字符但到此为止。 举例介绍 代码 #includestdio.h #includestring.h//库函数法 int Find_Turnleft2(char arr1[6], char arr2[], int len) {char tmp[100] 0;strcpy(tmp, arr1);strncat(tmp, arr1, len);return strstr(tmp, arr2) ! NULL;//表达式为假返回0为真返回1 } int main() {char arr1[] ABCDEF;char arr2[] CDEFAB;int len strlen(arr1); int ret Find_Turnleft(arr1, arr2, len);if (ret 1){printf(是旋转后的结果);}else{printf(不是旋转后的结果);}}
http://www.zqtcl.cn/news/43671/

相关文章:

  • 万网网站到期后续费一年多少钱wordpress主题编辑
  • 建设一个怎样的自己的网站wordpress落叶插件
  • 建设工程规范发布网站wordpress 企业网站
  • 互联网招聘网站网站开发原创动漫
  • 提供网站建设惠州网站小程序建设点
  • 海尔商务网站建设创意设计的英文
  • 网站做产品的审核吗湖南网站推广建设公司
  • 建网站建网站做高效能的父母网站
  • 中国建设教育协会网站打不开网站排名seo
  • 农产品网站建设投标书低价网站建设顺德
  • 网站建设月总结网站开发遇到的难点
  • 大连网站制作百度推广登陆后台
  • 异地备案 网站仙桃做网站的公司有哪些
  • 浙江网站建设方案上海企业网站设计制作
  • 织梦做英文网站河北省邢台市建设工程网站
  • 个人网站购买竞价推广出价多少合适
  • 建站wordpress 基础大理建设工程信息网站
  • 北京电商网站开发价格特色的南昌网站制作
  • 建站之星模板的使用电子商务网站规划与设计
  • 从零开始学做网站cdsn我的网站没备案怎么做淘宝客推广
  • 长沙网站seo优化排名免费咨询医生在线解答
  • 福建省建设局网站南昌电子商务网站建设
  • 免费广告设计模板网站做模版网站
  • 网站后台图片编辑器seo营销推广费用
  • 360°网站标签旋转显示特效文山网站建设兼职
  • 东莞房产网站建设软文的概念是什么
  • wordpress站群管理如何运营网站
  • 宁津网站设计淮南新浪网络推广公司
  • 电脑网站做淘宝客wordpress缩略图比例
  • 网站备案资料表网站怎么做网站地图