30.入夏标志着春夏季节完成转换,气候学上入夏的标准是必须要连续5天日平均气温达到22℃或以上,则这连续5天中的第一天为入夏日。函数fun的功能是判断5月份是否入夏并输出有关信息,若入夏就返回是哪天,否则返回-1。请补全下列代码。 #include
for(i=0;i if(c>=5) ② ; else ③ ; } ④ ; } return -1; } int main() { int t[31]={20,21,22,22,19,18,18,19,22,23, 22,21,20,21,20,24,22,25,24,23, 21,23,22,21,22,25,26,30,28,27,28}; int d; d=fun(t,31); if(d==-1) printf(“Not in summer\\n”); else printf(“5-%d in summer\\n”,d+1); return 0; } 31.小方从“开慧故居”研学回来后,制作如图7所示的“开慧故居 名人故里”相册,操作步骤如下:新建PowerPoint文档,单击“ ① ”菜单,选择“相册”下的“ ② ”按钮,在“相册”对话框中,单击“文件/磁盘(F)”,将照片全部导入到相册内。接着设置相册版式,将“相框形状”设置为“柔化边缘矩形”,即可实现图中效果。然后单击“插入”菜单中的“ ③ ”选项,给相册添加背景音乐。最后,单击“ ④ ”菜单,设置“立方体”的幻灯片切换效果。 图7 四、程序分析题(本大题共3小题,共75分) 32.阅读程序,写出运行结果(每空5分,共25分) (1)下列程序的运行结果是 ① #include int a=14,b=35,c; if(a c=a,a=b,b=c; c=a%b; while(c!=0) a=b,b=c,c=a%b; (2)下列程序的运行结果是 ② printf(“gcd=%d\\n”,b); #include int a[20],i,m=10,k=8; for(i=0;m>0;i++) { a[i]=m%k; m/=k; } for(i--;i>=0;i--) (3)下列程序的运行结果是 ③ printf(“%d”,a[i]); return 0; } #include char str[50]=”welcome2018”; int i,n=0; for(i=0;str[i]!=’\\0’;i++) if(‘0’<=str[i]&&str[i]<=’9’) n=n*10+str[i]-‘0’; printf(“result=%d\\n”,n); (4)下列程序的运行结果是 ④ return 0; #include int f(int n) { if(n==1||n==0) return 1; return (n*f(n-1)); } int main() { printf(“%d”,f(5)); (5)下列程序的运行结果是 ⑤ return 0; } #include void fun(int *w, int m, int n) { int i,j,t; for(i=m;i t=w[n-1]; for(j=n-2;j>=0;j--) w[j+1]=w[j]; w[0]=t; } } int main() { int i,a[9]={1,2,3,4,5,6,7,8,9}; fun(a,4,9); for(i=0;i<9;i++) printf(“M”,a[i]); return 0; } 33.程序填空。按照题目要求,将正确内容填入答题卡相应位置,使程序完整。(每空5分,共25分) (1)下列程序的功能是把文件A的内容追加到文件B中。例如文件A为“I’m ten.”,文件B 为“I’m a student!”,追加之后,文件B的内容为“I’m a student! I’m ten.”。 #include void fun(int *w, int m, int n) { int i,j,t; for(i=m;i t=w[n-1]; for(j=n-2;j>=0;j--) w[j+1]=w[j]; w[0]=t; } } int main() { int i,a[9]={1,2,3,4,5,6,7,8,9}; fun(a,4,9); for(i=0;i<9;i++) printf(“M”,a[i]); return 0; } 33.程序填空。按照题目要求,将正确内容填入答题卡相应位置,使程序完整。(每空5分,共25分) (1)下列程序的功能是把文件A的内容追加到文件B中。例如文件A为“I’m ten.”,文件B 为“I’m a student!”,追加之后,文件B的内容为“I’m a student! I’m ten.”。 #include ① ; char ch; if((fp1=fopen(“A.txt”,”r”))!=NULL) { if((fp2=fopen(“B.txt”,”a”))!=NULL) { while((ch=fgetc(fp1))!=EOF) ② ; fclose(fp2); } else { printf(“file B cannot be opened\\n”); ③ ; exit(0); } } else { printf(“file A cannot be opened\\n”); exit(0); } return 0; } (2)下列程序中函数f的功能是用选择排序法对一个数组中数据按升序进行排序。 void f( int a[ ], int N) { /*a为待排序数组 N为数据元素个数*/ int i,j,p,t; for(i=0;i for( ④ ;j ⑤ if(p!=i) { 34.阅读程序:修改程序中的错误,不得增行或删行,也不得更改程序结构。请在答题卡中 t=a[i];a[i]=a[p];a[p]=t; 指出错误代码所在的行号,并给出该行修改后的程序代码。(每空5分,共25分) } (1)下列程序中,函数fun的功能是:根据形参m,计算如下公式的值: } y=1+ +……+。以下程序只允许修改三行。 ..} L1 #include 如果存在就返回所在位置的下标,如果不存在就返回“Not found”。以下程序只允许修改两行。 .. L1 L2 L3 L4 L5 L6 L7 L8 L9 L10 L11 L12 #include int fun(int a[ ],int m) { int low=0,high=N-1,mid; while(low<=high) { mid=high-low; if(ma[mid]) low=mid+1; else