Chinaunix首页 | 论坛 | 博客
  • 博客访问: 862859
  • 博文数量: 156
  • 博客积分: 6553
  • 博客等级: 准将
  • 技术积分: 3965
  • 用 户 组: 普通用户
  • 注册时间: 2010-06-22 18:36
文章存档

2012年(3)

2011年(43)

2010年(110)

分类: C/C++

2010-10-03 15:40:55

功能介绍:
当输入一个字符串时,内有数字字符和非数字字符,如:a123x567 17960? 302tab5876  将其中连续的数字作为一个整数依次存放到整数数组a中,例如,123放在a[0], 456放在a[1]中,等等,统计所有整数的个数,并输出这些,
 
实现代码如下:
#include
int main()
{
 char str[60], *p = str;
 int sum = 0, a[30], num = 0, flag = 0, i;
 
 gets(str);
 while (*p != '\0')
 {
  if ((*p >= '0') && (*p <= '9'))
  {
   flag = 1;
   sum = 10*sum + *p - '0';
  }
  else
  {
   if ( flag )
   {
    a[num++] = sum;
    flag = 0;
    sum = 0;
   }
  }
  p++;
 }
 if ( flag )
 {
  a[num++] = sum;
 }
 for (i=0; i {
  printf("%d ", a[i]);
 }
 printf("\n");
 return 0;
}
阅读(1104) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~