【发布时间】:2015-12-08 16:35:58
【问题描述】:
我最近开始了一门 C 编程课程。我接到了一个任务,我将使用以下声明创建一个外部函数:
void reverse(char *array, int numberOfChars)
我的代码目前看起来像这样。问题是代码只会反转单词的前半部分,而后半部分保持正常。
#include <stdio.h>
#include <string.h>
void reverse(char *array, int numberOfChars) {
int i = 0;
int j = 0;
for (i = numberOfChars - 1; i >= 0; i--) {
array[j] = array[i];
j = j + 1;
}
}
#define NAMESIZE 100
int main() {
char word[NAMESIZE];
int length;
printf("Enter a word: ");
scanf("%s", word);
getchar();
length = strlen(word);
reverse(word, length);
printf("%s\n", word);
}
【问题讨论】: