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 ...
随机推荐
- WEB开发的jsp例子标签库(jstl)的使用
<!-- e1 --> <%@ page language="java" contentType="text/html; charset=UTF-8&q ...
- PhoneGap 的文件 api
一. 文件系统的请求 请求文件系统通过 window.requestFileSystem 来完函数声明如下: window.requestFileSystem(type, size, successC ...
- 当当网-前端project师測试题
前端project师測试题(笔试时间20分钟.面试时间20分钟) 一.笔试 1.基础问题 (1)前端页面有哪三层构成,各自是什么? ...
- ADFUtils
import java.text.SimpleDateFormat; import java.util.Map; import javax.el.ELContext;import javax.el.E ...
- protected internal 和internal 区别
private:只能在本类中使用protected:在本类中及其子类中可以使用 可以跨程序集 internal:同一命名空间(程序集)中的类可以使用 限定的是只有在同一个程序集中才可以访问,可以跨 ...
- JS中的prototype (转载)
JS中的prototype JS中的phototype是JS中比较难理解的一个部分 本文基于下面几个知识点: 1 原型法设计模式 在.Net中可以使用clone()来实现原型法 原型法的主要思想是 ...
- 关于js点击事件出现 xx is not defined at HTMLAnchorElement.onclick 的问题
测试: html: <button onclick="abc();">点我点我!</button> js: function abc(){ alert(“1 ...
- String.format字符串拼接
一.String.Format1.简介 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象. 2.参数 format()方法有两种重载形式. form ...
- java中prepareStatement与createStatement的区别
首先来看两段代码: 第一个使用createStatement() public void delete( int id){ try { Connection c = DBUtil.getConnect ...
- CssSelector之selenium元素定位
CssSelector是我最喜欢的元素定位方法,Selenium官网的Document里极力推荐使用CSS locator,而不是XPath来定位元素,原因是CSS locator比XPath loc ...