首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 其他相关 >

0807-C 字符串处置

2012-10-26 
0807--C 字符串处理写个c程序,返回字符串中最长数字字符串的长度和地址,不能用标准库函数int maxContinuNu

0807--C 字符串处理

写个c程序,返回字符串中最长数字字符串的长度和地址,不能用标准库函数

int maxContinuNum(const char *inputstr,char * outputstr)
编写一段程序实现该函数,实现返回一个以“\0”结束的字符串中最长的数字串的长度,并把该数字子串的首地址赋给outputstr。不能使用任何

库函数或已经存在的函数,如strlen。
例如:在字符串“abc123abcdef12345abcdefgh123456789”中,把该字符串的首地址赋给inputstr,返回9,outputstr指向字符串“123456789”

的首地址。

?

#include <stdio.h>#include <stdlib.h>int maxContinuNum(const char *inputstr,char * outputstr){int max_len=0;char *q=outputstr;const char * p=inputstr;const char * maxp;const char * startp;while(*p!='\0'){int len=0;if(*p>='1' && *p<='9'){            startp=p;while(*p>='1' && *p<='9'){len++;p++;}}if(len>max_len){max_len=len;maxp=startp;}p++;}for(int i=0;i<max_len;i++){*q=*maxp;printf("%c",*q);q++;maxp++;}printf("\n");   return max_len;}void main(){  char * inputstr="abc123abcdef12345abcdefgh1234567891";  char * p=inputstr;  int len=0;  while(*p!='\0'){                      //求输入字符串的长度  len++;  p++;  }  char * outputstr=(char *)malloc(len); //为输出字符串申请空间  int ret=maxContinuNum(inputstr,outputstr);  printf("ret=%d\n",ret);}

?

?

热点排行