天天看點

輸入今天是星期幾的序号,給今天和昨天賦予枚舉值,并輸出昨天是星期幾的枚舉值

《程式設計基礎-c語言》楊莉 劉鴻翔  
ISBN-978-7-03-032903-5  
p165
習題6
           

4.輸入今天是星期幾的序号(0~6代表星期天至星期六),給今天和昨天賦予枚舉值,并輸出昨天是星期幾的枚舉值

思路:

  1. 枚舉

    常量

    定義時,按順序依次為0~6
  2. 通過

    switch

    判斷星期幾,确定昨天的序号,通過枚舉值指派(注意:枚舉常量不能指派)
#include<stdio.h>
enum weeks
{
	Sunday,		/*枚舉值:0*/
	Monday,		/*枚舉值:1*/
	Tuesday,	/*枚舉值:2*/
	Wednesday,	/*枚舉值:3*/
	Thusday,	/*枚舉值:4*/
	Firday,		/*枚舉值:5*/
	Saturday,	/*枚舉值:6*/
}today,yesterday;
int main(void)
{
	
	printf("輸入今天是星期幾的序号(0~6):");
	scanf("%d",&today);
		switch(today)
		{
			case 0:yesterday=Saturday;break;	/*今天是星期天,昨天是星期六,枚舉值為6*/ 
			case 1:yesterday=Sunday;break;		/*今天是星期六,昨天是星期天,枚舉值為0*/ 
			case 2:yesterday=Monday;break;		/*今天是星期二,昨天是星期一,枚舉值為1*/ 
			case 3:yesterday=Tuesday;break;		/*今天是星期三,昨天是星期二,枚舉值為2*/ 
			case 4:yesterday=Wednesday;break;	/*今天是星期四,昨天是星期三,枚舉值為3*/ 
			case 5:yesterday=Thusday;break;		/*今天是星期五,昨天是星期四,枚舉值為4*/ 
			case 6:yesterday=Firday;break;		/*今天是星期六,昨天是星期五,枚舉值為5*/ 
		}
	if(yesterday==0)
	{
		printf("\n昨天是星期天對應的枚舉值:");
	}
	else
	{
		printf("\n昨天是星期%d對應的枚舉值:",yesterday);
	}
	printf("%d\n",yesterday);
}
           
輸入今天是星期幾的序号,給今天和昨天賦予枚舉值,并輸出昨天是星期幾的枚舉值
輸入今天是星期幾的序号,給今天和昨天賦予枚舉值,并輸出昨天是星期幾的枚舉值

繼續閱讀