题目:字符串反转,如将字符串 “ling08140814” 反转为 “41084108gnil”。
C实现:
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
void StringReverse(char *s) {
int len = 0;
char *p = s;
while (*p != 0) {
p++;
len++;
}
char c;
for (int i = 0; i < len / 2 - 1; i++) {
c = *(s + i);
*(s + i) = *(s + len - 1 - i);
*(s + len - 1 - i) = c;
}
}
int main(void) {
char string[] = "ling08140814";
printf("输入的字符串为:%s\n", string);
StringReverse(string);
printf("反转后的字符串为:%s\n", string);
return 0;
}
C运行结果:
C++实现:
#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
using namespace std;
void StringReverse(char *s) {
int len = 0;
char *p = s;
while (*p != 0) {
p++;
len++;
}
char c;
for (int i = 0; i < len / 2 - 1; i++) {
c = *(s + i);
*(s + i) = *(s + len - 1 - i);
*(s + len - 1 - i) = c;
}
}
int main(void){
char string[] = "ling08140814";
cout << "输入的字符串为:" << string << endl;
StringReverse(string);
cout << "反转后的字符串为:" << string << endl;
return 0;
}
C++运行结果: