C 练习实例35
题目:字符串反转,如将字符串 "study.p2hp.com" 反转为 "moc.boonur.www"。
程序分析:无。
实例
// Created by study.p2hp.com on 15/11/9.
// Copyright © 2015年 高手教程. All rights reserved.
//
#include <stdio.h>
void reverse(char* s)
{
// 获取字符串长度
int len = 0;
char* p = s;
while (*p != 0)
{
len++;
p++;
}
// 交换 ...
int i = 0;
char c;
while (i <= len / 2 - 1)
{
c = *(s + i);
*(s + i) = *(s + len - 1 - i);
*(s + len - 1 - i) = c;
i++;
}
}
int main()
{
char s[] = "study.p2hp.com";
printf("'%s' =>\n", s);
reverse(s); // 反转字符串
printf("'%s'\n", s);
return 0;
}
以上实例输出结果为:
'study.p2hp.com' => 'moc.boonur.www'
C 语言经典100例



dd
a12***59648z@qq.com
参考解法:
#include <stdio.h> #include<string.h> int main() { char c[1000]; fgets(c, (sizeof c / sizeof c[0]), stdin); int d=strlen(c); //printf("%d\n",d); char a[1000]; int j=0; for(int i=d-1;i>=0;i--) { a[i]=c[j]; j++; } puts(a); }dd
a12***59648z@qq.com
masterGKT
gkt***lic@163.com
参考方法:
#include<stdio.h> #include<string.h> void reverse(char *str) { int len; char tmp; char *begin,*end; len=strlen(str); //获取字符串长度] begin=str; //指针begin指向字符串首地址 end=str+len-1; //指针end指向字符串尾地址 while(begin<end) { tmp=*begin; *begin=*end; *end=tmp; begin++; end--; } } int main() { char string[]="study.p2hp.com"; reverse(string); puts(string); return 0; }masterGKT
gkt***lic@163.com
Eric
wxp***4@163.com
参考方法:
#include <stdio.h> #include <string.h> int main() { char s[128] = {0}, s1[128] = {0}; int i, j = 0; printf("请输入字符串:"); gets(s); for (i = strlen(s) - 1; i >= 0; i--) { s1[j++] = s[i]; } puts(s); puts(s1); return 0; }Eric
wxp***4@163.com