描述:
首先输入一个整数N(0<=N<=100),紧接着在下一行连续输入N个数。
然后输出这一组数的最小数,和最大数。
提示:
输入的这N数,可以有小数也可以有负数。
输出之间用换行隔开。
输入输出示例:
输入:5
1 5 3 22 54
输出:1
54
解题思路:首先输入一个数字作为数字控制量,然后将各项数字存入数组,其次定义min、max为a[0]并让其与数组各项比较若符合条件则重新赋值,最后输出用%g兼顾int 与double。
#include<stdio.h>
int main(void){
int n;//用整型定义n
scanf("%d",&n);//输入整数n
if(n==1){
printf("0\n0");//如果n等于1则输出 0 0
}else if(n>=2){//否则如果n大于等于2时
double a[n];//以double的形式定义数组和变量,并存入
int i;//用整型定义i? 方便下面判断条件
for(i=0;i<n;i++){//令i等于0,如果i小于n,输入a ,i加1,直到i等于n 结束循环
scanf("%lf",&a[i]);
}
double max=a[0];//让max等于a[0].
double min=a[0];//让min等于a[0].
for(i=0;i<n;i++){//令i等于0,如果i小于n,进入循环,i加1 直到i等于n 结束循环
if(a[i]>max){//如果a大于max
max=a[i];//将a的值赋给max 依次类推
}
if(a[i]<min){//如果a的值小于min
min=a[i];//将a的值赋给min 依次类推
}
}
printf("%g\n%g",min,max);//输出最小值和最大值
}else{//否则
printf(" ");//输出空格
}
return 0;
}