标题:用指针法引用数组元素,刚学很混乱
取消只看楼主
长角的菜鸟
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2015-5-22
 问题点数:0 回复次数:0 
用指针法引用数组元素,刚学很混乱
输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写3个函数: 输入10个数; 进行处理; 输出10个数。(本题要求写到实验报告上)
#include <stdio.h>
#define N 10
void main( )
{
void input(int number[],int n);
void max_min_value(int array[],int n);
void output(int array[],int n);
int number[N];         
input(number,N);
max_min_value(number,N);
output(number,N);
}

void input(int number[],int n) /*此函数向首地址为number的数组输入10个元素*/
{添加代码,完善此函数,要求用下标法引用数组元素}

void max_min_value(int array[],int n) /*此函数交换array数组的对应元素*/
{添加代码,完善此函数,要求用指针法记录最大最小元素的位置}

void output(int array[],int n)   /*此函数输出array数组的10个元素*/
{添加代码,完善此函数,要求用指针法引用数组元素}
运行结果:
Input 10 numbers:32 24 56 78 1 98 36 44 29 6↙
Now,they are:1 24 56 78 32 6 36 44 29 98
下面是我没写完的,
#include <stdio.h>
#define N 10
void main( )
{
void input(int number[],int n);
void max_min_value(int array[],int n);
void output(int array[],int n);
int number[N];         
input(number,N);
max_min_value(number,N);
output(number,N);
}

void input(int number[],int n) /*此函数向首地址为number的数组输入10个元素*/
{printf("please input ten numbers:");
    for(n=0;n<10;n++)
scanf("%d",&number[n]);}

void max_min_value(int array[],int n) /*此函数交换array数组的对应元素*/
{int *p1,*p2,*p3,*p4,*p5,*p6;int max,min;
p3=&array[9];
p4=&array[0];
max=array[0];
for(n=0;n<10;n++)
{if(array[n]>max) max=array[n];}
p1=&max;p5=p1;p1=p3;p3=p5;
min=array[0];
for(n=0;n<10;n++)
if(array[n]<min) min=array[n];
p2=&min;p6=p2;p2=p4;p4=p6;
}

void output(int array[],int n)   /*此函数输出array数组的10个元素*/
{int i;int(*p)[10];
printf("Now,they are:");
for(i=0;i<10;i++)
printf("%d",*(p+i));
    }
搜索更多相关主题的帖子: include 实验报告 number 最大的 元素 
2015-05-22 20:12



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-445633-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.578362 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved