《2022年大学生程序设计竞赛试卷与参考解答.docx》由会员分享,可在线阅读,更多相关《2022年大学生程序设计竞赛试卷与参考解答.docx(3页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、2022年大学生程序设计竞赛试卷与参考解答 2022年大学生程序设计竞赛试卷与参考解答 (注意:当某道试题设计完成并调试通过确认后,请举手当着监考人员的面运行程序,并把运行结果填入该题的数据测试后空白处。) 1.旅馆里有10000间房间,从1到10000编了号。第一位服务员把所有的房间门都打开了,第二位服务员把所有编号是2的倍数的房间进行“相反处理”,第三位服务员把所有编号是3的倍数的房间作“相反处理”,第n(1n; for(int t=1;t=2)个连续正整数之和,如: 15=1+2+3+4+5 15=4+5+6 15=7+8 请编写程序,根据输入的任何一个正整数n,找出符合这种要求的所有连
2、续正整数序列的个数C。如:对于15,其输出结果是3:对于16,其输出结果是:0。n=56789, C = 3 n=189909, C = 5 n=999, C= 7 #include int divice(int n) int i,j,k,sum,middle,count = 0; int flag=0; if(n%2=0) middle=n/2-1; else middle=(n-1)/2; for(i=middle;i=1;i-)/*从i=1开始,到i=middle为止,判断其是否为i+1个连续整数的和*/ sum=0; for(j=1;j=1)/*如果减去sum之后能够被i+1除尽,说明
3、其能表示为i+1个连续整数的和*/ flag=1; count +; / printf(n); / for(k=(n-sum)/(i+1);k 0.0) if (k + 1 j) dpi + 1k + 1k + 1 += cur * (1.0 / side); else dpi + 1jk + 1 += cur * (1.0 / side); dpi + 1j1 += cur * (double) (side - 1) / side); /for ( j = 1; j 0) printf(.); for(i=1;i0) printf(); void main(void) Init(); /*读入数据*/ Cacl(); /*计算*/ Print(); /*打印结果*/