您的位置:

c语言找出数组中的前五个最大值,c语言找一个数组中的最大值

本文目录一览:

编写一个c语言程序,输入5个数,求它们中最大值和最小值并输出

#include stdio.h

void main( )

{

int i = 0 , num[5], max = 0 , min = 0 ; /* max:用于存放最大值;min:用于存放最小值 */

for( i = 0 ; i 5 ; i ++ )

scanf("%d", num[i]) ; /* 循环地将输入的五个数存入 num[5] 数组中 */

for( i = 0 ; i 5 ; i ++ ) /* 循环地判断数组中的数要是比 max 还大,则将相应的数存入 max 变量中 */

if( num[i] = max )

max = num[i] ;

for( i = 0; i 5 ; i ++ ) /* 循环地判断数组中的数要是比 min 还小,则将相应的数存入 min 变量中 */

if( num[i] = min )

min = num[i] ;

printf("MAX num is :%d\t\t\tMIN num is :%d\n", max, min) ;

}

c语言编程技巧

1、while(--n=0)与while(n--0)

在大多数C语言实现中,--n =0 至少与等效的n-- 0 一样快,大多数情况下前者更快。

主要因为第一个表达式首先从n中减去1然后将结果与0比较;而第二个表达式首先保存n,从n中减去1之后比较保存值与0的大小,这中间多了一个保存的时间,从而前一个表达式更快。

注意:这样的循环中,尽量不使用unsigned类型,否则前者会出现无限循环情况。

2、多重循环处理

对于多重循环,如果可能,应将最长的循环放在最内层,最短的循环放在最外层,以减少CPU跨切循环层的次数。

C语言用for和数组求5 个数字的最大值和最大值的下标,要求在给出的代码内添加,不允许添加变量

#define _CRT_SECURE_NO_WARNINGS // 余计な警告が出ないようにする

#include stdio.h

int main( void )

{

int data[ 5 ];

int maxi;

int i;

for ( i = 0; i  5; i ++ )

{

printf( "data[%d]=", i );

scanf( "%d", data[ i ] );

}

//在下方输入求最大值和其下标的代码

for(maxi=0,i=1;i5;i++) maxi=(data[maxi]data[i])?i:maxi;

printf( "最大值的下标为%d,值为%d \n", maxi, data[ maxi ] );

return 0;

}

用文字简述:已知一维数组中存储5个整数,怎样求出5个整数的最大数值。

不妨记数组各元素依次为a1、a2、a3、a4、a5,定义最大值为max,可采用冒泡法排序:

1)定义max=a1

2)比较max与a2,将二者中的大数赋给max,可以通过减法实现。例如max-a2≥0,保持max值不变;若max-a20,max=a2

3)继续循环,依次比较a3、a4、a5,最后得到的max就是最大值。

如使用C语言表述,可以使用 for 和 if 语句实现上述程序。

c语言给定5个数,求最大值,必须用数组形式

冒泡法

定义数组,

编写for循环遍历数组元素并进行比较,如果后一个数组元素比前一个大,就把该数组元素前移

即if(a[i]a[i+1])

{

a[i]=a[i+1];

}

printf(a[0]);

用C语言从5个数中找出最大的数怎么编程?

#include stdio.h

int main()

{

int a[5],max,i;

for(i=0;i5;i++)

scanf("%d",a[i]);

max=a[0];

for(i=1;i5;i++)

if(maxa[i])

max=a[i];

printf("最大数为:%d\n",max);

return 0;

}

呵呵,gap12521 太可爱了,不用那么麻烦的