您的位置:首页 > 运维架构 > Linux

找出字符串中的最长数字串

2017-02-07 19:54 211 查看
/*****************************************************
copyright (C), 2016-2017, Lighting Studio. Co.,     Ltd.
File name:
Author:王    Version:0.1    Date:
Description:
Funcion List:
*****************************************************/

#include <stdio.h>

int main()
{
char a[100];
int flag = 0;
int num = 0;
int i = 0;
int num_m = 0;
int loc_m,loc;

printf("Enter a string:");
scanf("%s",a);

while(a[i]!='\0')
{
if(a[i] >= '0' && a[i] <= '9')       // 寻找数字
{
flag = 1;
num++;                           // 计算数字个数
loc = i;
}
else
{
flag = 0;
}
if(flag == 0)                        //判断最长的数,并记录长度及位置
{
if(num > num_m)
{
num_m = num;
loc_m = loc;
}
num = 0;
}
i++;
}

if(num > num_m)                          //考虑最后那段数字字符串为最长的
{
num_m = num;
loc_m = loc;
}

printf("count = %d\nsubsrc = ",num_m);

for(i=loc_m-num_m+1;i<=loc_m;i++)
printf("%c",a[i]);
printf("\n");

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息