C语言.定义20元素的一维数组 ,从键盘输入20个元素,找出20个元素中的最大值,最小值哪里错了呢

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/07 15:32:07
C语言.定义20元素的一维数组,从键盘输入20个元素,找出20个元素中的最大值,最小值哪里错了呢C语言.定义20元素的一维数组,从键盘输入20个元素,找出20个元素中的最大值,最小值哪里错了呢C语言.

C语言.定义20元素的一维数组 ,从键盘输入20个元素,找出20个元素中的最大值,最小值哪里错了呢
C语言.定义20元素的一维数组 ,从键盘输入20个元素,找出20个元素中的最大值,最小值

哪里错了呢

C语言.定义20元素的一维数组 ,从键盘输入20个元素,找出20个元素中的最大值,最小值哪里错了呢
#include <stdio.h>
int main()
{   
 int min = 0;
 int max = 0;
 int arr[20];
 int i = 0;
 scanf("%d", &arr[i]);
 min = max = arr[0];
 do 
 {
  if(arr[i] > max)
   max = arr[i];
  if(arr[i] < min)
   min = arr[i];
  scanf("%d", &arr[++i]);
 } while (i < 19);
 if(arr[i] > max)
  max = arr[i];
 if(arr[i] < min)
  min = arr[i];
 printf("max is %d, min is %d", max, min);
 return 0;
}

1、数组越界

2、找最大最小应该是每个都与最终的最大最小值比较的

 

如果不考虑特殊的输入值,可以给min和max初始值,代码会简单很多:

#include <stdio.h>
int main()
{   
 int min = 100000000;
 int max = 0;
 int arr[20];
 int i;
 for(i = 0; i < 20; ++i)
 {
  scanf("%d", &arr[i]);
  if(arr[i] > max)
   max = arr[i];
  if(arr[i] < min)
   min = arr[i];
 }
 printf("max is %d, min is %d\n", max, min);
 return 0;
}

C语言.定义20元素的一维数组 ,从键盘输入20个元素,找出20个元素中的最大值,最小值哪里错了呢 C语言:定义一个符号常量N,从键盘上输入有N个元素的数组a,找出其中的最大数及其下标. java数组回文输出,例如:定义一个一维数组,无元素,从键盘录入(我爱中国),自动输出(国中爱我)的字 C 语言 一维整形数组将数组元素逆序存放并把交换后的数组输出 要求数组元素的输入,交换和输出分别用函数用C 语言 从键盘输入20个数依次存入一维整形数组中 输出 然后将数组元素逆序存 定义长度为10的一维整形数组,并从键盘给每一个元素赋值,并输出到屏幕,每行显示5个数字 定义a,b,c三个数组,每个数组有5个元素,从键盘上输入数组a和b的各个元素值,c数组的元素值为对应a数组的元素值加上b数组的元素值(即a[1]+b[1]=c[1]).输出c数组各个元素值 用C语言设计:从键盘上输入8个元素的值存入一堆数组a中,然后将下标为奇数(1,3,5,7.)的元素赋值给数组b,输出数组b的内容. c++去掉最大值和最小值求平均数定义一个含 20 个元素的一维整型数组,从键盘上输入 20 个元素,求去掉最大值和最小值以后那些元素的平均值.注:最大、最小元素值可能不止一个,都应该去掉. c语言,从键盘获取任意10个整数存放于数组a中,将其最小的数和最大的数对换,并输出交换后的数组元素.求 从键盘获取任意10个整数存放于c语言,数组a中,将其最小的数和最大的数对换,并输出交换后的数组元素.求 求出一维整形数组A[n]中所有元素的平方之和 C语言 C语言:两数组合并,并升序排列.定义函数void Merge(int a[],int n,int b[],int m),参数a、b为一维数组,数组中的数据为升序排列,n和m分别为它们的元素个数.函数的功能为:将数组a和b合并为一个数组, C语言中若定义数组和指向数组的指针,其中元素的地址可用哪几种方式表达? C语言编程用下列数据初始化一个一维数组12 -3 -7 9 8 -6 2 -4 11 5.从键盘上输入n,C语言编程用下列数据初始化一个一维数组12 -3 -7 9 8 -6 2 -4 11 5.从键盘上输入n,将前n个数中相邻2项之和显示 几道VB题1编程题:.从键盘上输入20个数放入一个一维数组中,并输入数组各元素的值,然后将数组中20个元素的最大值和最小值求出并显示在窗体上.2执行如下程序段:Dim x%Private command1_click()x=x+ C语言函数题从键盘分别读入5个数到arrA中、8个数至arrB中,然后分别调用自定义函数计算数组arrA和arrB各元素的平均值、再输出平均值. C语言 若有以下定义 int x[20],*pt=x;则对x数组元素的正确应用若有以下定义 int x[20],*pt=x;则对x数组元素的正确应用是BA)*&x[20] B)*(x+3) C)*(pt+20) D)pt+3 都错在哪了?一个一 关于C语言二维数组指针的疑问定义一个二维数组int a[i][j],由定义可知a=&a[0][0]=a[0],由于a可看成是带有i个一维数组元素的数组,所以由一维数组的情形可推知a[i]=*(a+i)和a+i=&a{i]和a=&a[0],即有a=&a[0]