C语言判断字符串是否旋转过
//方法一
//每次左旋一次,判断旋转之后字符串是否与目标字符串是否一致
//旋转一圈 没有找到返回0
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<string.h> void left_rotate(char *str, int k)
{
int len = strlen(str);
k %= len;//减少重复次数 char temp = ;
char *cur = str;
while (k--)
{ //左旋一次
temp = *str;
cur = str;
while (*(cur + ) != '\0')
{
//每个字符向前推一个
*cur = *(cur + );
cur++;
} *cur = temp;
}
} int is_rotate(char *dest, char* src)
{
if (strlen(dest) != strlen(src))
{
printf("不是旋转过的!\n");
return ;
}
if (!strcmp(dest, src))
{
printf("旋转过的!\n");
return ;
} int k = strlen(dest);
k--;
while (k--)
{
//每次旋转一次 判断
left_rotate(src, );
//判断旋转之后的内容是否和目标一致
if (!strcmp(dest, src))
{
printf("旋转过的!\n");
return ;
}
}
printf("不是旋转过的!\n");
return ; } //方法二 dest--->abcd 把目标串拼接相同的内容abcdabcd 判断源串是否为目标串的子串
// src---->cdab
int is_rotate02(char *dest, char* src)
{
if (strlen(dest) != strlen(src))
{
printf("不是旋转过后的!\n");
return ;
}
strncat(dest, dest,strlen(dest));
if (strstr(dest, src) != NULL)
{
printf("是旋转过后的!\n");
return ;
}
printf("不是旋转过后的!\n");
return ; } int main()
{
char dest[] = "sssss";
char src[] = "avdasf";
is_rotate02(dest, src); system("pause");
return ;
}
C语言判断字符串是否旋转过的更多相关文章
- C语言判断字符串是否是 hex string的代码
把写内容过程中经常用到的一些内容段备份一下,如下内容内容是关于C语言判断字符串是否是 hex string的内容. { static unsigned int hex2bin[256]={0}; me ...
- c语言 判断字符串长度 实现
/* 首先明白答案的本质(该函数)是一个计数器该计数器用for循环来实现实现对一串字符串的计数字符串以空格开头 不计算空格 计算空格后的数字直到遇到\0结束.num计算器字符串不以空格结束 计算空格后 ...
- Swift3.0语言教程比较、判断字符串
Swift3.0语言教程比较.判断字符串 Swift3.0语言教程比较.判断字符串,在一个程序中字符串很多时,常常会做的操作就是对这些字符串进行比较和判断.本小节将讲解这些内容. 1.不区分大小写比较 ...
- c语言判断是否是utf8字符串,计算字符个数
#include <stdio.h> #include <string.h> #include <stdlib.h> /********************** ...
- C语言:判断字符串是否为回文,-函数fun将单向链表结点数据域为偶数的值累加起来。-用函数指针指向要调用的函数,并进行调用。
//函数fun功能:用函数指针指向要调用的函数,并进行调用. #include <stdio.h> double f1(double x) { return x*x; } double f ...
- iOS开发-OC语言 (三)字符串
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; text-align: center; font: 24.0px "PingFang SC" } p ...
- mybatis if test 判断字符串的坑
今天调试一个非常简单的test判断字符串查询语句,怎么调试都是不好用,后来百度才发现,是我写的test标签写错了,我写成: <if test="record.current != nu ...
- mybatis if标签判断字符串相等
mybatis 映射文件中,if标签判断字符串相等,两种方式: 因为mybatis映射文件,是使用的ognl表达式,所以在判断字符串sex变量是否是字符串Y的时候, <if test=" ...
- PHP判断字符串的包含
PHP语言是一个功能强大的嵌入式HTML脚本语言,它的易用性让许多程序员选择使用.PHP判断字符串的包含,可以使用PHP的内置函数strstr,strpos,stristr直接进行判断.也可以通过ex ...
随机推荐
- fork: retry: Resource temporarily unavailable
用户A打开文件描述符太多,超过了该用户的限制 修改用户可以打开的文件描述符数量 1.首先,用另一个用户B登录,修改/etc/security/limit.conf * soft nofile 6553 ...
- 关于NativeEvent的处理
nativeEvent(const QByteArray &eventType, void *message, long *result){ chASSERT(message != NULL) ...
- 新款Macbook 安装任意来源软件教程 mac软件下载资源推荐
防止无良爬虫,开头附上原文链接:http://www.cnblogs.com/xueyudlut/p/7810981.html ------分割线--------------------------- ...
- OC基础数据类型-NSArray
1.数组的初始化 NSArray *array = [[NSArray alloc] initWithObjects:@"One", @"Two", @&quo ...
- 如何将程序添加到Windows桌面右键菜单
在Windows桌面上右键单击鼠标时,将显示默认菜单.如果您想要将其它程序添加到Windows桌面右键菜单中,则可以按照以下步骤执行: 运行WinUtilities上下文菜单管理器 点击添加 选择菜单 ...
- nfs 服务器
1.创建共享目录 #mkdir /home/hellolinux/nfs 2.创建或修改/etc/exports文件 #vi /etc/exports home/hellolinux/nfs 192. ...
- Dispatch groups 与任务同步
https://developer.apple.com/library/content/documentation/General/Conceptual/ConcurrencyProgrammingG ...
- ADF中VO的删除操作初探
在ADF的VO中,真实提交更改是在commit 方法执行之后,如以下增加操作 EntityDefImpl departmentEODef = DepartmentEOImpl. getDefiniti ...
- Yii: 扩展CGridView增加导出CSV功能
Yii提供的CGridView组件没有内置数据导出功能,不过我们可以通过扩展该组件来添加该功能. 具体方法如下: 1.首先派生一个子类,添加一个action成员,在该视图的init函数中判断是浏览动作 ...
- php 处理微信账单
最近要做支付对账,即检查第三方支付与数据库中账单是否一一对应,涉及到微信对账单的处理,微信账单接口返回为一个字符串类似如下结果: 交易时间,公众账号ID,商户号,子商户号,设备号,微信订单号,商户订单 ...