#include <stdio.h>
typedef int Day;
//变量,虽然是const类型变量,但也是变量
//switch case要求的是常量
const Day Monday = 1;
const Day Tuesday = 2;
const Day Wednesday = 3;
const Day Thursday = 4;
const Day Friday = 5;
const Day Saturday = 6;
const Day Sunday = 7;
const char* week[7] = { "Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday" };
void Everyday(Day day) {
if (day == Monday)printf("Today is %s", week[day - 1]);
if (day == Tuesday)printf("Today is %s", week[day - 1]);
if (day == Wednesday)printf("Today is %s", week[day - 1]);
if (day == Thursday)printf("Today is %s", week[day - 1]);
if (day == Friday)printf("Today is %s", week[day - 1]);
if (day == Saturday)printf("Today is %s", week[day - 1]);
if (day == Sunday)printf("Today is %s", week[day - 1]);
}
int main(int argc, char* argv) {
Day i = 1;
//scanf_s("%d", &i);
Everyday(1);
return 0;
}
#include <stdio.h>
//定义枚举类型的主要目的是:增加程序的可读性。
//枚举类型最常见也最有意义的用处之一就是用来描述状态量,这点将在第9章 输入输出流类看到。
//里面的每个元素都是整数常量,默认是从0开始,但是可以指定开始起始数字,Monday=1
enum WEEK {
Monday=1,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday
};
//枚举值是常量不是变量,不能在程序中再为枚举元素赋值。
const char* week[7] = { "Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday" };
int main(int argc, char* argv) {
// printf("%d", Monday);
enum WEEK day;
/* printf("枚举类型所占字节数:%d", sizeof(day));
* 就是1个int的字节数大小
*/
printf("Monday %d, Tuesday %d, Wednesday %d, Thursday %d, Friday %d, Saturday %d, Sunday %d", Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday);
day = Tuesday;
//枚举变量的值只能取枚举常量表中所列的值,就是整型数的一个子集。
scanf_s("%d",&day);
switch (day) {
case Monday:
printf("%s", week[day - 1]);
break;
case Tuesday:
printf("%s", week[day - 1]);
break;
case Wednesday:
printf("%s", week[day - 1]);
break;
case Thursday:
printf("%s", week[day - 1]);
break;
case Friday:
printf("%s", week[day - 1]);
break;
case Saturday:
printf("%s", week[day - 1]);
break;
case Sunday:
printf("%s", week[day]);
break;
default:
break;
}
return 0;
}