C语言字符串逆序输出

//题目描述
//给定一行字符,逆序输出此行(空格.数字不输出)
//输入格式
//第一行是一个整数N(N<10)表示测试数据的组数)
//每组测试数据占一行,每行数据中间有且只有一个空格(这样你可以把此行当成两个字符串读取)。
//每行字符长度不超过40
//并且保证输入的字符只有空格(1个),数字,小写字母三种
//输出格式
//对应每行测试数据,逆序输出(空格和数字不输出)
//样例输入
//3
//abc 123de
//abc 123
//abc d
//样例输出
//edcba
//cba
//dcba

有用请采纳

#include <stdio.h>
#include <string.h>

void printReverse(char str1[], char str2[]){
    for (int i = strlen(str2) - 1; i >= 0; i--)
        if ('a' <= str2[i] && str2[i] <= 'z')
            printf("%c", str2[i]); 
            
    for (int i = strlen(str1) - 1; i >= 0; i--)
        if ('a' <= str1[i] && str1[i] <= 'z')
            printf("%c", str1[i]);
    
    printf("\n"); 
}

int main(){
    char str1[40], str2[40];
    int N;
    scanf("%d", &N);  // 输入数据数量
    for(int i = 0; i < N; i++){
        scanf("%s %s", str1, str2);
        printReverse(str1, str2);
    } 
} 

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^