输出字符串中的整数

#include <stdio.h>//包含标准输入输出函数
#include <string.h>
//2019.10.21
//输入一个字符串,内有数字和非数字字符。
//将其中连续的数字字符作为一个整数,依次存到一数组a中。
//例如"A123x456$%1789>3560tab587"
//123放在a[0]、456放在a[1]......,统计有多少个整数,并输出这些整数

int main(){
	char ch[100],*str;
	int sum=0,count=0,a[10];
	printf("输入一串字符:\n");
	scanf("%s",ch);
	str=&ch[0];
	while(*str!='\0'){
		if(*str>='0'&&*str<='9'){
			sum=sum*10+*str-'1'+1;
		}else {
			if(sum!=0){
				a[count++]=sum;
			}
			sum=0;		
		}
		str++;
	}
	if(sum!=0){        //输入的串以数值结尾,则输出数值 
		a[count++]=sum;
	}
	printf("\n总共有%d个整数!",count);
	printf("\n这些整数是: ");
	for(int i=0;i<count;i++){
		printf("%d ",a[i]);
	}
	return 0; 
}
发布了128 篇原创文章 · 获赞 26 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/yky__xukai/article/details/102673222