关于指针的问题,求教
要求用调用函数和指针找出一维数组中的最大值并在主函数中输出,我只写出了调用函数找出了最大值,不会用指针,#include "stdio.h"
int zql(int a[],int n)
{
int i,t=0;
for(i=0;i<n;i++)
if(a[i]>t)
t=a[i];
return t;
}
int main()
{
int a[5]={1,2,3,4,5},i;
i=zql(a,5);
printf("%d",i);
}
程序代码:#include <stdio.h>
#define SIZE 5
void show_arr(const *arr, int n);
int xql(const int *arr, int n);
int main(void)
{
int a[SIZE]={1,2,5,4,3};
int max;
printf("这个数组中的元素分别是:");
show_arr(a,SIZE);
printf("最大的元素值是:");
max=zql(a,SIZE);
printf("%d\n",max);
return 0;
}
int zql(const int *arr,int n)
{
int i,tem=*arr;
for(i=0;i<n;i++)
{
if(tem<(*arr+i))
{
tem=*(arr+i);
}
}
return tem;
}
void show_arr(const int *arr, int n)
{
int i;
for(i=0;i<n;i++)
{
printf("%d ",*(arr+i));
}
printf("\n");
}
程序代码:#include<stdio.h>
#include<stdlib.h>
#define SIZE 5
void show_arr(const double *arr, int n);
double xql(const double *arr, int n);
int main(void)
{
double a[SIZE]={1.1,2.2,5.5,4.4,3.3};
double max;
printf("这个数组中的元素分别是:");
show_arr(a,SIZE);
printf("最大的元素值是:");
max=zql(a,SIZE);
printf("%g\n",max);
return 0;
}
double zql(const double *arr,int n)//这里改成int zql(const double *arr,int n)没事,是因为精度问题嘛?
{
int i;
double tem=*arr;
for(i=0;i<n;i++)
{
if(tem<(*arr+i))
{
tem=*(arr+i);
}
}
return tem;
}
void show_arr(const double *arr, int n)
{
int i;
for(i=0;i<n;i++)
{
printf("%g ",*(arr+i));
}
printf("\n");
}
程序代码:
#include<stdio.h>
#include<stdlib.h>
#define SIZE 5
double zql(const double *arr,int n){//这里改成int zql(const double *arr,int n)没事,是因为精度问题嘛?
int i;
double tem=*arr;
for(i=0;i<n;i++){
if(tem<(*arr+i))
tem=*(arr+i);
}
return tem;
}
void show_arr(const double *arr, int n){
int i;
for(i=0;i<n;i++)
printf("%g ",*(arr+i));
printf("\n");
}
int zql(const int *arr,int n){
int i,tem=*arr;
for(i=0;i<n;i++){
if(tem<(*arr+i))
tem=*(arr+i);
}
return tem;
}
void show_arr(const int *arr, int n){
int i;
for(i=0;i<n;i++){
printf("%d ",*(arr+i));
}
printf("\n");
}
int main(void){
double a[SIZE]={1.1,2.2,5.5,4.4,3.3};
double max;
printf("这个数组中的元素分别是:");
show_arr(a,SIZE);
printf("最大的元素值是:");
max=zql(a,SIZE);
printf("%.2lf\n",max);
////////////////////////////////////////
int b[SIZE]={1,2,5,4,3};
int maxb;
printf("这个数组中的元素分别是:");
show_arr(b,SIZE);
printf("最大的元素值是:");
maxb=zql(b,SIZE);
printf("%d\n",maxb);
return 0;
}
