您的位置:首页 > 其它

华为上机之四

2013-08-05 22:02 120 查看
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;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: