源程序代碼以及算法解釋如下:
#define _CRT_SECURE_NO_WARNINGS//VS環境下需要,VC不需要
#include <iostream>
using namespace std;//引用命名空間
void main()
{
const int n = 10;//定義成績數量 int number[n];//定義存放成績的數組 int i;//定義循環變量 int max, min;//定義最大最小值 int i_max, i_min;//定義最大最小值小標 cout << "請輸入10個整數:";//文字提示 for (i = 0; i < n; i++)//循環遍歷輸入 cin >> number[i];//輸入成績 max = min = number[0];//先放壹個數在裏面進行比較 i_max = i_min = 0; for (i = 0; i < n; i++)//循環遍歷查找最大最小值 { if (number[i] > max)//如果大那麽取出來 {max = number[i];
i_max = i;
} if (number[i] < min)//如果小那麽取出來 {min = number[i];
i_min = i;
} } cout << "max: " << max << endl; cout << "min: " << min << endl; cout << "i_max: " << i_max << endl; cout << "i_min: " << i_min << endl;}
程序運行結果如下:
擴展資料:
對任意壹個壹維數組,從中找出數組元素的最大值和最小值並輸出 。
要求:
1)數組有10個元素;
2)使用scanf函數實現數組元素的輸入,輸入前給出必要的提示信息;
3)輸出時,首先輸出數組的十個元素,然後輸出其最大值和最小值。?
樣例輸入
1 2 3 4 5 6 7 8 9 0
樣例輸出
a[0]=1
a[1]=2
a[2]=3
a[3]=4
a[4]=5
a[5]=6
a[6]=7
a[7]=8
a[8]=9
a[9]=0
max:9,min:0*/
#include <stdio.h>
int main()
{
int a[10],i,max,min; for(i=0;i<10;i++) scanf("%d",&a[i]); for(i=0;i<10;i++) printf("a[%d]=%d\n",i,a[i]); max=a[0]; min=a[0]; for(i=0;i<10;i++) { if(a[i]>max)max=a[i];
if(a[i]<min)min=a[i];
} printf("max:%d,min:%d",max,min); return 0;}