一个小程序中的疑问 多谢
一个小程序中的疑问 谢谢
#include <stdio.h>
int main()
{
int i,j,p,q,s,a[10];
printf("\n input 10 numbers:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<10;i++)
{
p=i;
q=a[i];
for(j=i+1;j<10;j++)
if(q<a[j])
{
p=j;
q=a[j];
}
if(i!=p) [color=#FF0000][/color]这个if语句程序段的每一步的作用是什么?
{
s=a[i];
a[i]=a[p];
a[p]=s;
}
printf("%d ",a[i]);
}
}
------解决方案--------------------
程序将一组数按降序排列
你说的if语句的那一段是 先判断i不等于p是否成立,如果成立则进入if语句段
实现了a[i]和a[p]值的交换。。
#include <stdio.h>
int main()
{
int i,j,p,q,s,a[10];
printf("\n input 10 numbers:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<10;i++)
{
p=i;
q=a[i];
for(j=i+1;j<10;j++)
if(q<a[j])
{
p=j;
q=a[j];
}
if(i!=p) [color=#FF0000][/color]这个if语句程序段的每一步的作用是什么?
{
s=a[i];
a[i]=a[p];
a[p]=s;
}
printf("%d ",a[i]);
}
}
------解决方案--------------------
程序将一组数按降序排列
你说的if语句的那一段是 先判断i不等于p是否成立,如果成立则进入if语句段
实现了a[i]和a[p]值的交换。。