Ввести число от 1 до 7, чтобы программа выдала день недели - C (СИ)
Формулировка задачи:
Я не понимаю, почему мне программа выдает обратно число
int main(void) {
int x;
printf("vvedite chislo\n"); scanf("%d",&x);
if(x==1)
printf("ponedelnik\n");
else if(x==2)
printf("vtornik\n");
else if(x==3)
printf("sreda\n");
else if(x==4)
printf("chetverg\n");
else if(x==5)
printf("pjatnica\n");
else if(x==6)
printf("subota\n");
else if(x==7)
printf("voskresenje\n");
else printf("Nepravilno vvedeno ");
return 0;
}Решение задачи: «Ввести число от 1 до 7, чтобы программа выдала день недели»
textual
Листинг программы
#include <stdio.h>
#include <time.h>
#define DAY_NAME_LENGTH (32)
int main(void) {
int n;
while ( printf("The day number: ") && scanf("%d", &n) == 1 && n > 0 && n < 8 ) {
struct tm t = { .tm_wday = n % 7 };
char dayname[DAY_NAME_LENGTH];
strftime(dayname, DAY_NAME_LENGTH, "%A", &t);
printf("Is %s\n", dayname);
}
return 0;
}