1.使用宏实现两个数中求较大值。
2.实现一个函数,可以左旋字符串中的k个字符。
ABCD左旋一个字符得到BCDA
ABCD左旋两个字符得到CDAB
3.判断一个字符串是否为另外一个字符串旋转之后的字符串。
例如:给定s1 = AABCD和s2 = BCDAA,返回1,给定s1=abcd和s2=ACBD,返回0.
AABCD左旋一个字符得到ABCDA
AABCD左旋两个字符得到BCDAA
AABCD右旋一个字符得到DAABC
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
//1.使用宏实现两个数中求较大值。
//#define MAX(a,b)a>b?a:b
//void main()
//{
// int a = 3, b = 5;
// printf("%d\n", MAX(a, b));
//}
//2.实现一个函数,可以左旋字符串中的k个字符。
//ABCD左旋一个字符得到BCDA
//ABCD左旋两个字符得到CDAB
//void Left_Move(char* p, int k)
//{
// int len = strlen(p);
// for (int i = 0; i < k; ++i)//控制旋转字符数
// {
// char tmp = p[0];
// for (int j = 0; j < len - 1; ++j)//完成一次旋转
// {
// p[j] = p[j + 1];
// }
// p[len - 1] = tmp;
// }
//}
//
//void main()
//{
// char p[] = "ABCD";
// int k = 0;
// printf("k=");
// scanf("%d", &k);
// Left_Move(p, k);
// printf("%s\n",p);
//}
//3.判断一个字符串是否为另外一个字符串旋转之后的字符串。
//int Compare(char* p1, char* p2)
//{
// int len1 = strlen(p1);
// int len2 = strlen(p2);
// if (len1 != len2)
// {
// return 0;
// }
// for (int i = 0; i < len1; ++i)//控制旋转字符数
// {
// char tmp = p1[0];
// for (int j = 0; j < len1 - 1; ++j)//完成一次旋转 ABCD
// {
// p1[j] = p1[j + 1];
// }
// p1[len1 - 1] = tmp;
// if (0 == strcmp(p1, p2))
// {
// return 1;
// }
// }
//}
//
//void main()
//{
// char p1[] = "ABCD";
// char p2[] = "BCDA";
// printf("p1 = %s\n", p1);
// printf("p2 = %s\n", p2);
// printf("%d\n", Compare(p1, p2));
//}
//右旋
//void Right_Move(char* p, int k)
//{
// int len = strlen(p);
// for (int i = 0; i < k; ++i)//控制旋转字符数
// {
// char tmp = p[len - 1];
// for (int j = len - 1; j > 0; --j)//完成一次旋转
// {
// p[j] = p[j - 1];
// }
// p[0] = tmp;
// }
//}
//
//void main()
//{
// char p[] = "ABCD";
// int k = 2;
// Right_Move(p, k);
// printf("%s", p);
//}