Как правильно вывести целое число и строку в C?

У меня есть следующий код:

char *s1, *s2;
char str[10];

printf("Type a string: ");
scanf("%s", str);

s1 = &str[0];
s2 = &str[2];

printf("%s\n", s1);
printf("%s\n", s2);

Когда я запускаю код и ввожу ввод «A 1» следующим образом:

Type a string: A 1

Я получил следующий результат:

A
�<�

Я пытаюсь прочитать первый символ как строку и третий символ как целое число, а затем распечатать их на экране. Первый символ всегда работает, но после этого на экране будут отображаться случайные вещи.... Как мне это исправить?

19
задан Peter Mortensen 3 August 2019 в 20:37
поделиться