使用 C 语言动态查找一组元素中的偶数和奇数

cserver side programmingprogramming

问题

使用动态内存分配函数计算一组元素中偶数和奇数的总和。

解决方案

在此程序中,我们尝试在一组数字中查找偶数和奇数。

用于在集合元素中查找偶数的逻辑如下所示 −

for(i=0;i<n;i++){
   if(*(p+i)%2==0) {//检查 no 是否为偶数
      even=even+*(p+i); //计算列表中所有偶数的总和
   }
}

用于在集合元素中查找奇数的逻辑如下所示 −

for(i=0;i<n;i++){
   if(*(p+i)%2==0) {//检查数字是偶数还是奇数
      even=even+*(p+i);
   }
   Else {//如果数字为奇数,则进入块
      odd=odd+*(p+i); //计算列表中所有奇数的总和
   }
}

示例

#include<stdio.h>
#include<stdlib.h>
void main(){
   //声明变量、指针//
   int i,n;
   int *p;
   int even=0,odd=0;
   //使用 malloc 声明基地址 p//
   p=(int *)malloc(n*sizeof(int));
   //读取元素数量//
   printf("输入元素数量:");
   scanf("%d",&n);
   /*打印 O/p -
   我们必须使用 if 语句,因为我们必须检查内存
   是否已成功分配/保留*/
   if (p==NULL){
      printf("内存不可用");
      exit(0);
   }
   //使用 for 循环将元素存储到位置//
   printf("元素为:
");    for(i=0;i<n;i++){       scanf("%d",p+i);    }    for(i=0;i<n;i++){       if(*(p+i)%2==0){           even=even+*(p+i);       }       else{          odd=odd+*(p+i);       }    }    printf("偶数之和为:%d
",even);    printf("奇数之和为:%d
",odd); }

输出

输入元素个数:5
元素个数为:
34
23
12
11
45
偶数之和为:46
奇数之和为:79

相关文章