前提・実現したいこと
実現したいこととしては、
各月の費用を、内訳別に数値入力し、月ごとの合計金額を表示するプログラムを作成しています。
下記、input関数にてint型配列に数値入力を行い、goukei関数にて数値を計算し、main関数内で出力処理を試みております。
int input(); int goukei(); typedef struct{ int hiyo[6]; }kakei; int main(){ int i, m; printf("\n何月分の出費を計算しますか?:"); scanf("%d",&m); kakei cost[m]; int msum[m]; input(cost,m); goukei(cost,m,msum); printf("各月の出費合計\n--------------\n"); for(i=0;i<m;i++){ printf("%d月 %d\n",i+1,msum[i]); } } int input(kakei *a,int n){ int i,j; char uti[6][10]={"住居費","食費","被服費","教養費","医療費","その他"}; for(i=0;i<n;i++){ printf("\n%d月の費用内訳\n",i+1); for(j=0;j<6;j++){ printf("%d月の%sを入力して下さい:",i+1,uti[j]); scanf("%d",&a->hiyo[j]); } a++; } a = a - (n - 1); return 0; } int goukei(kakei *a, int n, int *s){ int i,j; for(i=0;i<n;i++){ for(j=0;j<6;j++){ s[i] += a->hiyo[j]; } a++; } a = a - (n - 1); return 0; }
発生している問題・エラーメッセージ
発生しているエラー内容としては、数値が入力した通り出力されません。
下記が出力内容です。
素人なりに解決のために尽力したのですが、分かりかねるため、お力をお貸しいただきたく存じます。。
何月分の出費を計算しますか?: 2 1月の費用内訳 1月の住居費を入力して下さい:2 1月の食費を入力して下さい:2 1月の被服費を入力して下さい:2 1月の教養費を入力して下さい:2 1月の医療費を入力して下さい:2 1月のその他を入力して下さい:2 2月の費用内訳 2月の住居費を入力して下さい:3 2月の食費を入力して下さい:3 2月の被服費を入力して下さい:3 2月の教養費を入力して下さい:3 2月の医療費を入力して下さい:3 2月のその他を入力して下さい:3 各月の出費合計 -------------- 1月 3343 2月 32784
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/02/24 00:34