资讯详情

2025级SYUCT-ACM新生第五次训练 题解

📅 2026/10/31 14:28:26 | 华诺云谱 👁 阅读
2025级SYUCT-ACM新生第五次训练 题解
A. 排序1直接冒泡即可,注意double t#includestdio.hdoublea[1010];intmain(){intn;scanf("%d",n);for(inti=0;in;i++){scanf("%lf",a[i]);}for(inti=0;in-1;i++){for(intj=0;jn-1-i;j++){if(a[j]a[j+1]){doublet=a[j];a[j]=a[j+1];a[j+1]=t;}}}for(inti=0;in;i++){printf("%.2lf ",a[i]);}printf("\n");return0;}B.排序2直接冒泡即可,注意用getchar()吃掉多余的空格和换行#includestdio.hchara[1010];intmain(){intn;scanf("%d",n);getchar();for(inti=0;in;i++){scanf("%c",a[i]);getchar();}for(inti=0;in-1;i++){for(intj=0;jn-1-i;j++){if(a[j]a[j+1]){chart=a[j];a[j]=a[j+1];a[j+1]=t;}}}for(inti=0;in;i++){printf("%c ",a[i]);}printf("\n");return0;}C. 排序3直接冒泡即可,注意以EOFEOFEOF结尾的多组输入#includestdio.hinta[1010];intmain(){intn;while(scanf("%d",n)!=EOF){for(inti=0;in;i++){scanf("%d",a[i]);}for(inti=0;in-1;i++){for(intj=0;jn-1-i;j++){if(a[j]a[j+1]){intt=a[j];a[j]=a[j+1];a[j+1]=t;}}}for(inti=0;in-1;i++){printf("%d ",a[i]);}printf("%d\n",a[n-1]);}return0;}D. 排序4双重forforfor循环遍历每两个数,将ai−aja_i - a_jai​−aj​和aj−aia_j - a_iaj​−ai​加入一个数组中,冒泡即可。#includestdio.hinta[1010],b[10005];intmain(){intn;intm=0;scanf("%d",n);for(inti=0;in;i++){scanf("%d",a[i]);}for(inti=0;in-1;i++){for(intj=i+1;jn;j++){b[m++]=a[i]-a[j];b[m++]=a[j]-a[i];}}for(inti=0;im-1;i++){for(intj=
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。

↑