c++程序问题求解
问题是:编写一个可以探索前世今生的算命程序。算命方法:将某人的出生年月日相加,例如,1978年10月26日出生的人就是1+9+7+8+1+0+2+6=34。如果结果不是一...
问题是:
编写一个可以探索前世今生的算命程序。
算命方法:将某人的出生年月日相加,例如,1978年10月26日出生的人就是1+9+7+8+1+0+2+6=34。如果结果不是一位数,就再相加(如果相加之后还不是一位数的话,就再相加,直到变成一位数为止)。因此,先前算出来的34,需再计算3+4=7。将最后得到的一位数字对照下面的列表就可以知道这个人上辈子是什么。
1 代表你上辈子是神仙
2 代表你上辈子是国王
3 代表你上辈子是贵族
4 代表你上辈子是读书人
5 代表你上辈子是有钱人
6 代表你上辈子是穷人
7 代表你上辈子是非人类
8 代表你上辈子是演员
9 代表你上辈子是出家人
下面是我写的
为什么输入20000414,应该输出第二个选项,可实际输出的是default后边的那个?
求解,多谢了 展开
编写一个可以探索前世今生的算命程序。
算命方法:将某人的出生年月日相加,例如,1978年10月26日出生的人就是1+9+7+8+1+0+2+6=34。如果结果不是一位数,就再相加(如果相加之后还不是一位数的话,就再相加,直到变成一位数为止)。因此,先前算出来的34,需再计算3+4=7。将最后得到的一位数字对照下面的列表就可以知道这个人上辈子是什么。
1 代表你上辈子是神仙
2 代表你上辈子是国王
3 代表你上辈子是贵族
4 代表你上辈子是读书人
5 代表你上辈子是有钱人
6 代表你上辈子是穷人
7 代表你上辈子是非人类
8 代表你上辈子是演员
9 代表你上辈子是出家人
下面是我写的
为什么输入20000414,应该输出第二个选项,可实际输出的是default后边的那个?
求解,多谢了 展开
7个回答
展开全部
//亲,看看这个程序如何?如果满意,请尽快采纳!
#include <iostream>
using namespace std;
void main()
{
char date[8]; //定义字符型 出生日期(字符型可使输入时不输入空格)
int i,sum=0; //sum为各数之和
cout<<"请输入你的出生日期:";
for(i=0;i<8;i++)
{
cin>>date[i];
sum+=date[i]-32; //将字符型的日期转换为整型,并逐个相加;
}
//因为日期最大为9999.12.31,其和为79,故sum至多是两位数
cout<<"\t"; //为了输出格式美观,添加该句
while(sum/10!=0)
{
sum=sum/10+sum%10; //十位数与个位数相加
}
switch(sum)
{
case 0:cout<<"你没有上辈子,节哀!!";break;
case 1:cout<<"你上辈子是神仙!";break;
case 2:cout<<"你上辈子是国王!";break;
case 3:cout<<"你上辈子是贵族!";break;
case 4:cout<<"你上辈子是读书人!";break;
case 5:cout<<"你上辈子是有钱人!";break;
case 6:cout<<"你上辈子是穷人!";break;
case 7:cout<<"你上辈子是非人类!";break;
case 8:cout<<"你上辈子是演员!";break;
case 9:cout<<"你上辈子是出家人!";break;
}
cout<<endl;
}
执行结果:
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
switch中,default中的程序就是不管case任何值都会执行的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的while循环的结束条件是d=0 所以。。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你能给我个电子的吗,这个看着很不舒服
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的变量是什么时候定义的,用的什么数据类型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询