解题思路:
字符串的反转就是直接输出这个字符串的逆序。
注意事项:
1、为什么是 gets(a);
因为:
gets函数类似于scanf函数,用于读取标准输入,gets函数可以读入空格,而scanf函数不可以。scanf函数当输入空格时,就认为读取结束。
2、为什么i = len -1?
因为数组长度的下标是从0开始:
例:char a[3];它有a[0], a[1], a[2]这几个元素,而没有a[3]这个元素;
3、为什么输出的是”%c“呢? printf("%c", a[i]);
因为在字符串中,也可以一个一个元素输出。
例子:
char a[3] = {'a', 'b', 'c'};
相当于char b[3] = "abc";
这个两个数组的等价的;
所以可以这样输出:printf("%c", a[i]);
参考代码:
#include <stdio.h>
#include<string.h>//因为使用到了strlen(),所以需要这个头文件
int main() {
char a[100];//定义一个字符串数组;
int i = 0;//用于循环遍历输出
gets(a);//输入字符串;
int len = strlen(a);//计算输入a的长度
for(i = len - 1; i >= 0; i--){//方便逆序输出字符串,采用了数组从后面输出字符的结果。
printf("%c", a[i]);//逆序输出字符。
}
return 0;
}
0.0分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复