输入今天星期几,输出昨天是星期几

来源:百度知道 编辑:UC知道 时间:2024/05/10 05:31:21
这是书上的代码
#include<iostream.h>
enum weekday {sun,mon,tue,wed,thu,fri,sat};
void main()
{
weekday yesterday;
int today;
cout<<"which day is today in this week?"
<<"(sun,mon,tue,wed,thu,fri,sat)"
<<endl;
cin>>today;
yesterday=(weekday)((today-1+7)%7);
cout<<"yesterday is "<<(weekday)yesterday<<endl;

}

无论输入星期几,总是输入6,能不能指一下哪里错了啊

你肯定是输入的时候按照提示的"sun,mon,tue,wed,thu,fri,sat"输入的吧?
既然today是int型,那怎么能输入这些英文呢?
输入的时候换成数字就正常了
你可以修改today的类型为char,就可以输入英文了
或者把输入时候的提示改为"7,1,2,3,4,5,6"

因为你输入的是:sun,mon,tue,wed,thu,fri,sat 之一,cin>>today是输入int,输入失败,today的值在输入后始终是0,所以无论你输入什么都是6.