字符串中的数字串 275.cpp

来自「我正在学习C编程」· C++ 代码 · 共 31 行

CPP
31
字号
#include <stdio.h>

void main()
{
	printf("\n\t\t输入字符串,把其中的数字组成新数字串输出\n");
	printf("───────────────────────────────────────\n");
	while(1)
	{
		char a[50],b[50],*p1=a,*p2=b;
		printf("  输入待处理的字符串:  ");  gets(a); //入一串存入a组
		while(*p1!='\0')           //源串字符非串尾时
		{
			if(*p1>='0'&&*p1<='9') //如源串当前字符是数字字符'0'~'9'
				{*p2=*p1; p2++;}   //数字字符保存到新串中,新串指针+1
			p1++;                  //源串指针+1
		}
		*p2='\0';                  //新数字串加上串尾'\0'
		int flag;   p1=a;
		while(*p1!='\0')           //源串字符非串尾'\0'时.   判断源串中有无数字串
		{
			if(*p1>='0'&&*p1<='9'){flag=1; break;}    //源串字符是数字字符时,标记置1,退出循环
			else {flag=0; p1++;}   //源串字符非数字字符时,标记置0,指针指向下一字符
		}
		if(flag==0){printf("  ┈┈┈字符串中无数字串!\n");} 
		else {p2=b;	printf("  字符串中的数字串为:  %s\n",p2);}
		
		printf("\n  是否继续输入吗?是则回车,否则输入‘空格’回车 ");
		if(getchar()==' '){break;}
		else {while(getchar()!='\n'){;}}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?