返回一個數組中所有元素被第一個元素除的結果
阿新 • • 發佈:2019-01-01
#include "stdafx.h" #include<iostream> using namespace std; int main() { int i; int a[6]={0,3,10,5,34,90}; void AllElemDividedInArray(int b[],int n); AllElemDividedInArray(a,6); return 0; } void AllElemDividedInArray(int arr[],int size) { int i,temp; if(arr[0]==0)//判斷陣列第一個元素是否為0; cout<<"陣列中的元素第一個元素為0,不能作為除數"<<endl; /* 方法一,正著寫陣列中的迴圈時,要注意的是,第一個元素除以第一個元素 後,arr[0]=1了,之後的元素再除以它時,數值時不變的。所以需要 用一個臨時變數儲存第一個陣列元素的值。 else{ for(i=0;i<size;i++) { if(i==0) { temp=arr[0]; arr[0]=1; } arr[i]/=temp; cout<<arr[i]<<endl; } } */ /* 方法二,從陣列中第二個元素遍歷並運算,最後修改陣列中第一個元素為1. */ else{ for(i=1;i<size;i++) { arr[i]/=arr[0]; } arr[0]=1; for(i=1;i<size;i++) cout<<arr[i]<<endl; } /* 方法三,逆著寫陣列中的元素,此時無需考慮第一個元素會變成1的問題 else{ for(i=size-1;i>=0;i--) //arr[i]/=arr[0]; for(i=0;i<size;i++) cout<<arr[i]<<endl; } */ }