- 1 名前:デフォルトの名無しさん [2012/05/04(金) 04:05:26.52 ]
- C言語の入門者向け解説スレッドです。
★前スレ C言語なら俺に聞け(入門編)Part 100 toro.2ch.net/test/read.cgi/tech/1333108892/ ★過去スレ makimo.to:8000/cgi-bin/search/search.cgi?q=%82b%8C%BE%8C%EA%82%C8%82%E7%89%B4%82%C9%95%B7%82%AF&andor=AND&sf=0&H=&view=table&D=tech&shw=5000 ★教えて欲しいのではなく宿題を丸投げしたいだけなら ↓宿題スレ↓へ行ってください。 C/C++の宿題片付けます 157代目 toro.2ch.net/test/read.cgi/tech/1335517816/ ★C++言語については避けてください。C++対応明記スレへどうぞ ★分からない事をなるべく詳しく書いて下さい。 ★ソースコードを晒すと答えやすくなるかもしれません。 # 抜粋/整形厳禁、コンパイラに渡したソースをそのまま貼ること # サイズが大きい場合は宿題スレのアップローダ等を利用してください ★開発環境や動作環境も晒すと答えが早いかもしれません。 ★質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。 長くなりそうなコードはcodepadに貼り付けてもいいでしょう codepad.org/ ideone.com/
- 655 名前:デフォルトの名無しさん mailto:sage [2012/05/19(土) 23:27:59.05 ]
- >>651
>1〜20 の ”〜”の部分は >どう表現すればいいんですか? 「波線」。
- 656 名前:デフォルトの名無しさん mailto:sage [2012/05/19(土) 23:41:55.43 ]
- >>654
ありがとうございます! >>655 勉強になりましたwww
- 657 名前:デフォルトの名無しさん mailto:sage [2012/05/20(日) 00:25:16.23 ]
- いえいえ
- 658 名前:デフォルトの名無しさん mailto:sage [2012/05/20(日) 00:49:25.18 ]
- >>657
いやお前に言ってないからwww
- 659 名前:デフォルトの名無しさん mailto:sage [2012/05/20(日) 00:55:35.76 ]
- 俺に言ってんだよ。
- 660 名前:デフォルトの名無しさん mailto:sage [2012/05/20(日) 01:10:07.47 ]
- >>659
誰にも言ってないんですけど
- 661 名前:デフォルトの名無しさん mailto:sage [2012/05/20(日) 03:56:57.85 ]
-
>657 が壁に向かって言ってるんだろ。
- 662 名前:デフォルトの名無しさん mailto:sage [2012/05/20(日) 03:59:53.21 ]
- Yeah Yeah
- 663 名前:デフォルトの名無しさん mailto:sage [2012/05/20(日) 07:15:58.09 ]
- iPadで授業の動画を見ながらプログラミング学習
ソフトバンクがシリーズ展開 iPad 向けアプリ「赤松先生のIT講座シリーズ」の第1弾としてリリースされたのは、『速解C 60分でわかる「構造体」「ポインタ」』(1500円、発売記念価格800円)。 markezine.jp/article/detail/11865 static.shoeisha.jp/mz/static/images/article/11865/11865.jpg
- 664 名前:デフォルトの名無しさん mailto:sage [2012/05/20(日) 08:19:55.81 ]
- イェーイェー
- 665 名前:デフォルトの名無しさん mailto:sage [2012/05/20(日) 08:23:16.86 ]
- ドットインストールで充分だろ。
- 666 名前:デフォルトの名無しさん mailto:sage [2012/05/20(日) 10:34:29.62 ]
- ドットインストールは中身薄くてダメだ
そこで動画公開してる低レベル野郎のステマか?
- 667 名前:デフォルトの名無しさん mailto:sage [2012/05/20(日) 10:51:41.38 ]
- どーせ動画で見に付くわけないんだ、本人が判った気になるだけのために金を出すのは馬鹿馬鹿しいってこと。
それこそドットインストールがどうこうって、ソフトバンクのステマかっての。
- 668 名前:デフォルトの名無しさん [2012/05/20(日) 12:00:05.03 ]
- >>649
役立つ言語がもしあると今度は立場がなくなるやつが何か吠えてるなw
- 669 名前:デフォルトの名無しさん mailto:sage [2012/05/20(日) 12:10:49.11 ]
- C言語が身に付くレベルの理解力があれば他の言語の取得も容易っていう目安になる。
- 670 名前:デフォルトの名無しさん mailto:sage [2012/05/20(日) 19:20:02.56 ]
- なるね。
- 671 名前: ◆QZaw55cn4c mailto:sage [2012/05/20(日) 20:06:22.08 ]
- なるかなあ?
- 672 名前:デフォルトの名無しさん mailto:sage [2012/05/20(日) 20:15:42.94 ]
- とりあえずここが人が多そうだからここにきたんですが
総合的な質問スレってありませんか?
- 673 名前: ◆QZaw55cn4c mailto:sage [2012/05/20(日) 20:20:54.34 ]
- toro.2ch.net/test/read.cgi/tech/1316013463/
- 674 名前:デフォルトの名無しさん mailto:sage [2012/05/20(日) 20:57:23.25 ]
- >>672
ここが総合的な質問スレに見えるならそういうことにしておけ
- 675 名前:デフォルトの名無しさん mailto:sage [2012/05/20(日) 21:53:35.00 ]
- double nanashi(double MAX,double MIN) //MINからMAXまでの実数乱数を返す
{return ((double)(rand()%(int)((MAX-MIN+1)*POINT))+MIN)/POINT;} 実数の乱数を返す関数を作りましたが思ったような動作を行いません 記述を間違えているのでしょうか POINTは10^4くらいです
- 676 名前:デフォルトの名無しさん mailto:sage [2012/05/20(日) 21:56:40.57 ]
- >>675
(MAX-MIN)*rand()/RAND_MAX+MIN;
- 677 名前:デフォルトの名無しさん mailto:sage [2012/05/20(日) 22:01:51.28 ]
- >>676
0から1までの乱数を生成して、大きさ(MAX-MIN)をかけMINの分を底上げするんですね 助かりましたありがとうございます
- 678 名前:678 [2012/05/21(月) 01:47:42.52 BE:950591227-2BP(0)]
- rot13暗号を解読するプログラムでEOFを使わないプログラムが分かりません。
- 679 名前: ◆QZaw55cn4c mailto:sage [2012/05/21(月) 02:11:52.61 ]
- >>678
ideone.com/6G1HG
- 680 名前:678 [2012/05/21(月) 02:20:17.16 BE:678993825-2BP(0)]
- >>679
getchar使わない文でお願いします。すいません
- 681 名前: ◆QZaw55cn4c mailto:sage [2012/05/21(月) 02:21:49.50 ]
- >>680
fgetc(), fputc() は使っていいかい?
- 682 名前:678 [2012/05/21(月) 02:24:58.37 BE:678993825-2BP(0)]
- >>681
すいませんが、習い始めで getcharを習い出したばっかりで、 ちなみに自分で作った文だとデバッグエラーが出るんです。 #include<stdio.h> int main(void) { int rot; while(rot >= 'a'&&rot <= 'z') { if('a'<=rot && rot<='m') rot = rot+13; else if('n'<= rot && rot<='z') rot = rot-13; } return 0; } こんな感じです。
- 683 名前: ◆QZaw55cn4c mailto:sage [2012/05/21(月) 02:33:31.68 ]
- >>682
>自分で作った文だとデバッグエラーが出るんです。 「デバッグエラー」、というのは具体的にどんな状態になるのかな?なにかメッセージがでるとか。
- 684 名前:678 [2012/05/21(月) 02:41:48.37 BE:814792526-2BP(0)]
- Debug Error!
Program: C:\Users\名前 \Desktop\ROT13\Debug\ROT13\.exe Module: C:\Users\名前 \Desktop\ROT13\Debug\ROT13.exe File: Run-Time Check Failure #3-The cariable'rot'is being used without being initialized. (Press Retry tu debug the application) っていう表示のウィンドウが出ます。。。。
- 685 名前:デフォルトの名無しさん mailto:sage [2012/05/21(月) 02:48:58.17 ]
- int rot=0;
- 686 名前:デフォルトの名無しさん mailto:sage [2012/05/21(月) 02:49:16.73 ]
- >>684
hello world の表示は出来た?
- 687 名前:678 [2012/05/21(月) 02:53:16.56 BE:407396423-2BP(0)]
- >>685
int rot = 0; だと、終わってしまいます。 >>686 出来ました。 なんでもかんでも出来ないわけではないそうです。
- 688 名前:デフォルトの名無しさん mailto:sage [2012/05/21(月) 02:56:07.55 ]
- >>687
そりゃそうだろ >>682はrotの入出力やってないもん でもエラー出なくなったろ? >>684のエラーはそういう意味 どこかで入出力文があれば初期化も不要なはずなんだが
- 689 名前: ◆QZaw55cn4c mailto:sage [2012/05/21(月) 03:01:32.04 ]
- >>684
それは rot に値がはいっていないよ、ってことですね。 たしかに、>>682 では rot の値がきまっていない。(rot をどう処理するかはかいてあっても。) で rot に値をいれればいいのですが、どんな感じにしますか?getchar() で標準入力から掘り込み、printf() で表示するとかが適当だとおもいますけど。 なにか希望があれば教えてください。 あとプログラムを作成している環境(コンパイラの種類とか)もわかるのなら教えてください。もしかして web でやっているのでしょうか?
- 690 名前:678 [2012/05/21(月) 03:03:44.46 BE:4888750289-2BP(0)]
- >>688
#include<stdio.h> int main(void) { int rot; while(rot >= 'a'&&rot <= 'z') { printf("%c\n",rot); if('a'<=rot && rot<='m') rot = rot+13; else if('n'<= rot && rot<='z') rot = rot-13; } return 0; } これでprintfを足したんですが、同じエラー文?が出ました。
- 691 名前:678 [2012/05/21(月) 03:09:58.26 BE:3327066277-2BP(0)]
- >>689
希望はないんですが、あまり複雑なモノはまだ習ってないので遠慮したいです。
- 692 名前:デフォルトの名無しさん mailto:sage [2012/05/21(月) 03:13:10.20 ]
- なんちゅーか
プログラム云々の前にチラシの裏にでも理解出来たと思う部分を書き出してみて 自分の頭ん中をデバッグするところから始めるべき
- 693 名前:デフォルトの名無しさん mailto:sage [2012/05/21(月) 03:15:07.11 ]
- >>689
あと任せた 寝る
- 694 名前:デフォルトの名無しさん mailto:sage [2012/05/21(月) 03:17:06.88 ]
- >>690
最後に一つだけ 「入出力文」と書いたのは悪かった 「入力文」の方が正しいな エラーの理由はrotを初期化しないでいきなり while(rot >= 'a'&&rot <= 'z') なんてやってるから undefined、つまり「鼻から悪魔が出てきても知りませんよ」という事
- 695 名前: ◆QZaw55cn4c mailto:sage [2012/05/21(月) 03:20:25.52 ]
- >>691
ideone.com/0H11v 一文字しかできませんが、手始めにこんなのはどうですか? /* 1 */ と /* 3 */ で入力、/* 2 */ で出力しています。 あと rot13 の処理が「実は」正しくないですね。
- 696 名前: ◆QZaw55cn4c mailto:sage [2012/05/21(月) 03:21:00.90 ]
- >>693
日食までがんばりませんか?
- 697 名前:678 [2012/05/21(月) 03:32:42.36 BE:3259166786-2BP(0)]
- #include<stdio.h>
int main(void) { int rot,loop; loop = 1; scanf("%c\n",&rot); while(loop <=100) { if('a'<=rot && rot<='m') rot = rot+13; else if('n'<= rot && rot<='z') rot = rot-13; scanf("%c\n",&rot); } return 0; } ここまでいったんですが、+13とか-13がされません。。。
- 698 名前:678 [2012/05/21(月) 03:52:08.79 BE:4277656297-2BP(0)]
- 一応友達のアドバイスもあって、
プログラムが出来ました。 ありがとうございました。 #include<stdio.h> int main(void) { int rot,loop; loop = 1; while(loop <=100) { scanf("%c",&rot); if('a'<=rot && rot<='m') rot = rot+13; printf("%c",rot+13); if('n'<= rot && rot<='z') rot = rot-13; printf("%c",rot-13); } return 0; }
- 699 名前: ◆QZaw55cn4c mailto:sage [2012/05/21(月) 03:57:26.90 ]
- >>697
手が加わったのはいい感じです。 rot13 の処理に問題はありますが、とりあえず >>697 に沿って動くように訂正すると codepad.org/ikiHqIJW scanf("%c\n", &rot) の rot は char rot; でないとうまくうごきません。 int rot; だと'c' を入力したつもりでも、実は場合によっては rot が 'c' にならないことがあるのです。
- 700 名前: ◆QZaw55cn4c mailto:sage [2012/05/21(月) 03:59:53.20 ]
- >>698
ありま? でも、それ、うごいているようにみえるのは偶然ですよ、たぶん。 int rot; じゃなくて char rot; じゃないと‥‥‥
- 701 名前:678 [2012/05/21(月) 04:06:51.43 BE:1357986454-2BP(0)]
- >>700
そうなんす。 変な文字まで現れて・・・ charでやってみます。
- 702 名前:デフォルトの名無しさん mailto:sage [2012/05/21(月) 04:15:12.14 ]
- >>701
>変な文字まで現れて・・・ X printf("%c",rot+13); O printf("%c",rot); X scanf("%c",&rot); O scanf(" %c",&rot);
- 703 名前:678 [2012/05/21(月) 04:32:59.41 BE:1222188629-2BP(0)]
- >>702
変な文字は出なくなりました。 あとは+と‐がされなくて 'a'を入力すると'aT'と表示されたり・・・
- 704 名前:デフォルトの名無しさん mailto:sage [2012/05/21(月) 04:54:51.59 ]
- >>703
今のソースをそのままideoneに貼れ。
|

|