02练习题答案.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
参考答案: 1、运行结果为:不断从控制台接收字符,直到遇到x开头的字符 2、请说出使用const和define定义常量,在语法上和含义上有什么不同,并编程举例说明。 如果用常量或者宏来定义一个PI值,那么语法分别如下: 宏: #define PI 3.1415926 这个语法不是c语言语法,而是预编译指令语法,没有;结尾 const: const float PI=3.1415926; 这个语法是标准c语言常变量语法 用宏来代表常数,好处: (1) 让代码更简洁明了,当然这有赖于你为宏取一个适当的名字,名字要以达意为主 (2) 方便代码的维护 缺点:? ? 对宏的处理,没有明确指定这个量的类型。这容易带来一些问题。 而用常变量则可以明确指定变量的数据类型。 3、字符常量是一个字符,在程序中字符是用单引号括起来的。字符串常量由0个或若干个字符组合而成,在程序中字符串是用双引号括起来的,在存储时系统自动在字符串最后面加一个结束符号’\0’,编程示范如下: char a=a; // 表示一个字符 char *b=abc; //第一种c语言表示的字符串 char c[4]=def; //第二种c语言表示的字符串 printf(%c\n,a); printf(%s\n,b); printf(%s\n,c); printf(%d\n,sizeof(a));//输出a所占据的字节数 printf(%d\n,sizeof(b));//输出abc文字常量区对应的地址(指针),所有的指针都是4字节 printf(“%d\n”,sizeof(c));//输出成员所占据的字节数×数组容量 4、char c = \0; while((c = getchar()) != \n) { if(c = a c = z) { c -= 32; } putchar(c); } putchar(\n); 5.闰年 (1). 关于公历闰年的规定: 地球绕太阳公转一周叫做一回归年,一回归年长365日5时48分46秒,也就是365.2422天。因此,公历规定有平年和闰年,平年一年有365日,比回归年短0.2422日,四年共短0.9688日,故每四年增加一日,把这一天加在2月里,这一年有366日,就是闰年。但四年增加一日比四个回归年又多0.0312日,400年后将多3.12日,故在400年中少设3个闰年,也就是在400年中只设97个闰年,这样公历年的平均长度与回归年就相近似了。由此规定:年份是整百数的必须是400的倍数才是闰年,例如1900年、2100年就不是闰年,但2000年是闰年。 也就是我们通常所说的: 四年一闰,百年不闰,四百年再闰。所以,除了末尾有00的其他时候都是四年一润。 (2). 闰年的计算算法是: a、非整百的年份每4年是闰年; b、整百的年份每400年才是闰年。 (3). 简化算法 #include stdio.h void IsLeapYear(int iYear) { if((iYear % 4 == 0 iYear % 100 != 0) || (iYear % 400 == 0)) { printf(%d is leapyear!\n, iYear); return ; } printf(%d is not leapyear!\n, iYear); return ; } int main() { int iYear = 0; printf(please input a year:); scanf(%d, iYear); if(iYear 4000 || iYear 1000) { printf(input error!\n); return -1; } IsLeapYear(iYear); return 0; } 6. #include stdio.h #include stdlib.h /* 月份对应的天数 */ int MONTH_TO_DAY[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; /* 判断是否是闰年 */ int IfLeapYear(int iYear) { if((iYear % 4 == 0 iYear % 100 != 0) || (iYear % 400 == 0)) { MONTH_TO_DAY[2] = 29; return 1; } else { MONTH_TO_DAY[2] = 28; return 0; } } /* 判断日期是否合法 */ int IfRight(int iYear, int

文档评论(0)

mhk8089 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档