C 反向打印第三弹-反向打印单词
一个单词读入一个字符数组,然后反向打印出这个值。提示:使用strlen()计算数组中最后一个字符的索引。
关于strlen()
在以下两篇中略有提及:
http://codesky.me/archives/c-strlen-v2.wind
http://codesky.me/archives/c-variable-const-type.wind
前者编写了等功能的函数,后者则是更加泛泛而谈了。
关于前两个反向打印:
C 编写函数实现函数字符串字符颠倒
C 输入三位数,使之变成逆序输出
这次的为什么是单词,与前两个有什么不同,当然是大有不同的了,这里我们用到了scanf()
的特性——遇到空白字符就会停止读取,这是他与getchar()
明显的不同,所以用getchar()
写出来的其实是最有用的,而那个三位数,局限性太大,不提也罢。
其实就是把字符串数组反向输出,没什么难度,这个很简单。
#include <stdio.h>
int main(void)
{
char string[40];
int i;
printf("Please print a word: ");
scanf("%s", string);
if (strlen(string) > 40)
printf("Sorry, too long");
else
for (i = strlen(string) - 1; i >= 0 ; i--)
printf("%c", string[i]);
printf("\n");
return 0;
}
不过如果超过数组定义长度,很自然就会挂了。
植入部分
如果您觉得文章不错,可以通过赞助支持我。
如果您不希望打赏,也可以通过关闭广告屏蔽插件的形式帮助网站运作。