1. 程式人生 > >用指標法通過一個函式求出陣列元素中的最大值與最小值

用指標法通過一個函式求出陣列元素中的最大值與最小值

#include <stdio.h>
#include <string.h>
#define N 10                                                                     /*巨集定義*/
int max,min;                                                                      /*全域性變數*/
void main()
{
void max_min_value(int *array,int n);                          /*函式原型(宣告)*/
int array[N],*p;
printf("Enter %d numbers:",N);
for(p=array;p<array+N;p++)                                         /*array+N,陣列中最末元素之後的一個指標地址*/
scanf("%d",p);
printf("Source data:");
for(p=array;p<array+N;p++)
printf("%4d",*p);
max_min_value(array,N);                                            /*transfer function "max_min_value"*/
printf("/nmaxdata:%d  mindata:%d/n",max,min);
}

void max_min_value(int *array,int n)
{
int *p,*array_end;
max=min=*array;
array_end=array+n;                                                      /*陣列中最後一個元素之後的一個指標地址*/
for(p=array+1;p<array_end;p++)
if(*p>max) max=*p;
else if(*p<min) min=*p;
return 0;                                                                          /*此語句可要可不要*/

相關推薦

指標通過一個函式陣列元素

#include <stdio.h>#include <string.h>#define N 10                                                                     /*巨集定義*/

給定一個數組,陣列元素的排列和組合——Java實現

1. 思路 組合數C(n,m)和全排列A(n,n)可以通過遞迴的方式,直接實現。 而A(n,m)則可以通過組合數和全排列間接求出A(n,m)=C(n,m)*A(m,m),即對得到的組合數中的每個元素進行全排列 2. Java實現 package com.zfy.test

一個計算併發併發的效能面試題

遇到一位測試的職友說在某個QQ群看到有人問一個性能面試題,問我會不會,我根據自己的知識點做了一些計算並記錄,答案如下。 題目: 若每月有30000次的使用者登入系統,每天8小時工作日,每月80%的登入在20%的時間內完成,每天80%的業務在20%的時間內完成,計算每分鐘併

遞迴函式兩個數的大公約數

 #include <stdio.h> int gcd(int x, int y); int main() {     int m,n;     printf("輸入兩個數字:");     scanf("%d %d", &m, &n);  

百度面試一題,通過函式int陣列長度

正題:一個int型陣列 int a[] = {/*...*/}; 可不可以通過函式來求出它的長度? int len = size(a);這樣的? 我當時回答的是不可以,函式引數只能傳指標,長度不能傳。如果是字串的話可以通過'\0'判斷,但是int陣列不行。然後他又問我想通過

短路徑算 (一)——路徑長度 (*^__^*) 嘻嘻……

沒有 str -1 man 最大 連線 問題 輸入 sha 【問題描述】: 平面上有n(n<=100)個點,每個點的坐標均在-10000~10000之間。 其中的一些點之間有連線。若有連線,則表示可以從一個點到

一條sql語句不同班級男生和女生的數量

表: mysql> select * from gg; +------+------+-----+-------+ | id | name | sex | class | +------+------+-----+-------+ | 1 | 張三 | 男 | 1

C++之bool型別,名稱空間的練習——使用一個函式一個整型陣列

#include<iostream> using namespace std; int findMaxOrMin(int * n,int number) { int temp=n[0]; bool isMax; cin>>isMax; for(int i=1;

指標方法編寫一個程式,輸入3個整數,將它們按由小到大的順序輸出

#include <stdio.h> void swap(int *pa,int *pb) { int temp; temp = *pa; *pa = *pb; *pb = temp; } void main() { int

指標對10個整數排序

思路:在主函式中定義陣列a存放十個整數,定義int*型變數p並指向a[0]。在主函式中呼叫sort函式,用指標變數p作為實參。sort函式的形參用陣列名。利用選擇排序法進行排序。 #include<stdio.h> int main() { void sort(int

java實現遞迴函式入門級例子:遞迴函式一個數組

我們開始把陣列分為兩半,分別找出最大值,那麼這個最大值就是最後的最大值:同時我們左右兩邊繼續細分,停止條件就是細分到單個數值為止。 package chapter1; //使用遞迴求出一個數組中的最小值 public class FindMax { public sta

指標”交換陣列10個元素的先後順序

交換陣列中10個元素的先後順序,結果如下: enter 10 numbers:15   26   34   75   95   26   34   25   26   10source data:15   26   34   75   95   26   34   25   

一個長度為N的陣列包含正數 負數 0,請實現一個函式和為0的長子數列

<strong><span style="font-size:18px;">// #include<iostream> #include<vector>

OJ題——指標

/*  * Copyright (c) 2014, 煙臺大學計算機學院  * All rights reserved.  * 檔名稱:test.cpp  * 作    者:李曉凱  * 完成日期:2

設計一個getMin功能的棧,如果面試官讓你寫一個數組類,一定不要指標去管理new出來原生的陣列,那就是在給自己挖坑

//設計實現一個getMin功能的棧 #include <iostream> #include <stack> using namespace std; class GetMinStack { public:     void push(int x)

【C++】結構體完成:程式設計3個學生某個學生的平均成績

//用結構體完成:程式設計求出3個學生中某個學生的平均成績 #include <iostream> #include <string.h> using namespace st

Java程式設計:定義一個int型的一維陣列,包含10個元素,分別賦一些隨機整數,然後所有元素,平均值,和,並輸出出來。

public class Program1 {/**1.定義一個int型的一維陣列,包含10個元素,分別賦一些隨機整數,然後求出所有元素的最大值,最小值,平均值,和值,並輸出出來。*/public static void main(String[] args) { int[

PHP 通過一個節點找所有父節點

如圖,拿到所有給出節點的父節點。百度搜了半天,都是通過父節點找子節點的。無奈,後來只能自己寫了。遍歷+遞迴,大神們不要鄙視我。。。我資料結構。。。<?php //測試資料 $arr = [ ['id'=>8,'pid'=>7,'username'=&

用一個函式實現將一行字串中最短的單詞輸出。此行字串從主函式傳遞給該函式。假設字串包含的單詞以空格作為分隔符號,例如”Asia Games 2010 is held in GuangZhou.”,其中短的單詞是”is”和”in”。

山大 23:57:13 /* 輸入完單詞後不用再加空格!如果是兩個單詞一樣短還不能實現*/ #include<stdio.h>#include<string.h>void main(){int f(char str[],char str1[],int

在java中用遞迴函式1!+2!+3!+4!。。。。。。。

這個就是個簡單的遞迴過程,具體看看怎麼來實現: package excise; public class Test2 { public static void main(String arg