回答編集履歴

2

m

2019/06/07 01:33

投稿

yumetodo
yumetodo

スコア5850

test CHANGED
@@ -80,11 +80,11 @@
80
80
 
81
81
 
82
82
 
83
- です。
83
+ です。ここの段階で変数xが生きていないとだめということです。
84
84
 
85
85
 
86
86
 
87
- 変数の生存期間に気をつけて宣言定義しましょう。かつ、初期化(=プログラマからみて何が変数に入っているか分かるようにする作業)も必要です。何で初期化すればいいでしょうか?
87
+ そんなわけで変数の生存期間に気をつけて宣言定義しましょう。かつ、初期化(=プログラマからみて何が変数に入っているか分かるようにする作業)も必要です。何で初期化すればいいでしょうか?
88
88
 
89
89
 
90
90
 

1

m

2019/06/07 01:33

投稿

yumetodo
yumetodo

スコア5850

test CHANGED
@@ -63,3 +63,69 @@
63
63
  ```c
64
64
 
65
65
  x+= data ○○
66
+
67
+ ```
68
+
69
+
70
+
71
+ に着目します。ヒントには`x`を宣言定義している場所がないのでどこかで宣言定義する必要があります。ここでヒントの中で大事な部分が
72
+
73
+
74
+
75
+ ```c
76
+
77
+ printf("%d",x); //Xに平均が入る
78
+
79
+ ```
80
+
81
+
82
+
83
+ です。
84
+
85
+
86
+
87
+ 変数の生存期間に気をつけて宣言定義しましょう。かつ、初期化(=プログラマからみて何が変数に入っているか分かるようにする作業)も必要です。何で初期化すればいいでしょうか?
88
+
89
+
90
+
91
+ ここで大事な数学上の性質としては
92
+
93
+
94
+
95
+ ```
96
+
97
+ 0 + 1 = 1
98
+
99
+ 0 + 2 = 2
100
+
101
+ 1 + 0 = 1
102
+
103
+ ```
104
+
105
+
106
+
107
+ のように、`0`は足し算に影響を与えないという性質でした。
108
+
109
+
110
+
111
+ さあ、ここまで書けば変数xを宣言定義する
112
+
113
+
114
+
115
+ ```
116
+
117
+ int x = /* 初期値 */;
118
+
119
+ ```
120
+
121
+
122
+
123
+ をどこに書けばいいか分かるでしょう。
124
+
125
+
126
+
127
+ ---
128
+
129
+
130
+
131
+ あとは「要素数で割る」作業ですが、まあただの割り算ですから特に考えることはありませんね。