Uploaded on

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
2,489
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
1
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. 基礎情報処理演習(5)プログラミングの基本 山本和英 長岡技術科学大学 1
  • 2. このスライドは...● 授業や自習のための教材です。● 授業ではC言語を最低限学ぶことを目指している 関係で、必要なことを「厳選」して書いています。 よって相当いろんなことを省略していますので詳し い説明はC言語の教科書などを参照してくださ い。● また、口頭でもかなり補足説明していますので、 このスライドを読んだだけでC言語を理解したとは 思わないでください。 2
  • 3. C言語の特徴● とにかく古い(1972年)● いろんな他の言語に影響を与えている(C++, Java, ...)● 今でもかなり使われている● すべてのプログラムを「関数」で書く● 構造化制御が可能(当時は画期的)● フリーフォーマット 3
  • 4. ソースプログラム人間が理解できるように記述したプログラムをソースプログラムと呼ぶ。ソースコード、あるいは単にソースとも呼ぶ。コンパイルコンピュータが理解できるように「翻訳」することをコンパイルと呼ぶ。コンパイルの仕事をするのがコンパイラー。 4
  • 5. エラーメッセージはよく読もうコンパイラーは「エラー」(直さないと動かない)と「警告」(おススメ)の2種類のメッセージを出す。エラーがあると言われた行 ≠ 間違っている行 (誤っていても次の行で気付く時もある)エラーメッセージの数 ≠ 間違いの数 (1つの誤りでいくつもエラーが出る) 5
  • 6. /* プログラム1:はじめてのプログラム */#include <stdio.h>int main(void) { printf ("Hellon"); return 0;} 6
  • 7. /* プログラム1:はじめてのプログラム */#include <stdio.h>int main(void) { printf ("Hellon"); return 0;} 書きだしはいつも同じ 決まり文句 7
  • 8. /* プログラム1:はじめてのプログラム */#include <stdio.h>int main(void) { printf ("Hellon"); return 0;} 「文」の最後には セミコロン;が必要 8
  • 9. /* プログラム1:はじめてのプログラム */#include <stdio.h>int main(void) { printf ("Hellon"); return 0;} 改行を示す (詳しくはp.22) 9
  • 10. /* プログラム1:はじめてのプログラム */#include <stdio.h>int main(void) { printf ("Hellon"); return 0;} 画面表示させる関数 (これを使うためには 1行目の #include … が必要) 10
  • 11. 戻り値 int main(void)の場合は終了時に(int型で)値を返す必要があるので、何も考えずにプログラムの最後に return 0;をつけといてください。ちなみに、冒頭を void main(void)とすれば return 0; も不要です。 11
  • 12. 読みやすいプログラムを書こうコンパイラは余計な空白を無視するのでint main(void) { int nn; nn = 10 + 20;printf ("ans=%dn", nn); return 0; }こんな書き方をしても動作しますが、やめようね。 12
  • 13. /* プログラム2:足し算 */#include <stdio.h>int main(void) { int nn; nn = 10 + 20; printf ("ans=%dn", nn); return 0;} 13
  • 14. コメントはどんどん書こう /* … *//* コメント */ の部分がコメント (何行でも可能)/* プログラムの一部をprintf ... 隠したりする時に*/ 使ってみたりして // から行末a = 1;  //本当? までがコメント (1行限定) 14
  • 15. 変数は使う前に宣言する 名前:nnint nn; タイプ:整数int p, q; 二つ以上一緒に 宣言できるint x=0, y; ついでに初期化もできる 15
  • 16. 変数宣言は必ずプログラムの冒頭で#include <stdio.h>int main(void){ int … プログラムの冒頭で double … まとめて変数宣言 プログラム本体 return 0;} 16
  • 17. printfは書式指定ができる %d は「整数」を表す。 printf (“ans=%dn”, 3); %d の部分に3が表示される。 17
  • 18. さらに複雑なこともできるprintf (“%dは%dだ.n”, x, y);printf (“%6dn”, p);整数pを6ケタで(5ケタ以下は右詰めする) 18
  • 19. /* プログラム3:入力 */#include <stdio.h>int main(void) { int dt; scanf ("%d", &dt); dt = dt + 2; printf ("%dn", dt); return 0;} 19
  • 20. 数値の入力 scanf ("%d", &dt);整数入力時は %d 変数名に 必ず&をつける(実数の時は %f) (理由は略)※コンパイルの警告が気持ち悪い人は、代わりに scanf_s を使ってください(使い方は同じ)。 20
  • 21. 変数名の話英数字はだいたい何でも変数名になる。ただし、● 大文字と小文字は別の文字(Aとaは違う変数)● 先頭に数字は使えない。● プログラムに使う予約語(int, double, long, short, do, if, for, long, switch など)は 使えない。 21
  • 22. エスケープシーケンスn (バックスラッシュエヌ、nと表示されることもあります)は特殊な文字で、nと表示されるのではなく改行(次の行の冒頭に進む)を意味する。このような文字をエスケープシーケンスと呼ぶ。エスケープシーケンスは10種類ぐらいありますが、本演習では、n のみ使います。 22