字符串长度不定比如,输入字符串“325hjj09402r0fg25”则要输出“325 09402 0 25”
1、首先打开visual studio软件并创建一个新的c语言文件,如下所示。
2、然后导入C语言文件顶部的库内容,如下所示。
3、然后使用scanf函数接收用户输入的字符串。
4、然后使用printf函数打印用户输入。
5、运行程序后,弹出下图所示的命令界面,自动接收输入内容,按原样输出。
6、最后,如果接收到其他类型,例如整数,则需要将该类型更改为int,如下图所示,scanf中的接收类型将变为d%,并提取字符串中的数字。
温馨提示:答案为网友推荐,仅供参考
第1个回答 2019-05-05
工具\材料
电脑
方法如下
1、首先建一个PHP文档,定义一个包含数字的字符串。
2、接着使用定义正则表达式的匹配模式。
3、然后使用正则匹配函数“ preg_match_all()”。
4、根据判断的结果,在下图中加入打印。
5、最后保存内容就可以提取到数字。
本回答被网友采纳第2个回答 2019-08-13
1、首先打开visual studio软件,新建一个C语言文件,如下图所示。
2、接着在C语言文件的顶部导入库内容,如下图所示。
3、接着运用scanf函数接收用户输入的字符串。
4、然后利用printf函数打印一下用户输入的内容。
5、运行程序以后就会弹出如下图所示的CMD界面,输入内容就会自动接收到,然后原样输出内容。
6、最后如果接收其他的类型,比如整数,那么类型就需要改变成int,如下图所示,并且scanf里面的接收类型变为d%,提取字符串中的数字。
本回答被网友采纳第3个回答 推荐于2017-11-28
这个就是不用指针的.. 直接利用字符数组的下标来遍历.稍微做了些修改. 你看看#include <stdio.h>
void main()
{
char str[50];
int i=0; //i是数组下标. gets(str); //输入字符串.while(str[i]) //当数组元素不是字符串结束符时.执行while
{
if(str[i]>='0'&&str[i]<='9') //如果数组元素是数字. 就输出这个元素.
{
putchar(str[i]);
}
else
{
if(str[i-1]>='0'&&str[i-1]<='9') //否则判断前一个元素是不是数字.是的话输出一个空格.printf(" "); }
i++;
}
printf("\n");
}根据你的例子运行时截图如下:本回答被网友采纳
void main()
{
char str[50];
int i=0; //i是数组下标. gets(str); //输入字符串.while(str[i]) //当数组元素不是字符串结束符时.执行while
{
if(str[i]>='0'&&str[i]<='9') //如果数组元素是数字. 就输出这个元素.
{
putchar(str[i]);
}
else
{
if(str[i-1]>='0'&&str[i-1]<='9') //否则判断前一个元素是不是数字.是的话输出一个空格.printf(" "); }
i++;
}
printf("\n");
}根据你的例子运行时截图如下:本回答被网友采纳
第4个回答 2015-04-02
#include<stdio.h>
int main()
{
char str[1000];//保存读取到的字符串
long sum=0,data[1000];
int i=0,top=0;
printf("输入字符串:\n");
scanf("%s",str);
while(str[i]!='\0')//未到字符串末尾
{
if(str[i]>='0'&&str[i]<='9')//如果是数字
sum=sum*10+(str[i]-'0');//连续数字转换为数.
else
if(sum!=0)//保存这个数
{
data[top++]=sum;
sum=0;
}
i++;
}
if(sum!=0)//判断最后一个字符是否是数
data[top++]=sum;
printf("字符串中的数字是:\n");
i=0;
while(i<top)
{
printf("%ld",data[i]);
if(i<top-1)//不打印最后一个逗号
printf(",");
i++;
}
printf("\n");
system("pause");
return 0;
}
int main()
{
char str[1000];//保存读取到的字符串
long sum=0,data[1000];
int i=0,top=0;
printf("输入字符串:\n");
scanf("%s",str);
while(str[i]!='\0')//未到字符串末尾
{
if(str[i]>='0'&&str[i]<='9')//如果是数字
sum=sum*10+(str[i]-'0');//连续数字转换为数.
else
if(sum!=0)//保存这个数
{
data[top++]=sum;
sum=0;
}
i++;
}
if(sum!=0)//判断最后一个字符是否是数
data[top++]=sum;
printf("字符串中的数字是:\n");
i=0;
while(i<top)
{
printf("%ld",data[i]);
if(i<top-1)//不打印最后一个逗号
printf(",");
i++;
}
printf("\n");
system("pause");
return 0;
}