c语言编写程序,判断输入的日期(月,日)属于哪个星座?

c语言编写程序,判断输入的日期(月,日)属于哪个星座?,第1张

c语言的输出输入是格式化的,printf表示输出,在屏幕上打印出来;scanf表示读入,即把你在屏幕上如果打10,按回车,10就存储到month那个变量里面,%d代表输入一个整数。

还有,要注意,你那个不是c语言……已经是c++了。你看上面定义的那个struct结构体里竟然已经有public……而且还有函数的定义……

Date(int m, int d) 是函数的声明,set(m, d)是函数的定义。声明嘛,就是说,我声明有这个函数存在(注意哦,不一定要给出这个函数具体怎样的)~定义嘛,就是我要给出这个函数的具体内容和定义。就比如说,我声明我和张三是好朋友,但我不一定要介绍张三是一个怎样的人。但我定义张三这个朋友的话,我就必须从各方面都介绍他。声明和定义在程序设计中,表示形式往往就不一样了。

函数名是自己起的,爱怎么起都行,只要调用和定义能对上号就好。

学程序一开始慢慢来,不用急。当年我写第一个c语言程序,漏了许多分号,被朋友嘲笑了很久……当时也和你一样,printf什么的一直不会用。不过现在就好了……

c语言的教材的话,国内的鲜有好书,还是推荐你看谭浩强写的,清华大学出版社。确实编的很好,深入浅出,很多抽象概念他老人家都解释得特别好,国内其他教材都比不上。当你学好基础,想进一步学习的话,推荐两本国外教材,C PRIMER PLUS 和THE C PROGRAMMING。C PRIMER PLUS比较全,THE C PROGRAMMING是c语言发明者写的,很牛,不过他写法和中国传统思维很不一样,建议看完谭浩强的书之后再去看。

祝你享受编程的快乐~!

补充,代码注释:

#include<stdioh>
#include<stringh>
//这个程序写得实在不敢恭维,可读性极低。变量名起得很不好,重复太多,很容易引起误解。所以我建议初学者还是去看一些精挑细选的例子,比如谭浩强书上那些真的很不错。我在THU学EE的,这是我亲身经验和个人建议。。

struct Date //定义了一个叫Date的结构体
{
int month, day;
public:
Date(int m, int d) //声明一个叫Date的函数
{
set(m, d);
}
void set(int m, int d);

void constell(); //Date结构体底下有一个叫constell的函数
};

void Date::set(int m, int d)
{
//在此最好检查日期是否输入正确
month=m, day=d;
}

void Date::constell()
{
string c[12][2]={ {"魔蝎座", "水瓶座"}, {"水瓶座", "双鱼座"}, {"双鱼座", "白羊座"},
{"白羊座", "金牛座"}, {"金牛座", "双子座"}, {"双子座", "巨蟹座"},
{"巨蟹座", "狮子座"}, {"狮子座", "处女座"}, {"处女座", "天秤座"},
{"天秤座", "天蝎座"}, {"天蝎座", "射手座"}, {"射手座", "魔蝎座"}
};

int x=month-1;
int y=day/21;
printf("%s",c[x][y]);
}

int main()
{
int month,day;
printf("请输入月份: ");
scanf("%d",&month);
cout<<"请输入日期: ";
scanf("%d",&day);
Date d(month,day); //声明一个Date类型的结构体变量(也可以叫对象),叫d(里面包含set,constell等函数,如一开头结构体定义所示)。其作用相当于int i,声明一个整型变量i
dconstell(); //调用结构体变量d下constell函数
return 0;
}

欢迎分享,转载请注明来源:表白网

原文地址:https://h5.hunlipic.com/xing/3514119.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2024-03-05
下一篇2024-03-05

发表评论

登录后才能评论

评论列表(0条)

    保存