我想做一些非常简单的事情,但是不知怎么做。我有一个带有数字的文件。我想从该文件中读取并打印这些数字,但顺序相反。
所以假设我们有数字:10324367我希望有:76433210
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX 255
int main(int argc, char *argv[]) {
char userInput[MAX], target[MAX];
FILE *file = stdin;
if (argc > 2) {
fprintf(stderr, "Usage: %s[<file>]\n", argv[0]);
exit(EXIT_FAILURE);
}
if (argc == 2) {
file = fopen(argv[1], "r");
if (!file) {
perror(argv[0]);
exit(EXIT_FAILURE);
}
}
while(fgets(userInput, sizeof(userInput), file)) {
size_t len = strlen(userInput);
int i;
for (i = len-1; i >= 0; i--) {
if (userInput[i] == ' ') {
userInput[i] = '\0';
printf("%s ", &(userInput[i]) + 1);
}
}
printf("%s", userInput);
}
if (file != stdin) {
fclose(file);
}
exit(EXIT_SUCCESS);
}
有人看到错误了吗?
这是我的.txt文件的内容:
11
34
45
3
78
43
3
4
9
34
23
43
您的程序旨在在一行上接受其所有输入。您的输入文件包含多行。