C语言编程,输入10个数查找最大数字并和第一个数字互换。

如题所述

#include "stdio.h"
int Max(int num[]);//自定义一个求一组数据中最大数的下标
void main()
{
int num[10];//定义一个数组存放输入的10个数字
int i,temp;//i为循环变量,temp为最大数与第一个数交换时的中间变量
int n;
printf("Please input ten numbers:\n");
for(i=0;i<10;i++)
{
scanf("%d",&num[i]);
}
n=Max(num);//找出最大数的下标
//以下三行代码为最大数与第一个数交换
temp=num[0];
num[0]=num[n];
num[n]=temp;
//输入处理后的十个数
printf("ten numbers:\n ");
for(i=0;i<10;i++)
{
if(i%5==0)
printf("\n%5d",num[i]);
else
printf("%5d",num[i]);
}
}
int Max(int num[])
{
int max=0;//用于存放最大数的下标
int i;
for(i=1;i<10;i++)
{
if(num[i]>num[max])//用于比较出最大的数
max=i;//比较后的最大数的下标赋值给max变量
}
return max;//返回最大数的下标
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-04-02
#include<stdio.h>
void main(){
int i,j,k,f[10],max,a;
for(i=0;i<10;i++)
scanf("%d",&f[i]);
a=0;
max=f[0];
for(j=1;j<10;j++)
if(f[j]>max)
{max=f[j];
a=j;}

k=f[0];
f[0]=f[a];
f[a]=k;

for(k=0;k<10;k++)
printf("%d ",f[k]);}
第2个回答  2012-04-02
这是一个很复杂的问题!
相似回答