首頁 >後端開發 >C++ >使用指標編寫的C程序,用於尋找使用者輸入的陣列類型

使用指標編寫的C程序,用於尋找使用者輸入的陣列類型

WBOY
WBOY轉載
2023-08-31 08:57:19921瀏覽

使用指標編寫的C程序,用於尋找使用者輸入的陣列類型

問題

寫一個C 程序,透過指標尋找我們需要檢查的陣列類型,陣列中給定的元素是偶數、奇數還是兩者的組合。

解決方案

使用者必須輸入一個整數數組,然後顯示該數組的類型。

範例1 − 輸入:5 3 1,輸出:奇數數組

範例2 − 輸入:2 4 6 8,輸出:偶數陣列

範例3 - 輸入:1 2 3 4 5,輸出:混合陣列

演算法

參考下面給出的演算法來找出用戶輸入的陣列類型

第1步:執行時期讀取陣列的大小。

第2步:輸入陣列元素。

第3步:宣告指標變數。

第三步:使用指標變數檢查陣列的所有元素是否都是奇數。

然後,列印「Odd」。

第四步:使用指標變數檢查陣列的所有元素是否為偶數。

然後,列印「Even」。

第 5 步:否則,列印「Mixed」。

>

範例

以下是透過指標尋找使用者輸入的陣列類型的C 程式-

 現場示範

#include<stdio.h>
#include<stdlib.h>
int*createArray (int);
void readArray(int,int *);
int findType(int , int *);
int main(){
   int *a,n,c=0,d=0;
   printf("Enter the size of array</p><p>");
   scanf("%d",&n);
   printf("Enter the elements of array</p><p>");
   createArray(n);
   readArray(n,a);
   findType(n,a);
   return 0;
}
int *createArray(int n){
   int *a;
   a=(int*)malloc(n*sizeof(int));
   return a;
}
void readArray(int n,int *a){
   for(int i=0;i<n;i++){
      scanf("%d",a+i);
}}
int findType(int n, int *a){
   int c=0,d=0;
   for(int i=0;i<n;i++){
      if(a[i]%2==0){
         c++;
      }
      else{
         d++;
   }}
   if(c==n){
      printf("The array type is Even</p><p>");
   }
   if(d==n){
      printf("The array type is Odd</p><p>");
   }
   if(c!=n && d!=n){
      printf("The array type is Mixed</p><p>");
   }
   return 0;
}

輸出

#執行上述程式時,會產生以下輸出-

Enter the size of array
4
Enter the elements of array
12
14
16
18
The array type is Even

以上是使用指標編寫的C程序,用於尋找使用者輸入的陣列類型的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除