#include<stdio.h>#include<string.h>#include<math.h>#define MAX 1000/**str2nu:字符串转数字
**/
int str2num(char *str, int begin, int end){
int result =0;for(int i = end;i >= begin; i--){
result +=(str[i]-'0')*(int)pow(10, end - i);}return result;}
int main(){
char str[MAX +5];
scanf("%s",str);
int begin =0, end =0, max =-1;//字符串遍历操作
for(int i =0, len = strlen(str); i < len; i++){if(str[i]<='9'&& str[i]>='0'){
begin = i;for(;str[i]>='0'&& str[i]<='9';){ i++;}
end = i -1;
int number = str2num(str, begin, end);
max =(number > max)? number : max;}else{continue;}}//判断输出
if(max ==-1){
printf("no digits exist!\n");}else{
printf("max = %d\n",max);}return0;}
前言昨天收到朋友一个题目,让我实现一下,人家让我用c语言实现。可是小编最近在学Perl,后来也用Perl实现了一下!题目输入个一个字符串,请输出其中包含的最大整数输入:abc123mm4567nn987xyz输出:4567C语言实现#include<stdio.h>#include<string.h>#include<math.h>#define MAX 1000/**str2nu:字符串转数字* */int str2num(ch