编写c++程序,将用户输入的由数字字符和非数字字符组成的字符串中的数字提取出来

编写c++程序,将用户输入的由数字字符和非数字字符组成的字符串中的数字提取出来例如输入 asd12345rt456,fg9erp 则产生数字 12345,456,9 输出这些数字字符要求 连续的数字字符在同行输出 ,不连续的在不同行输出

#include"stdio.h"
int main()
{char a[1000];
int i=0;
printf ("输入字符串:\n");
gets(a);
printf("输出结果:\n");
while(a[i])
{
if(a[i]>='0'&&a[i]<='9')
printf("%c",a[i]);
if(a[i]>='0'&&a[i]<='9'&&(a[i+1]<'0'||a[i+1]>'9')) /*如果是最后一位数字,则换行*/
printf("\n");
i++;
}
return 0;}调试结果:
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-09-20
#include<iostream>
#include<string>
using namespace std;
void main()
{
string inPut;
bool flag=false;
cout<<"请输入字符串:"<<endl;
cin>>inPut;
for(int i=0;i<inPut.length();i++)
{
if(inPut[i]<='9'&&inPut[i]>='0')
{
flag=true;
cout<<inPut[i];
}
else if(flag)
{
flag=!flag;
cout<<endl;
}
}
cout<<endl;
}
第2个回答  2013-09-20
String s;cin>>s;bool sta=false;for(int i=0;i<strlen(s);i++){if(!(s[i]<='a'&&a[i]>='z'||a[i]<='A'&&s[i]>='Z')) { sta=true;cout<<s[i];}else if(sta){ sta=!sta; cout<<endl;}}

编写c++程序,将用户输入的由数字字符和非数字字符组成的字符串中的...
{char a[1000];int i=0;printf ("输入字符串:\\n");gets(a);printf("输出结果:\\n");while(a[i]){ if(a[i]>='0'&&a[i]<='9')printf("%c",a[i]);if(a[i]>='0'&&a[i]<='9'&&(a[i+1]<'0'||a[i+1]>'9')) \/*如果是最后一位数字,则换行*\/ printf("\\n...

C++从字符串中提取数字并保存在数组中
首先,我们需要移除字符串中的非数字字符,也就是去除字母和特殊符号,确保仅保留数字和空格。接着,移除换行符,以保持数据的一致性。随后,通过空格将字符串分割,将原始字符串分为多个部分。这样做的目的是将数字单独分离出来。最后一步,将分割得到的字符串部分转化为数字。通过遍历这些字符串,我们可以...

如何用c\/c++把一个字符串把里边的数字提取出来
给定一个数字字符串,把这个串里边的连续数字提取出来放到另外一个整型数组中一个单元中:include<iostream> include<string> using namespace std;void tiqu(char*a,int*b){ int j=0;bool key=false;for(int i=0;i<strlen(a);i++){ if(a[i]>='0'&&a[i]<='9'){ if(key)b[j] ...

C++:如何提取字符串中的汉字,数字!!!
} \/\/取字符串中的整型数,支持负数。string输入,vector输出 void get_int(const std::string& s, std::vector<int>& vi){ std::string::size_type size = s.size();int element = 0;bool now_digit = false;bool negative = false;for(std::string::size_type i=0; i<size; ++i)...

C++ 输入一行字符串,内有数字和非数字字符,将其中连续的数字作为一个...
int chompnum(char* str, char** to){ int dig = 0; int num = 0; while (*str) { if (*str >= '0' && *str <= '9') { dig++; } else if (dig) { to[num] = (char*) malloc(dig + 1); memcpy(to[num], str-dig, dig); to[...

C++基础应用,在字符串中提取数字
{ char string1[20];int i = 0,h = 0,min = 0;cout<<"输入时间表达式:";cin >>string1;while(string1[i] != '.')\/\/小数点前面的数逐位加到表示小时的变量中 { h=h*10+(string1[i]-'0');i++;} i++;\/\/走过小数点 while(string1[i] != '\\0'){ min = min*10+(...

C\/C++中,字符串里提取数字?
先定义一个char nums[20];遍历str,如果是数字那就复制当前字符到nums,然后用atoi转换类型

如何使用C++提取出一个文件中的特定字符串里面的数字 数据例子如下_百度...
include<iostream>#include<fstream>#include<cstdio>#include<string>using namespace std;int main(){ ifstream in("e:\\\\test.txt"); if(!in) exit(-1); char str[50]; string sstr; while(!in.eof()) { memset(str,0,sizeof(str)); in.getline(str,50,'\\n'); char *p...

如何用C++处理字母和数字组成的字符串,然后输出数字
include <iostream.h> include <string.h> include <ctype.h> void main(){ char *s = "123adf56f78f4512";int nCount = strlen(s);for(int i=0;i<nCount;i++){ if(isdigit(*s))cout<<*s;s++;} cout<<endl;}

C++编写一个程序,输入一个字符串,从字符串中提取有效的数字,输出它们的...
void main() { char str[256],*p,*q; float s, t;s = 0; gets(str); p= str;while (*p) { q = p; while ((*q >= '0' && *q <= '9') || *q == '.') q++;sscanf(p, "%f", &t); s += t; printf("%f\\n", t);while (!((*q >= '0' && *q <=...

相似回答