答提问:查字符位置函数

用c语言写一个字符串查找函数,不太会。

一个字符查找函数并返回其所在位置,要求使用二分法进行查找
int strFind(char * a1, char ch)
求大佬帮助!!!https://ask.csdn.net/questions/719181

int 查字符位置(char* 字符串, char 字符)
{
	int 头(0), 尾 = strlen(字符串);
	while (true)
	{
		if (尾 < 头) break;
		if (字符串[头] != 字符)++头; else return 头;
		if (字符串[尾] != 字符)--尾; else return 尾;
	}
	return -1;
}
int _tmain(int argc, _TCHAR* argv[])
{
	/*str.length()和str.size()是用于求string类对象的成员函数 
strlen(str) 是用于求字符串数组的长度,其参数是char*
	std::cout << 查字符位置("asdfghjkl", 'a');
	std::cout << 查字符位置("asdfghjkl", 's');
	std::cout << 查字符位置("asdfghjkl", 'd');
	std::cout << 查字符位置("asdfghjk", 'f');
	std::cout << 查字符位置("asdfghjk", 'g');
	std::cout << 查字符位置("asdfghjkl", 'h');
	std::cout << 查字符位置("asdfghjkl", 'j');
	std::cout << 查字符位置("asdfghjkl", 'k');
	std::cout << 查字符位置("asdfghjk", 'l');*/
}

 

double 数取反(int 数)
{
	int 取 = 数, 循 = 1, 环 = 数; double 反 = 0;
	do
	{
		if ((取 /= 10))++循;
		else if (环)
		{ 
			反 += (环 % 10)*pow(10, --循); 
			环 /= 10;
		}
		else break;
	} while (true);
	return 反;
}
string 字符反转(string 字符串, string 字符, int 序, int 数)
{
	while (数 < (int)字符.length())
	{
		字符串[序 - 数 - 1] = 字符[数];
		++数;
	}
	return 字符串;
}
int 查字符位置(char* 字符串, char 字符)
{
	int 头(0), 尾 = strlen(字符串);
	while (true)
	{
		if (尾 < 头) break;
		if (字符串[头] != 字符)++头; else return 头;
		if (字符串[尾] != 字符)--尾; else return 尾;
	}
	return -1;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值