Это как предупреждение говорит: функция ожидает указателей на типы, которые вы ей даете. Исправьте это, поместив &
перед переменной, что заставит его вместо этого передать адрес:
printf("Geben Sie eine ganze Zahl");
scanf("%d", &x);
printf("Geben Sie eine reele Zahl");
scanf("%lf", &f);
Существует также проблема с тем, как вы читаете в символах. Это здесь
char r[1] = "";
char s[1] = "";
Создает два массива, которые не содержат ничего, кроме нулевого терминатора. У него нет возможности читать непустую строку, которую вы здесь делаете:
scanf("%s", r);
Неясно, пытаетесь ли вы прочитать целую строку или просто символ,как ваш вывод подразумевает. Только для одного символа ваш код должен выглядеть следующим образом:
char r;
scanf("%c", &r);
И для всей строки:
char r[20]; // can hold 19 chars plus a null terminator
scanf("%19s", r);
Настройте эти размеры в соответствии с длиной строки, которая вам нужна. читать.