c语言的问题哪里搜初级问题?


计算给定数组的最大值和最小值,同时编写主函数验证函数的功能。函数原型说明如下:voidgetmxmn(inta[],intn,int*pmx,int*pmn);#incl...
计算给定数组的最大值和最小值,同时编写主函数验证函数的功能。函数原型说明如下:
void getmxmn(int a[],int n,int *pmx,int *pmn);#include <stdio.h>void getmxmm(int a[],int n,int *pmx,int *pmn);{int i,max,min;for(i=0;i<n;i++){if(i==1){max=a[i];min=a[i];}max=max>a[i]?max:a[i];min=min<a[i]?min:a[i];max=*pmx;min=*pmn;}}main(){int a[],i,*pmx,*pmn,n;for(i=0;i<n;i++)scanf("%d",&a[i]);pmx=&max;pmm=&min;getmxmn(a,n,*pmx,*pmn);printf("%d %d\n",pmx,pmn);}上面是在下编的,但是有错误,请高手指正,不胜感谢
展开选择擅长的领域继续答题?
{@each tagList as item}
${item.tagName}
{@/each}
手机回答更方便,互动更有趣,下载APP
提交成功是否继续回答问题?
手机回答更方便,互动更有趣,下载APP
#include <stdio.h>void getmxmm(int a[],int n,int *pmx,int *pmn)//将分号去掉{int i,max,min;for(i=0;i<n;i++){if(i==0){max=a[i];min=a[i];continue;//需要加1个continue语句,跳出这次循环,其实也可以在for循环前面讲max和min赋值}max=max>a[i]?max:a[i];min=min<a[i]?min:a[i];*pmx=max;//写反了*pmn=min;//写反了}}main(){int a[10],i,*pmx,*pmn,n,max,min;//数组a长度未知,初始化时给一个足够大的下标值n=3;for(i=0;i<n;i++)//n的值未知,首先需要给n赋值,这里假设n=3scanf("%d",&a[i]);pmx=&max;//max没有定义pmn=&min;//min没有定义,pmm没有定义,我觉得应该为pwn吧?getmxmm(a,n,pmx,pmn);//函数未定义,我觉得getmxmn应该为getmxmm吧?pmx和pmn前面不需要带*号printf("%d %d\n",*pmx,*pmn);//应该输出pmx和pmn指向地址里的内容,不是输出pmx和pmn的值} 改进后的----------------------void getmxmm(int a[],int n,int *pmx,int *pmn){int max=a[0],min=a[0];while(n--){max=max>a[n]?max:a[n];min=min<a[n]?min:a[n];*pmx=max;*pmn=min;}}
main(){int a[],i,*pmx,*pmn,n; //定义数组的时候要给一个长度例如:int a[10]for(i=0;i<n;i++) // n没有被初始化例如:n=10scanf("%d",&a[i]);pmx=&max; //max没有定义pmm=&min; //同上getmxmn(a,n,*pmx,*pmn);printf("%d %d\n",pmx,pmn);}void getmxmm(int a[],int n,int *pmx,int *pmn);{int i,max,min;for(i=0;i<n;i++){if(i==1){max=a[i];min=a[i];}max=max>a[i]?max:a[i];min=min<a[i]?min:a[i];max=*pmx; }}

我要回帖

更多关于 c语言的问题哪里搜 的文章

 

随机推荐