找大小
描述:
首先输入一个整数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;
scanf("%d",&n);//输入所需输的数字个数
if(n==1){
printf("0\n0");//由题意输出0 0且换行
}else if(n>=2){
double a[n];//由题意知,需用double定义
int i;
for(i=0;i<n;i++){
scanf("%lf",&a[i]);
}
double max=a[0];
double min=a[0];
for(i=0;i<n;i++){
if(a[i]>max){
max=a[i];//历遍数组并赋值最大的为max
}
if(a[i]<min){
min=a[i];//历遍数组并赋值最小的为min
}
}
printf("%g\n%g",min,max);//输出不为0则输出对应数
}else{
printf(" ");//否则输出为空格
}
return 0;
}