华为上机之四

1 给定一个字符串,把字符串里面的字母换成该字母的下一个字母a换成b,z换成a,Z换成A,字符串内的其他字符不改变,给定函数编写函数 void Stringchang(const char *input,char *output);

 

#include <iostream>

#include <cassert>

using namespace std;

void StringChange2(const char *input,char *output)

{

	assert((input != NULL) && (output != NULL));



	char *p = output;

	while(*input)

	{

		if(((*input) >= 'A' && (*input) < 'Z') || ((*input)>='a' && (*input)<'z'))

			*p = *input + 1;

		else if((*input) == 'Z')

			*p = 'A';

		else if((*input) == 'z')

			*p = 'a';

		else

			*p = *input;

		input++;

		p++;

	}

	*p = '\0';

}

int main()

{

	char a[] = "aBf---zzZZ";

	char b[10];

    

//	Stringchang(a,b);

	





	StringChange2(a,b);

	puts(b);



	return 0;

}


2.求一个整数数字钟有没有相同的部分,例如12389756123这个整数数字钟相同的部分是123,相同的部分至少应该为2位数,如果有形同部分返回1,如果没有返回0.

 

 

#include <iostream>

#include <cstdlib>



using namespace std;

int same3(int num)

{

	char cvar[30];

	itoa(num,cvar,10);



	char *p,*q;

	p = cvar;



	while(*p)

	{

		q = &(*p)+1;

		while(*q)

		{

			if(*p == *q)

				if(*(p+1) == *(q+1))

					return true;

				else

					q++;

			else

				q++;

		}

		p++;

	}

	return false;

}



int main()

{

	int a = 12389231;

 	cout << same3(a) << endl;	

	return 0;

}


 

 

你可能感兴趣的:(华为)