C语言基础:使字符串倒序输出
1. 用字符指针作形参
例1:
void reverse1(char *s)
{
char* p=s+strlen(s)-1;
char t;
while(s<p)
{
t=*p;
*p=*s;
*s=t;
p--;
s++;
}
}
int main(void)
{
char str[128];
scanf("%s", str);
reverse1(str);
printf("%s\n", str);
return 0;
}
例2:
void reverse2(char *s)
{
int i,j;
char p;
j=strlen(s);
for(i=0;i<j/2;i++)
{
p=s[i];
s[i]=s[j-i-1];
s[j-i-1]=p;
}
}
int main()
{
char str[128];
scanf("%s",str);
reverse2(str);
printf("%s\n",str);
return 0;
}
2. 用字符数组作形参
例3:
void reverse3(char s[])
{
int i,j;
j=strlen(s);
for(i=j-1;i>=0;i--)
printf("%c",s[i]);
printf("\n");
}
int main()
{
char str[128];
scanf("%s",str);
reverse3(str);
return 0;
}
例4:
char *reverse4(char s[])
{
int i,j;
char *p;
//动态申请了一个内存大小为128字节的数组,然后把地址存在b中,b可视为一个128字节的字符数组。
char *b = new char[128];//堆区开辟空间
//将字符数组初始化
memset(b, 0, 128);
j=strlen(s);
for(i=0;i<j;i++)
b[i]=s[j-1-i];
p=b;
return p;
}
int main( )
{
char str[128];
scanf("%s", str);
reverse4(str);
printf("%s\n",reverse4(str));
return 0;
}
运行结果:
输入:abcdefg
输出:gfedcba
——>以上内容是关于如何用C语言实现字符串倒序输出,希望对初学者或再次学习者有所帮助,基础打扎实,不怕风吹雨打! 如果以上内容有错误或者内容不全,望大家提出!我也会继续写好每一篇博文!
待续未完
——文优
欢迎观看和提问!!!