C语言实现对字符串的逆序输出
方法一:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void Inverse(char str[], char ptr[]);
int main()
{
char str[100];
char ptr[100];
printf("Input a string:");
gets(str);
Inverse(str,ptr);
printf("Inversed results:%s\n",ptr);
}
void Inverse(char str[], char ptr[]){
int n=strlen(str);
int i;
for(i=0;i<=n;i++){
ptr[i]=str[n-i-1];
}
ptr[i-1]='\0';
}
思路:通过倒着遍历数组str,并把遍历结果存入ptr从而实现改功能
方法二:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void Inverse(char str[]);
int main()
{
char str[100];
printf("Input a string:");
gets(str);
Inverse(str);
printf("Inversed results:%s\n",str);
}
void Inverse(char str[]){
int n=strlen(str);
int i;
char temp;
for(i=0;i<(n/2);i++){
temp=str[i];
str[i]=str[n-i-1];
str[n-i-1]=temp;
}
}
思路:通过将str数组的第1个字符和第n个字符交换位置,第二个和第n-1个交换…实现该功能
扫码关注作者个人技术公众号,有关技术问题后台回复即可,不定期将有学习资源分享