http://blog.csdn.net/zzran/article/details/8008055
2012
要求,给定一串字符串,找出其中最常的数字字符串。比如,给定字符串abc123bcd234567d,则最终结果输出为234567。
- #include<stdio.h>
- #include<stdlib.h>
- #include<string.h>
- char* get_max_num_string(char *str)
- {
- char *begin;
- char *temp,*final;
- int count;
- int maxLen=0;
- begin=str;
- while(*begin!='\0')
- {
- count=0;
- if(*begin>='0'&&*begin<='9')
- {//若此字符为数字字符,则从此字符开始依次统计其后数字字符的个数
- for(temp=begin;*begin>='0'&&*begin<='9';begin++)
- count++;
- }
- else
- begin++;
- if(count>maxLen)
- {//用此次的结果与上次的结果进行比较,保存长度最大的那个数字符串的起始地址和长度
- maxLen=count;
- final=temp;
- }
- }
- char* result=(char*)malloc(sizeof(char)*(maxLen+1));
- strcpy(result,final);
- result[maxLen]='\0';
- return result;
- }
- void main()
- {
- char str[]="1234fgrrf56789012dd12345678900";
- char *s=get_max_num_string(str);
- printf("%s\n",s);
- }
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。