判断字符串旋转后是否相等

在这里插入图片描述

旋转后是否相等

还是主要运用调用函数,判断相等输出1,否则输出0即可,在这个代码里面调用了strlen ;strstr;strncat;的字符串函数,主要还是要对这些函数有一定的熟练度就可以.

如下面例题:

#define _CRT_SECURE_NO_WARNINGS 
#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
#include<string.h>
#include <stdio.h>

//====判断旋转后的字符串是否与另外一个字符串相等
int find(char arr[], char*p){		//创建函数

	int n = strlen(arr);	//分别求长度
	int m = strlen(p);
	if (m != n){	//如果相等,则直接结束
								//这里主要是防止玩家非法输入,所以要把每一种的可能性写完
		return 0;
	}
	strncat(arr, arr, n);         //在字符串的最后加n个字符
	if (strstr(arr, p) == NULL){  	//搜索是否出现
	
		return 0;				
	}
	else
		return 1;
}

int main(){

	//char arr[20] = "abcd";
	//char*p = "ABCD";
	char arr[20]="AABCD";
	char*p="BCDAA";	
	int ret = find(arr, p);			//调用函数
	if (ret == 1){
		printf("1\n");
	}
	else if (ret == 0){
		printf("0\n");
	}
	system("pause");
}

总体来说不难,还是考验你对于字符串函数的知道程度和对其的理解,多敲代码,加油!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值