キーボードから正の整数を読み取り、n個の奇数を加算しディスプレイにかきだすプログラムです。;が型の前に必要というエラーがずっとでてきて、でも足りないところはわからないのですが、何が違うのでしょう??もうわけがわからなくて困ってます。お願いします。
/*演習1-3*/
#include<stdio.h>
int main()
{
int i;
int n;
int sum=0;
printf("%d¥n",n);
for (i=1;i<=n;i+=2);
int scanf("%d",&n);
sum+=i;
printf("1+2+...+n=%d\n",sum);
return 0;
}
No.3ベストアンサー
- 回答日時:
(1) #includeの次に半角スペースがない。
(2) 変数n を初期化していない。
(3) printf文の\(半角文字)が¥(全角文字)になっている。
(4) for文の最後に不要な ; が付いている。
ただし、これは、コンパイルエラーにはならない。
これらを修正すると、以下のようになります。
インデント(字下げ)は全角スペースを使用しているので、
そこはTABとかに直して使ってみてください。
#include <stdio.h>
int main()
{
int i, m, n, sum;
printf("正の整数(最大32767)を入力してください >");
scanf("%d\n", &m);
printf("0~%dの奇数の合計を計算します\n", m);
sum = 0; /* 奇数の合計 */
n = 0; /* 奇数の数 */
for(i=1; i<=m; i+=2) {
sum += i;
if( i==1 ) {
printf("%d",i);
} else {
printf("+%d",i);
}
n++;
}
printf("=%d\n", sum);
printf("0~%dまでの奇数の数は%dで、合計は%dです\n",m,n,sum);
return(0);
}
No.2
- 回答日時:
>(intが32ビットの環境ならば0から約42億回までのどこか。
現状では空ループなので一瞬ですが)訂正です。
42億回でなく21億回…です。
i+=2を見逃していました。
ということで、for文をブロックに修正しても、
> printf("1+2+...+n=%d\n",sum);
は正しくありませんが。
"1+3+...+n"ということになります。
No.1
- 回答日時:
>;が型の前に必要というエラーがずっとでてきて、でも足りないところはわからないのですが、何が違うのでしょう??
一緒に行番号も表示されているかと思われますが。
その前後(このエラーだと表示された行より前)に問題があるかと。
> printf("%d¥n",n);
¥は半角だと思いますが……。
未初期化の変数を参照しているので表示される値は不定です。
後のループ回数を入力させたいのではないですか?
> for (i=1;i<=n;i+=2);
この行の最後の;は必要ですか?
この場合空ループするだけですが意図したものですか?
なお、ループ回数は不定です。(intが32ビットの環境ならば0から約42億回までのどこか。現状では空ループなので一瞬ですが)
> int scanf("%d",&n);
何故intが書かれているのでしょう?
ループ中に数字を入力させて合計値を算出したい。
というのであれば、for文のあとをブロックで囲む必要があります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
【お題】 ・存在しそうで存在しないモノマネ芸人の名前を教えてください
-
人生最悪の忘れ物
今までの人生での「最悪の忘れ物」を教えてください。 私の「最悪の忘れ物」は「財布」です。
-
メモのコツを教えてください!
メモを取るのが苦手です。 急いでメモすると内容がごちゃごちゃになってしまったり、ひどいときには全く読めない時もあります。
-
【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
【お題】 ・買ったばかりの自転車を分解してひと言
-
高校三年生の合唱祭で何を歌いましたか?
大人になると大人数で合唱する機会ってないですよね。 思い出すと、高校三年生の合唱祭が最後でした。 そこで、みんなの思い出の合唱曲を知りたい!
-
error C2143: 構文エラー : ';' が '{' の前にありません。
C言語・C++・C#
-
error C2143: 構文エラー の対処法
C言語・C++・C#
-
Run-Time Check Failure #3というエラーが出ます。
C言語・C++・C#
-
-
4
エディットボックスの入力制限について
C言語・C++・C#
-
5
静的でないメンバ関数の呼び出しが正しくありません
C言語・C++・C#
-
6
C言語初心者です、、、お助けください
C言語・C++・C#
-
7
間接参照のレベルが異なっています
C言語・C++・C#
-
8
C言語初心者 ポインタについて、お助けください、、
C言語・C++・C#
-
9
既定のコンストラクタがない?
C言語・C++・C#
-
10
HEWを使用しているのですが、このようなエラーが出ました。
C言語・C++・C#
-
11
char*を初期化したいのですが
C言語・C++・C#
-
12
画面を強制的に再描画させる方法
C言語・C++・C#
-
13
C言語での引数の省略方法
C言語・C++・C#
-
14
CStringの文字列検索&抜き出しについて
C言語・C++・C#
-
15
外部依存関係について
C言語・C++・C#
-
16
読み込み中にアクセス違反が発生しました、と出ます。これを回避することは
C言語・C++・C#
-
17
Debug Assertion Failed?
C言語・C++・C#
-
18
MFCでOnPaintのタイミング
C言語・C++・C#
-
19
バッファとは何ですか
C言語・C++・C#
-
20
CStringからchar*への型変換について教えてください。
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
構文エラー";"が型の前にあり...
-
プログラム
-
#if 1 #elseの意味について
-
for文の中にswitch文はいれられ...
-
配列を使って魔方陣
-
getcの改行判定
-
配列を関数に渡す方法
-
プログラミングで二番目に大き...
-
C言語階乗の総和を求める
-
scanf関数を用いての加減乗除%...
-
C言語で電卓を作成する。
-
C言語 プログラム
-
C言語の二分法のプログラムにつ...
-
C言語のwhile文を使った素数判...
-
while文について、c言語...
-
10進数からN進数に変換するプロ...
-
C言語です
-
C言語・アルゴリズムの勉強法(...
-
C言語のプログラミング (基礎...
-
全角文字の判定
おすすめ情報