统计整数个数

统计整数个数

【问题描述】输入一个字符串,其包括数字和非数字字符,如:a123x456 17935? 098tab,将其中连续的数字作为一个整数,依次存放到数组a中,统计共有多少个整数,并输出这些数。

【输入形式】数字和非数字字符的字符串

【输出形式】多行,第一行输出整数个数,后面每行输出一个整数

#include<iostream>
#include<string>
using namespace std;
int main()
{
	char str[500];
	char a[500];
	cin.getline(str, 500);
	int n = 0;
	for (int i = 0; i <= 499; i++)
	{
		if ((str[i] >= 49 && str[i] <= 57) && (str[i - 1] < 49 || str[i - 1]>57))
		{
			n++;
		}
     }
	cout << n << endl;
	for (int i = 0; i <= 499; i++)
	{
		if (str[i] >= 49 && str[i] <= 57)
		{
			cout << str[i];
		}
		else if ((str[i - 1] >= 49 && str[i - 1] <= 57) && (str[i] < 49 || str[i]>57))
		{
			cout << endl;
		}
	}
}

【样例输入】a123x456 17935? 098tab583

  注意需要保留带有空格的字符串,请不要使用gets,cin,练习使用cin.getline(char *str, int maxnum)

【样例输出】

  5

  123

  456

  17935

  98

  583

 

【样例说明】第一个输出项为整数的个数,后面的分别为具体的整数。注意,不需要输出提示类文字,如:“整数为”,“分别为”等字样。直接输出结果。有一个数字的也要输出。测试用例中没有超过整数范围连续数字。当遇到0开头的数字应舍去0。

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值