25.写一个函数,它的原形是int continumax(char *outputstr,char *intputstr)
2012-10-23 23:25
519 查看
写一个函数,它的原形是int continumax(char *outputstr,char *intputstr)
功能:
在字符串中找出连续最长的数字串,并把这个串的长度返回,
并把这个最长数字串付给其中一个函数参数outputstr所指内存。
例如:"abcd12345ed125ss123456789"的首地址传给intputstr后,函数将返回9,
outputstr所指的值为123456789
这里可以在原来出申请空间,也可以在函数中申请空间。不过在函数中申请空间要用到二级指针!
功能:
在字符串中找出连续最长的数字串,并把这个串的长度返回,
并把这个最长数字串付给其中一个函数参数outputstr所指内存。
例如:"abcd12345ed125ss123456789"的首地址传给intputstr后,函数将返回9,
outputstr所指的值为123456789
这里可以在原来出申请空间,也可以在函数中申请空间。不过在函数中申请空间要用到二级指针!
#include <iostream> int continumax(char **outputstr,char *intputstr); int main() { char* output = NULL ; char* input = "abcd12345ed125ss123456789"; int i = continumax(&output,input); return 0; } int continumax(char **outputstr,char *intputstr) { int j = 0; int nowmax = 0; int maxpoint = 0 ; for (int i=0;intputstr[i] != '\0';) { if (j == 0) { i++; j++; } else { while (intputstr[i-1]+1 == intputstr[i]) { j++; i++; } if (j>nowmax) { nowmax = j ; maxpoint = i-j; } j = 0 ; } } char* temp = new char[nowmax+1] ; for (int i=0;i<nowmax;i++) temp[i] = intputstr[maxpoint+i]; temp[nowmax] = '\0' ; *outputstr = temp ; return nowmax; }
相关文章推荐
- 微软面试100题之25题:写一个函数,它的原形是int continumax(char *outputstr,char *intputstr)
- 算法习题25:写一个函数,它的原形是int continumax(char *outputstr,char *intputstr)
- 25.写一个函数,它的原形是int continumax(char *outputstr,char *intputstr)
- 写一个函数,它的原形是int continumax(char *outputstr,char *intputstr)
- 【练习】写一个函数,它的原形是int continumax(char *outputstr,char *intputstr)功能:在字符串中找出连续最长的数字串,并把这个串的长度返回,
- 写一个函数,它的原形是int continumax(char *outputstr,char *intputstr)
- 第25 题:写一个函数,它的原形是int continumax(char *outputstr,char *intputstr)
- 写一个函数,它的原形是int continumax(char*outputstr,char*intputstr)
- 【微软100题】写一个函数,它的原形是int continumax(char *outputstr,char *intputstr) 功能: 在字符串中找出连续最长的数字串,并把这个串的长度返回
- 第25 题: 写一个函数,它的原形是int continumax(char *outputstr,char *intputstr)
- 第25题: 写一个函数,它的原形是int continumax(char *outputstr,char *intputstr),在字符串中找出连续最长的数字串,并把这个串的长度返回
- 编写一个函数,有如下函数原型: 函数:int continum(char *intputstr,char *outputstr). 给一个字符串,要求找到里面连续的串,并且串的长度是所有连续串中
- 编写一个函数,删除字符串中的一段字符,函数原型为: int fun(char *p,int start,int end); 返回值为删除字符数, start 开始位置,end 结束位置。
- 编写一个函数,它从一个字符串中提取一个子字符串。函数原型如下: Int substr(char dst[], char src[],int start, int len) {} 目标是:从src数组
- 编写一个函数 int count_chars(char const *str,char const *chars) 函数应该在第一个参数中进行查找, 并返回匹配第二个参数所包含的字符的数量。
- C语言 编写一个函数,传入a,b两个int类型的变量,返回两个值的最大公约数。
- 1.写一个函数返回参数二进制中1的个数2.获取一个数二进制序列中所有的偶数为和奇数位,分别输出二进序列3.输出一个整数的每一位4.编程实现:两个int(32位)整数m和n的二进制表达中,有多少个位(b
- 写一个函数int get(),这个函数运行一次可以从V[N]里随机取出一个数,而这个数必须是符合1/N平均分布的
- C语言补漏(1)--- char到int赋值的一个陷阱
- 【C++】用C或C++实现void reverse(char* str)函数,即反转一个null结尾的字符串