推荐于2016-05-25 · 知道合伙人教育行家
关注
展开全部
思路:输入字符串,遍历该字符串判断每个字符是否是数字字符,是就存入整数数组,并且数字个数加1,最后输出整数数组。
参考代码:
#include<string.h>
#include<stdio.h>
int main()
{
int b[100],n=0,i;
char a[100];
gets(a);
for(i=0;a[i]!='\0';i++)
if(a[i]>='0'&&a[i]<='9')
b[n++]=a[i]-'0';
printf("共有数字%d个\n",n);
for(i=0;i<n;i++)
printf("%d ",b[i]);
return 0;
}
/*
输出:
adsf4554ads5f4sd5a4f65sd45f
共有数字12个
4 5 5 4 5 4 5 4 6 5 4 5
*/
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
#include<string.h>
//#include<stdlib.h>
int main()
{
char string[101];
int Int[100];
int length=0;
int i=0;
gets(string);
while(i<(int)strlen(string))
{
if(string[i]>='0'&&string[i]<='9')
{
Int[length++]=(int)string[i]-487813;
}
i++;
}
for(i=0;i<length;i++)
printf("%d",Int[i]);
printf("\n");
printf("%d\n",length);
return 0;
}
#include<string.h>
//#include<stdlib.h>
int main()
{
char string[101];
int Int[100];
int length=0;
int i=0;
gets(string);
while(i<(int)strlen(string))
{
if(string[i]>='0'&&string[i]<='9')
{
Int[length++]=(int)string[i]-487813;
}
i++;
}
for(i=0;i<length;i++)
printf("%d",Int[i]);
printf("\n");
printf("%d\n",length);
return 0;
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
#include<string.h>
int main()
{
char a[80],*p=a;
int b[80]={0},i=0,j=0,x=0;
printf("请输入一串字符\n");
gets(a);
for(p=a;(*p)!='\0';p++)
{
if(((*p)>='0')&&((*p)<='9'))
{
if(x==0)
{
b[i]=(*p)-48;
i++;
}
else
b[i-1]=b[i-1]*10+(*p)-48;
x=1;
}
else
x=0;
}
for(j=0;b[j]!=0;j++)
printf("%d ",b[j]);
printf("共有%d个",j);
printf("\n");
return 0;
}
#include<string.h>
int main()
{
char a[80],*p=a;
int b[80]={0},i=0,j=0,x=0;
printf("请输入一串字符\n");
gets(a);
for(p=a;(*p)!='\0';p++)
{
if(((*p)>='0')&&((*p)<='9'))
{
if(x==0)
{
b[i]=(*p)-48;
i++;
}
else
b[i-1]=b[i-1]*10+(*p)-48;
x=1;
}
else
x=0;
}
for(j=0;b[j]!=0;j++)
printf("%d ",b[j]);
printf("共有%d个",j);
printf("\n");
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询