注册 登录
编程论坛 C语言论坛

输入一个字符串,将组成字符串的所有非数字字符删除后倒置输出。

w257326716 发布于 2020-05-25 23:40, 2685 次点击
求问大佬帮忙解决一下,谢谢!
7 回复
#2
吹水佬2020-05-26 06:48
从字符串尾向头扫描,只输出数字字符
#3
fulltimelink2020-05-26 07:01
倒序类的都可以考虑下使用递归
void reverserm(char *s){
if('\0'!=*s) {
reverserm(s+1);
if(非数字) putchar(*s);
}
#4
lin51616782020-05-26 09:47
以下是引用fulltimelink在2020-5-26 07:01:15的发言:

倒序类的都可以考虑下使用递归
void reverserm(char *s){
if('\0'!=*s) {
reverserm(s+1);
if(非数字) putchar(*s);
}

应该是 if(数字)putchar
#5
fulltimelink2020-05-26 12:34
回复 4楼 lin5161678
看题不仔细,多谢提出
#6
w2573267162020-05-27 10:06
回复 3楼 fulltimelink
大佬发的这个看不懂,能再详细点吗
#7
fulltimelink2020-05-27 10:35
回复 6楼 w257326716
程序代码:

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
void reverserm(char *s) {
    if ('\0' != *s) {
        reverserm(s + 1);
        if ('0' <= *s && *s <= '9') putchar(*s);
    }
}
int main(int argc, char ** argv) {
    char str[100];
    scanf_s("%s", str, 100);
    reverserm(str);
}
#8
w2573267162020-05-27 14:33
回复 7楼 fulltimelink
感谢大佬
1