标题:找大小

标题:找大小,第1张

标题:找大小

题目描述:

首先输入整数n(0<=n<=1000),紧接着在下一行连续输入n个数。
随后输出这一组数的最小值,和最大值。

提示:

输入的这n数,可以有小数也可以有负数。
输出之间用换行隔开。

输入要求

5

1 5 3 54 22

输出要求

1

54

参考程序:

#include
int main()
{
   int n,i;
   scanf("%d",&n);
   if(n==1)
   {
   printf("0n");
   }
   else if(n>=2)
 {
   double a[n];//在有序数组中存储n个double型的数据。 
   for(i=0;i=max)
   {
    max=a[i];
   }
   if(a[i]<=min)
   {
   min=a[i];
   }
  }
   printf("%gn%g",min,max);//%g是C语言表示以%f%e中较短的输出宽度输出单、双精度实数,在指数小于-4或者大于等于精度时使用%e格式。
 }
    return 0;
}

解题思路:本题通过递归算法计算数组的最大最小元素,及基于a[ ],找出递归关系,定义函数。

首先输入头文件与主函数,再定义变量的类型,根据题目描述所说,要输入一个整数n表示个数,需要运用数组的方法来进行运算,因此定义一个储存了n个double型的数据的数组,且给到其地址,以用于输入。

紧接着输入n个数,从中寻找max与min,因此需要提前定义二者的值,因此将二者的初始值定为数组的i=0位置上的值,以用于和后续输入值作比较。

如果后续输入值大于max,则将该值赋值给max,同理min大于后续输入值,则将该值赋给min。
因为数组中的数据有n个,需要通过循环语句中的if语句反复比较,因此最后通过for循环中的if语句,最终找出数组中的max与min。

最后因为题目答案输入检测中出现的数据不局限于正整数,还有负数,一位小数等,因此用%g这种实数格式最后输出。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/4751097.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-08
下一篇2022-11-08

发表评论

登录后才能评论

评论列表(0条)

    保存