Так что я сделал программу, которая принимает слова и сортирует их по алфавиту. Вместо ввода, который является стандартным вводом, мой ввод отправляется через командную строку, которая мне не нужна. У меня возникают проблемы с тем, как он подходит к нему.C программа принимает стандартный вход
запустить мою программу с входами я должен ввести ./a.out Orange Apple banana
, но я хотел бы иметь возможность вводить ./a.out
затем нажмите клавишу ВВОД, а затем введите свой вклад.
Вот мой код
#include <stdio.h>
#include <string.h>
int main(int argc, char* argv[]) {
int i, j, k, size;
size = argc -1;
char *key;
char* a[argc-1];
for (i = 2; i < argc; i++) {
key = argv[i];
key[0] = tolower(key[0]);
j = i-1;
while (j >= 1 && strcmp(argv[j], key) > 0) {
argv[j+1] = argv[j];
j--;
}
argv[j+1] = key;
}
if (argc > 1){
for (i = 1; i < argc;){
puts(argv[i]);
while (argv[++i] != NULL && strcmp(argv[i - 1], argv[i]) == 0)
continue;
}
}
return 0;
}
Значит, вы набрали код, в котором он полностью делает то, что вы не хотите, чтобы он делал? Посмотрите в scanf? –
Почему вы не используете scanf? –
Это единственный способ, которым я знаю, как это займет столько входов, сколько возможно, с помощью scanf, как бы я продолжал добавлять строки. @OmidCompSCI –