写一个函数,它的原形是int continumax(char *outputstr,char *intputstr)
功能:
在字符串中找出连续最长的数字串,并把这个串的长度返回,
并把这个最长数字串付给其中一个函数参数outputstr所指内存。
例如:"abcd12345ed125ss123456789"的首地址传给intputstr后,函数将返回9,
outputstr所指的值为123456789
#include <iostream>
#include <string.h>
#include <stdio.h>
//在字符串中找出连续最长的数字串,并把这个串的长度返回
//同时把这个最长数字串付给其中一个函数参数 outputstr所指的内存
using namespace std;
int continumax(char* outputstr,char *inputstr)
{
int len = strlen(inputstr);
int index = 0;
int max = 0,tmp = 0;
for(int i = 0;i <= len;i++)
{
if(inputstr[i] >= '0' && inputstr[i] <= '9')
{
tmp++;
}
else
{
if(tmp>max)
{
index = i;
max = tmp;
}
tmp = 0;
}
}
int a = 0;
for(int j=index-max;j < index;j++)
{
outputstr[a] = inputstr[j];
a++;
}
outputstr[max] = '\0';
return max;
}
int main()
{
char arr[] = "abcd1234ed125ss1234567891";
char out[10];
//gets(arr);
int i = continumax(out,arr);
cout << i <<endl;
cout << out <<endl;
return 0;
}