c语言编程急急急 100

c语言编程急急急从键盘读入一个字符串,将其中所有的数字字符按顺序组成一个整数输出,如果没有数字字符则输出0例如输入a1bc23输出123... c语言编程急急急从键盘读入一个字符串,将其中所有的数字字符按顺序组成一个整数输出,如果没有数字字符则输出0 例如 输入a1bc23输出123 展开
 我来答
xoaxa
2017-06-24 · TA获得超过8610个赞
知道大有可为答主
回答量:6415
采纳率:72%
帮助的人:3481万
展开全部

#include <stdio.h>

unsigned change(char s[]) {
unsigned i = 0,m = 0;
while(s[i]) {
if(s[i] >= '0' && s[i] <= '9')
m = 10*m + s[i] - '0';
++i;
}
return m;
}

int main() {
int T;
char s[81];
printf("T = ");
scanf("%d",&T);
while(T--) {
fflush(stdin);
gets(s);
printf("%u\n",change(s));
}
return 0;
}
更多追问追答
追问

这个能不能也帮我做一下……
匿名用户
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;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
慧洁小七
2017-06-24 · 超过17用户采纳过TA的回答
知道答主
回答量:103
采纳率:0%
帮助的人:11.3万
展开全部
#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;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xuzhouliuying
高粉答主

2017-06-24 · 繁杂信息太多,你要学会辨别
知道顶级答主
回答量:5.4万
采纳率:86%
帮助的人:2.5亿
展开全部
#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");
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式