菜鸟想问问,是先执行循环体再判断if,还是边循环边判断?
(下面是老师上课讲的排序改进后更高效方案)
#include
int main()
{int i,j,a[6]={5,4,7,6,2,3},t,p;
for(i=0;i<=4;i++)
{p=i;
for(j=i+1;j<=5;j++)
if(a[p]>a[j])
p=j;
if(p!=i)
{t=a[i];a[i]=a[p];a[p]=t;}}
for(i=0;i<6;i++)
printf("%d ",a[i]);
return 0;
}
1条回答 默认 最新
- 爱晚乏客游 2021-04-14 22:46关注
你这排版看吐了,提问题请用代码段写入代码。初学就老老实实的把{}补上,别偷懒,加上去之后,你就不会这么问是什么先执行了。给你整理下,从上到下,有语句后面{}的先执行{}里面的内容
int main() { int i,j,a[6]= {5,4,7,6,2,3},t,p; for(i=0; i<=4; i++) { p=i; for(j=i+1; j<=5; j++) { if(a[p]>a[j]) { p=j; } } if(p!=i) { t=a[i]; a[i]=a[p]; a[p]=t; } } for(i=0; i<6; i++) { printf("%d ",a[i]); } return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 Qt下使用tcp获取数据的详细操作
- ¥15 idea右下角设置编码是灰色的
- ¥15 全志H618ROM新增分区
- ¥20 jupyter保存图像功能的实现
- ¥15 在grasshopper里DrawViewportWires更改预览后,禁用电池仍然显示
- ¥15 NAO机器人的录音程序保存问题
- ¥15 C#读写EXCEL文件,不同编译
- ¥15 MapReduce结果输出到HBase,一直连接不上MySQL
- ¥15 扩散模型sd.webui使用时报错“Nonetype”
- ¥15 stm32流水灯+呼吸灯+外部中断按键