1、在字符串中找到最长数字串,返回长度,并打印出最长数字串。
#include <stdio.h>
#define MAX_SIZE 1024
int continue_max_len_str(char *dest,char *str)
{
int i;
int max_len = 0;
int count = 0;
while(*str != '\0')
{
while(*str >= '0' && *str <= '9')
{
count++;
str++;
}
if(max_len < count)
{
max_len = count;
for(i = 0; i < max_len; i++)
{
*(dest + i) = *(str - max_len + i);
}
*(dest + i ) = '\0';
}
count = 0;
str++;
}
return max_len;
}
int main()
{
char str[MAX_SIZE];
char dest[MAX_SIZE];
printf("please input the string:\n");
gets(str);
int max_len =continue_max_len_str(dest,str);
printf("max_len = %d,the dest is %s\n",max_len,dest);
return 0;
}
2、将数字n转化为字符串
#include <stdio.h>
#include <string.h>
#define MAX_SIZE 1024
void turn_num(char *str,int number)
{
char temp;
int i = 0;
int len = 0;
while(number > 0)
{
str[i] = number % 10 + '0';
number = number / 10;
i++;
}
str[i] = '\0';
len = strlen(str);
for(i = 0; i < len/2 ; i++)
{
temp = str[i];
str[i] = str[len - i - 1];
str[len - i - 1] = temp;
}
}
int main()
{
int number;
char str[MAX_SIZE];
printf("Please input a number:\n");
scanf("%d",&number);
turn_num(str,number);
printf("%s\n",str);
return 0;
}