请根据程序上下文分析程序功能,将程序空缺的【1】、【2】、【3】部分补充完整,完成表格4的填写并提交。 #i
输入某年某月某日,判断这一天是这一年的第几天? 算法分析提示:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天。 特殊情况:闰年且输入月份大于3时需考虑多加一天。 请按照表格7中“期待的输出”要求,将程序空缺的【1】、【2】、【3】、【4】、【5】语句补充完整,并调试运行,填写表格8并提交;针对表格7每一组输入,将程序对应的输出填写在表格7中并提交。 表格7 输入 期待的输出 说明 2013.3.27 It is the 86th 按照格式输出 1996.3.27 It is the 87th 2012.5.8 1990.10.1 2008.8.8 表格8 序号 C语句 【1】 【2】 【3】 【4】 【5】 C的源程序如下: /*题目:输入某年某月某日,判断这一天是这一年的第几天?*/ #include "stdio.h" int main() { int day,month,year,sum,leap; printf("\nplease input year,month,day\n"); scanf("%d,%d,%d",&year,&month,&day); switch( 【1】 )/*先计算某月以前月份的总天数*/ { case 1:sum=0;break; case 2:sum=31;break; case 3:sum=59;break; case 4:sum=90;break; case 5:sum=120;break; case 6:sum=151;break; case 7:sum=181;break; case 8:sum=212;break; case 9:sum=243;break; case 10:sum=273;break; 【2】 ; 【3】 ; default:printf("data error"); 【4】 ; } sum=sum+day; /*再加上某天的天数*/ if(year%400==0||(year%4==0&&year%100!=0))/*判断是不是闰年*/ leap=1; else leap=0; if(leap==1&&month>2)/*如果是闰年且月份大于2,总天数应该加一天*/ 【5】; printf("It is the %dth day.",sum); }
将一个正整数分解质因数。 算法分析提示:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成: (1) 如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。 (2) 如果n不等于最小的质数k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数n,重复执行第一步。 (3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。 C的源程序如下: /*题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。*/ #include "stdio.h" int main() { int n,i; printf("\nplease input a number:\n"); scanf("%d",&n); printf("%d=",n); for(i=2; 【1】 ;i++) { while( 【2】 ) { if(n%i==0) { printf("%d*",i); n=n/i; } else 【3】; } } printf("%d",n); } 请按照表格1中“期待的输出”要求,将程序空缺的【1】、【2】、【3】语句补充完整,并调试运行,针对每一组输入,将对应的输出填写在答题框中,注意标记小组成员姓名。 表格1 输入 期待的输出 说明 90 90=2*3*3*5 按照格式输出 123 1234 200 2 0
为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!