解题思路:
可以定义一个数组循环输入,也可以定义一个数组然后使用字符串输入格式 "%s" 输入,还可以使用gets输入(gets不安全,尽量不用),这里使用fgets输入,fgets函数具有三个参数,第一个参数表示输入的地址,第二个参数表示输入的大小,实际大小比该数小1,因为fgets会把最后一位用来存储换行符(自动生成),

第三个参数表示读取文件的方式(可以在文件中读取,那么就填写文件的地址,也可以从键盘中获取,也就是标准输入流stdin)


注意事项:
1、使用fgets会自动添加换行符到最后一位,而系统的回车键包含了"\r"和"\n",所以输出的时候会空一行在输出

2、gets不会自动添加换行符,但是gets不安全


参考代码:

#include <stdio.h>
#include <string.h>
void reverse(char s[])
{
    for (int i = strlen(s) - 1; i >= 0; i--)
        printf("%c", s[i]);
}

int main()
{
    char s[100];
    fgets(s, 100, stdin);    // fgets会在字符串末尾自动添加换行符,而gets不会,但是gets不安全
    s[strlen(s) - 1] = '\0'; // 把字符串末尾的换行符替换成结束符,就不会输出换行符
    reverse(s);
    return 0;
}


点赞(2)
 

0.0分

1 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论