c语言编程急急急 100
c语言编程急急急从键盘读入一个字符串,将其中所有的数字字符按顺序组成一个整数输出,如果没有数字字符则输出0例如输入a1bc23输出123...
c语言编程急急急从键盘读入一个字符串,将其中所有的数字字符按顺序组成一个整数输出,如果没有数字字符则输出0 例如 输入a1bc23输出123
展开
4个回答
展开全部
2017-06-24
展开全部
参考代码:
#include <stdio.h>
#include <string.h>
int main(int argc, char *argv[])
{
char s[100];
char tmp[100] = "0";
int i, j = 0;
gets(s);
for (i = 0; i < strlen(s); i++)
{
if (s[i] >= '1' && s[i] <= '9' || (j != 0 && s[i] == '0'))
{
tmp[j++] = s[i];
}
}
if (j != 0)
{
tmp[j] = '\0';
}
printf("%s\n", tmp);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
int getNum(char *s, int a[])
{
int i, f, c;
for(i = f = c = 0; s[i]; i++)
if('0' <= s[i] && s[i] <= '9')
if(f)
a[c - 1] = a[c - 1] * 10 + s[i] - '0';
else
{
f = 1;
a[c++] = s[i] - '0';
}
else
f = 0;
return c;
}
int main()
{ int i, c, a[200];
char s[200];
gets(s);
c = getNum(s, a);
printf(" %d\n",c);
for(i = 0; i < c; i++)
printf("%d\n", a[i]);
return 0;
}
int getNum(char *s, int a[])
{
int i, f, c;
for(i = f = c = 0; s[i]; i++)
if('0' <= s[i] && s[i] <= '9')
if(f)
a[c - 1] = a[c - 1] * 10 + s[i] - '0';
else
{
f = 1;
a[c++] = s[i] - '0';
}
else
f = 0;
return c;
}
int main()
{ int i, c, a[200];
char s[200];
gets(s);
c = getNum(s, a);
printf(" %d\n",c);
for(i = 0; i < c; i++)
printf("%d\n", a[i]);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
#include <string.h>
void main()
{
int i,n,k=1;
char str[100];
gets(str);
n=strlen(str);
for(i=0;i<n;i++)
if(str[i]>='0'&&str[i]<='9')
{
printf("%c",str[i]);
k=0;
}
if(k) printf("0");
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询