前提・実現したいこと
はじめに、配列に要素を入力します。
その後、
・入力した配列の要素の中から奇数の数を数える
・入力した配列の要素の中の奇数の和を求める
の2つの操作を行います。
最後に、
・奇数の数
・奇数の和
を表示します。
少しでもアドバイス頂けると助かります。
宜しくお願い致します。
発生している問題・エラーメッセージ
表示される数が、 奇数の個数:3858704 正の奇数の総和:3780834 となります。 個々の値を正しい値が表示されるように直したいです。
該当のソースコード
#include <stdio.h> #define NUMBER 11 int inputData(int v[]); void calcOdd(const int v[],int *p_oddNum, int *p_oddSum); int main(void) { int v[NUMBER]; int p_oddNum; int p_oddSum; printf("データ:"); inputData(v); calcOdd(v,&p_oddNum,&p_oddSum); printf("奇数の個数:"); printf("%d",p_oddNum); printf("正の奇数の総和:"); printf("%d",p_oddSum); return 0; } int inputData(int v[]) { int i; for(i=0;i<NUMBER;i++){ scanf("%d",&v[i]); if(v[i]==0){ break; } } return i+1; } void calcOdd(const int v[],int *p_oddNum, int *p_oddSum) { int i; for(i=0;i<NUMBER;i++){ if(v[i]==0){ break; } if(v[i]%2!=0){ *p_oddNum++; *p_oddSum+=v[i]; } } }
試したこと
恐らくは、2つ目の関数の条件が間違っているということしか分かってないです。
補足情報(FW/ツールのバージョンなど)
サクラエディタ、コマンドプロンプト for VS 2019
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/16 09:51
2020/06/16 09:53
2020/06/16 10:50