編寫函數reverse(s),將字符串s中的字符順序顛倒過來。
使用給函數編一個一個程序,每次顛倒一個輸入行的順序。
代碼:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define MAXLINE 1024
char *reverse(char *s);
int main(int argc, char *argv[])
{
char line[MAXLINE] = "";
FILE *fp = fopen("main.c", "r");
while (fgets(line, MAXLINE-1, fp) != NULL) {
printf("%s", line);
reverse(line);
printf(line);
getchar();
}
return 0;
}
char *reverse(char *s)
{
size_t i = 0;
size_t j = strlen(s)-1;
while (i < j) {
char c = s[i];
s[i] = s[j];
s[j] = c;
++i;--j;
}
}