期末模拟上机考试参考程序.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
注意:请各班学习委员收到这个文件后,在你们班的群里面共享一下,让所有的同学都能够看到 第几天? 题目描述 给定一个日期,输出这个日期是该年的第几天。 ? 输入描述 输入数据的数据格式为YYYY/MM/DD组成,具体参见sample input ,另外,可以向你确保所有的输入数据是合法的。 ? 输出描述 对于每组输入数据,输出一行,表示该日期是该年的第几天。 ? 输入样例 1985/1/20 ? 输出样例 20#include stdio.h int isleap(int year){ if(year%4==0year%100!=0||year%400==0) return 1; else return 0; } int calculate(int year,int month,int day){ int days=0; switch(month-1){ case 11:days+=30; case 10:day+=31; case 9:days+=30; case 8:day+=31; case 7:days+=31; case 6:day+=30; case 5:days+=31; case 4:day+=30; case 3:days+=31; case 2:if(isleap(year)) days+=29; else days+=28; case 1:days+=31; } return (days+day); } int main(){ int year,month,day; scanf(%d/%d/%d,year,month,day); printf(%d,calculate(year,month,day)); return 0; } 水仙花数 题目描述 数学上有个水仙花数,是这样定义的: “水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153=1^3+5^3+3^3。 现在要求输出所有在m和n范围内的水仙花数。 ? 输入描述 每组数据占一行,包括两个整数m和n(100=m=n=999)。 ? 输出描述 对于每个测试实例,要求输出所有在给定范围内的水仙花数,就是说,输出的水仙花数必须大于等于m,并且小于等于n,如果有多个,则要求从小到大排列在一行内输出,之间用一个空格隔开; 如果给定的范围内不存在水仙花数,则输出no; 每个测试实例的输出占一行。 ? 输入样例 100 120 ? 输出样例 no #include stdio.h void shuixianhua(int m,int n){ int i; int ge,shi,bai; int flag=0; for(i=m;i=n;i++){ ge=i%10; shi=i/10%10; bai=i/100; if(ge*ge*ge+shi*shi*shi+bai*bai*bai==i){ printf(%d ,i); flag=1; } } if(!flag) printf(no\n); else printf(\n); } int main(){ int m,n; while(scanf(%d%d,m,n)!=EOF){ shuixianhua(m,n); } return 0; } 素数判定 题目描述 对于表达式n^2+n+41,当n在[x,y]范围内取整数值时,判定该表达式的值是否都为素数。 ? 输入描述 每组输入数据占一行,由两个整数x,y组成,其中(-39=xy=50) ? 输出描述 对于每个给定范围内的取值,如果表达式的值都为素数,则输出OK,否则请输出“Sorry”,每组输出占一行。 ? 输入样例 0 1 ? 输出样例 OK ? #include stdio.h int issushu(int n){ int i; for(i=2;in-1;i++) if(n%i==0) return 0; return 1; } int panduan(int x,int y){ int i; for(i=x;i=y;i++) if(!issushu(i*i+i+41)) return 0; return 1; } int main(){ int x,y; while(scanf(%d%d,x,y)!=EOF){ if(panduan(x,y)) printf(OK\n); else printf(Sorry\n); } return 0; } 最

文档评论(0)

peain + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档