实例代码
//
//实现功能:输入一个字符串,然后将该字符串反向输出
//#include "stdio.h"
#include "string.h"#define N 50void convert_str(char str[N]);void convert_str(char str[N]){int j;char temp;for (int i = 0; i < strlen(str)/2; i ) {j = strlen(str) - 1;temp = str[i];str[i] = str[j - i];str[j - i] = temp;}printf("反向输出:%s", str);
}int main(){char str[N];printf("请输入字符串:\n");gets_s(str, N);printf("输入的字符串为:%s\n", str);convert_str(str);
}
运行结果:
程序分析
注意:实例中有这样一个语句j = strlen(str) - 1;
这里j为什么是j = strlen(str) - 1;
而不是strlen(str)
呢?原因如下:如果数组s中含有10个元素,那么它的长度为10,而s的数组下标从0开始那么下标的最大值为9,j这里是代表数组下标,所以开始时的最大值应是strlen(str)-1
也就是9。
声明:
本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜。