C语言:输入N个数 分别统计奇数和偶数之和 之积

2024-11-27 00:15:57
推荐回答(1个)
回答1:

#include 
#define N 10
int main()
{
    int iArray[N]={0};
    int i = 0;
    int oddSum = 0;         /* 奇数和 */
    double oddProduct = 1;  /* 奇数乘积 */
    int evenSum = 0;        /* 偶数和 */
    double evenProduct = 1; /* 偶数乘积 */
    int oddFlg = 0;
    int evenFlg = 0;
    printf("输入%d个整数\n", N);
    for (i =0; i < N; i++)
    {
        scanf("%d", &iArray[i]);
    }
    getchar();
    printf("原数据为:"); 
    for (i = 0; i < N; i++)
    {
     printf("%d ", iArray[i]); 
    }
    printf("\n");
    
    for (i = 0; i < N; i++)
    {
        if (iArray[i] % 2)
        { /* 奇数 */
         if (oddFlg == 0) {
         printf("奇数有:");
        }
         oddFlg = 1;
        printf("%d ", iArray[i]); 
            oddSum += iArray[i];
            oddProduct *= iArray[i];
        }
        else
        {  /* 偶数 */
           evenSum += iArray[i];
           evenProduct *= iArray[i];
        }
    }
    printf("\n"); 
    
    printf("奇数和为:%d\t奇数乘积为:%.lf\n", oddSum, oddProduct);
    printf("偶数和为:%d\t偶数乘积为:%.lf\n", evenSum, evenProduct);

    return 0;
}