一道笔试题目(实习)

用C/C++写一个函数,它的`原形是int continumax(char *outputstr,char *intputstr) 功能:在字符串中找出连续最长的数字串,返回这个串的长度,并把这个最长的数字串付给其中一个函数参数outputstr所指内存。例如:"abcd12345ed125ss123456789"的首地址传给inputstr后,函数将返回9,outputstr所指的值为123456789。

一道笔试题目(实习)

#include

#include

#include

int continumax(char *outputstr,char *inputstr){

if((outputstr==NULL)||(inputstr==NULL))

return 0;

char *current=inputstr;

char *max_start=NULL;

int len=0,max_len=0,ret_len=0;

while(true)

{

if((*current>=)&&(*current<=9)){

len++;

}

else{

if(len>max_len){

max_len=len;

max_start=current-len;

}

len=0;

}

if(*current==)

{

break;}

current++;

}

ret_len=max_len;

outputstr[max_len]=;

while(max_len--)

*outputstr++=*max_start++;

return ret_len;

}

void main()

{char stra[]="abcd12345ed125ss123456789";

char strb[50];

printf("%dn",continumax(strb,stra));

printf("%sn",strb);

}

STYLE="FonT-FAMiLY:"