大一C语言问题?一维数组与指针函数?

   更新日期:2024.06.01

#include<stdio.h>

void Input(int *a,int n)

{int i;

 for(i=0;i<n;i++)

   scanf("%d",a+i);

}

int Max(int *a,int n)

{int i,max=*a;

 for(i=1;i<n;i++)

   if(*(a+i)>max)max=*(a+i);

 return max;  

}

int Min(int *a,int n)

{int i,min=*a;

 for(i=1;i<n;i++)

   if(*(a+i)<min)min=*(a+i);

 return min;  

}

float Avg(int *a,int n)

{int i,s=0;

 for(i=0;i<n;i++)

   s+=*(a+i);

 return (float)s/n;  

}

int main()

{ int a[10];

  Input(a,10);

  printf("最低分=%d
",Min(a,10));

  printf("最高分=%d
",Max(a,10));

  printf("平均分=%.1f
",Avg(a,10));

  return 0;

}



  • 17660527669 :大一C语言问题?一维数组与指针函数?
    黄图琴4805 :答:void Input(int *a,int n){int i;for(i=0;i<n;i++)scanf("%d",a+i);} int Max(int *a,int n){int i,max=*a;for(i=1;i<n;i++)if(*(a+i)>max)max=*(a+i);return max;} int Min(int *a,int n){int i,min=*a;for(i=1;i<n;i++)if(*(a+i)<min)min=...
  • 17660527669 :C语言数组与指针,请讲解为什么。
    黄图琴4805 :答:定义一个指针数组,数组中每个元素是一个指针,指针指向哪里就要根据程序来定了。判断数组指针与指针数组主要通过运算符的优先级来判断。int (*p)[4];// 由于()的优先级高,说明p是一个指针,指向一个一维数组的指针 int p[4];// 由于[]的优先级高,先与p结合成为一个数组,再由int*说明这是...
  • 17660527669 :C语言的数组和指针问题,谢谢高手的解答!
    黄图琴4805 :答:所以B是一个2级常指针,同样指向二维数组的第一个元素B[0],而B[0]是一个一维数组。总结,问题的关键在于,数组名相当于一个指向于这个数组第一个元素的指针。3)所以,int A[2][3][4]={0};A是一个三维数组,其中A[0]和A[1]都是它的元素,A[0]是第一个元素。所以, A是一个三级指...
  • 17660527669 :C语言:简述一下“数组和指针的关系”?
    黄图琴4805 :答:(1)指针数组:它实际上是一个数组,数组的每个元素存放的是一个指针类型的元素。int* arr[8];//优先级问题:[]的优先级比*高//说明arr是一个数组,而int*是数组里面的内容//这句话的意思就是:arr是一个含有8和int*的数组1234 请点击输入图片描述 (2)数组指针:它实际上是一个指针,该...
  • 17660527669 :c语言指针和数组问题
    黄图琴4805 :答:char **p; 定义指针的指针 char p[20][20]; 定义二维数组,p为数组首地址 char *p[100]; 定义指针数组,数组的元素是指针变量,指针变量为char *,元素个数为100 char (*p)[100]; 定义指向长度为100的 一维数组的指针
  • 17660527669 :C语言编程题用一维数组和指针变量作函数参数,编程打印某班一门课成 ...
    黄图琴4805 :答:/*记录最高分*/ PMaxNum=num[i]; /*记录最高分学生的学号num[i]*/ } } 这里如果不是用指针调用,而是按值调用,你在这个函数外面声明一个long型的变量,直接传进去,函数运行之后这个变量值是不会改变的。void FindMax( int score[],long num[],int n,long MaxNum,long MaxScore)
  • 17660527669 :C语言中一维数组和指针有什么区别?
    黄图琴4805 :答:C语言中,一维数组的数组名指向了这个数组的起始地址,而指针是它指向的某个东西的地址。例如定义int a[5],访问第二个元素可以用a[1],也可以用*(a+1)。当一个指针指向某个数组时,数组名和指针的作用应该是一样的。你定义的这个指针没有指向任何东西,是个野指针,不能通过类似于数组的方式...
  • 17660527669 :C语言题:输入十个数放入一维数组,输出其中的最大数与最小数,分别用指针...
    黄图琴4805 :答:方法1:(利用比较法)方法2:(利用起泡法)方法3:(利用函数的模块化设计)
  • 17660527669 :c语言数组与指针的区别
    黄图琴4805 :答:int(*p)[4],这个就是行指针 这种类型的指针p是指向一个一维数组,这个一维数组包含4个整形元素 但是 int a[4];p=a; 这种方式却是不对的 因为p只能指向一个整型的一维数组,不能指向一个整型数据,a所指向的正是a[0],是个整型数;实际上int(*p)[4]这种类型的指针是用于多维数组中的,...
  • 17660527669 :c语言指针函数和一维数组求解?如图
    黄图琴4805 :答:数组的p[]就是这个数组p的第一个地址(也就是这个数组的地址),C语言自己会把a当做a[]所以你传到函数里的*p指针就是a数组的首地址,即a,我一般写程序为了区分常写作a[],而读上了这个数组的首地址以后*(p+i)就是取这个数组的首地址后的i个地址内的数据,而开的数组的地址是连续的,所以可以...
  • 相关链接

    欢迎反馈与建议,请联系电邮
    2024 © 视觉网