用c语言完成以下题目:输入一句英文,其中的单词翻转并输出
时间: 2023-03-28 07:04:32 浏览: 154
我可以回答这个问题。以下是用 C 语言完成输入一句英文,其中的单词翻转并输出的代码:
```
#include <stdio.h>
#include <string.h>
void reverse(char *start, char *end) {
char temp;
while (start < end) {
temp = *start;
*start++ = *end;
*end-- = temp;
}
}
void reverseWords(char *s) {
char *word_start = NULL;
char *temp = s;
while (*temp) {
if (word_start == NULL && *temp != ' ') {
word_start = temp;
}
if (word_start && (*(temp + 1) == ' ' || *(temp + 1) == '\')) {
reverse(word_start, temp);
word_start = NULL;
}
temp++;
}
reverse(s, temp - 1);
}
int main() {
char s[100];
printf("请输入一句英文:");
fgets(s, 100, stdin);
s[strcspn(s, "\n")] = '\'; // 去掉换行符
reverseWords(s);
printf("翻转后的结果为:%s\n", s);
return ;
}
```
输入一句英文后,程序会将其中的单词翻转并输出。例如,输入 "hello world",输出 "world hello"。
阅读全文