![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
これは何故ダメなのですか?
https://code.hackerearth.com/a5e974Y
内容は数列kappaの第1項から第100項までの和を取るというつもりでつくりました。
No.4ベストアンサー
- 回答日時:
> intの前にいれる式はどのようなものを入れなければならないのですか?
これはコンパイルエラーとして
> 8:1: error: expected expression before 'int'
> 8行目、intの前に式が必要です
と書いてますが、実際は重要なのはむしろその下の3つ
> 9:5: error: conflicting types for 'kitsune'
> 9行目、kitsuneの型が衝突しています
> 6:9: note: previous declaration of 'kitsune' was here
> 6行目でkitsuneは既に宣言されています
> 9:1: error: invalid initializer
> 9行目の宣言は不適切な初期化です
で、要するに6行目でkitsuneないしはkappaがintの配列だ、って宣言されてるのに9行目以降で同じ変数を「再宣言」してる事が問題なんです。
6行目(と7行目)でint宣言した変数はその後intを付ける必要はありません。
ちょっと直したみたいですが、まずは8行目と10行目のintを削除しましょう。
それで再コンパイルしてエラーが減るかどうか見てみましょう。
(プログラミングはエラーとの戦いなんで、まずは「エラーを徐々に減らしていく」と言うのが必要です)
それから、#2と#3で解説されてますが、100個の要素がある配列の宣言は、例えばこの例で言うと
int kitsune[100]
ってのはオーケーです。これで100個の要素を持つ配列が宣言出来ます。
ただし。
要素順番の「数え方」は0から始まって99まで、です(0から99で100個あるでしょ?)。
つまりforで回す場合は例えば(最初にkを宣言しなかったら)
for (int k = 0; k < 100; k++) {
処理内容;
}
と言うカタチになるのが基本です(この場合kが100になる事はないですね)。
No.3
- 回答日時:
リンク先、修正したみたいですな。
>intの前にいれる式はどのようなものを入れなければならないのですか?
そもそもそんなところにint要らないんですが…。
『ローカル変数を宣言』したいんですか?『キャストしたい』んですか?
なんでintが必要だと思ったんでしょうか?
>配列の数字は0からなんですね。
>勘違いしていました。
うん。理解していただけていないようで諦めました。
先の回答を受けて、
int kitsune[99];
に対して
printf("和は%dです",kitsune[100]);
が可能である。と理解されたようですね。
危険なプログラムを作成する者として精進してください。
本職(プログラマー)への道は険しいです。
No.1
- 回答日時:
コンパイルするとエラーが出てきますよね。
落ち着いてそれを読んでください。
In function 'main':
7:5: error: 'k' undeclared (first use in this function)
7行目、kが宣言されていません(この関数内で初登場です)
7:5: note: each undeclared identifier is reported only once for each function it appears in
注: 7行目以降の未宣言の識別子はここで一回だけ警告します
8:1: error: expected expression before 'int'
8行目、intの前に式が必要です
9:5: error: conflicting types for 'kitsune'
9行目、kitsuneの型が衝突しています
6:9: note: previous declaration of 'kitsune' was here
6行目でkitsuneは既に宣言されています
9:1: error: invalid initializer
9行目の宣言は不適切な初期化です
10:5: error: 'i' undeclared (first use in this function)
10行目、iは未宣言です(この関数内で初登場です)
11:1: error: expected expression before 'int'
11行目、intの前に式が必要です
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) パイソンのプログラミングについての質問です 2 2023/05/22 12:39
- その他(IT・Webサービス) 昨日今日と、Open AIのChat GPTを使ってみたのですが、正直言って、期待外れです… 返答内 4 2023/02/13 21:49
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- Visual Basic(VBA) 列と行の名前(重複あり)が交差するセルに、データを入力したい 3 2022/06/12 11:17
- その他(形式科学) 画像の写真のような数式の分母は、 数列の和であり、一般項も見ただけですぐ分かりますが、なぜ分母の数式 2 2022/07/10 13:41
- Visual Basic(VBA) VBAで、1つのエクセルで、2つのシートからもう1つのシートに条件のある転記コードを教えてください。 1 2023/03/16 18:07
- 数学 数独の解法についてお聞きします 4 2023/05/25 17:15
- 数学 公比が実数である等比数列があり、初項から第3項までの和が63、第4項から第6項までの和が4032であ 2 2022/03/25 14:13
- 数学 群数列の問題がわかりません。どなたか教えてください… 【問題文】 1から順に自然数を並べて, 下のよ 2 2022/03/28 18:55
- C言語・C++・C# C言語 3 2022/10/04 15:07
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
関数から配列を返すには?
-
構造体のextern方法
-
配列の要素数に変数を入れたい...
-
define で 配列
-
MFCのCArrayを使った二次元配列
-
char型配列をint型に代入するには
-
C言語において、 配列要素をひ...
-
C言語から質問です。
-
C#で構造体の配列を持った構造...
-
10人分の生徒の英語の点数{32,3...
-
ポインタを使って構造体の配列...
-
配列における数値の比較について
-
AfxBeginThread の引数について
-
エラーが出てしまいます
-
char gyou[1024];でcharの表現...
-
C#でプログラミングしてるので...
-
背景差分法における正規化距離
-
C言語についてです 5人のテスト...
-
C言語の課題が出たのですが自力...
-
std::vector 2次元配列の列方向...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
関数から配列を返すには?
-
C言語において、 配列要素をひ...
-
配列の要素数に変数を入れたい...
-
構造体のextern方法
-
define で 配列
-
c言語
-
C#で構造体の配列を持った構造...
-
C言語の2次元配列 容量が大き...
-
c言語 構造体
-
C言語 ファイルの指定された行...
-
C言語についてです 5人のテスト...
-
int i, int i[1];
-
fclose()でセグメンテーション違反
-
char型配列をint型に代入するには
-
C言語から質問です。
-
Cのエラー
-
コンボボックスでデフォルト値...
-
C言語の課題が出たのですが自力...
-
MFCのCArrayを使った二次元配列
-
[C++]const int と配列
おすすめ情報