CプログラミングⅠ
C言語の基礎 標準出力
簡単なプログラム
C言語のプログラムは関数で構成される文字列の出力
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
/* 文字列を出力する */
#include <stdio.h>
int main(void) {
/*
学籍番号と氏名を出力する*/
printf("14C?0?? 山本貴弘¥n");
return 0;
}
C言語の基本
プログラムには
main
関数が必ず一つ必要関数は
{ で始まり,
} で終わる
main
関数内の最後にはreturn 0;
を記述する文字列の出力
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
/* 文字列を出力する */
#include <stdio.h>
int main(void) {
/*
学籍番号と氏名を出力する*/
printf("14C?0?? 山本貴弘¥n");
return 0;
}
C言語の基本
プログラムの最初に
#include <stdio.h>
を記述する
プログラム実行の内容は
{
からreturn 0; }
の間に記述する
プログラム実行の処理単位を文といい,
文末に
;
(セミコロン)が必要文字列の出力
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
/* 文字列を出力する */
#include <stdio.h>
int main(void) {
/*
学籍番号と氏名を出力する*/
printf("14C?0?? 山本貴弘¥n");
return 0;
}
C言語の基本
/* */
の間はコメント(注釈)となる(プログラム実行の対象とならない)
文のならびとして,C言語プログラムを作成するint main(void) {
文1;
文2;
文3;
return 0;
}
C言語の基本
中カッコ
{ } でかこまれた部分を
ブロックといい、
main関数の範囲を表します.
return文を実行すると
ブロック内の処理を終了します.
C言語では
main関数のブロック内に
処理を記述します.上から下に 順番に 実行される
C言語の基本
C言語は自由書式である書式の例1 1:
2:
3:
#include <stdio.h>
int main(void) { printf("14C?0?? "); printf("山本貴弘¥n"); return 0; }
書式の例2 1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
#include
<stdio.h>
int main(void) {
printf(
"14C?0?? 山本貴弘¥n"
);
return 0;
}
どちらも同じく実行される
(, ),{, }, ; などの前後で 改行,空白を入れても入れなくても
プログラムとして成立する 横に文を並べると,
左から右に順番に実行される
C言語の基本
プログラミング記述における注意点 読みやすいプログラム記述を心がけること
原則として1行に1文を書く.
ブロック内では字下げ(インデント)して行頭をそろえる.
コメントを使ってソースコードの説明を書いておく.
/* 挨拶プログラム */
#include <stdio.h>
int main(void) {
printf("こんにちは¥n");
printf("はじめまして¥n");
return 0;
}
コメントをつける.
ブロック内はインデント(字下げ)をつける.
1行に1文ずつ記述する.
画面への出力(標準出力):
printf関数
printf関数 : 画面に文字を表示(出力)する関数
出力したい文字列をダブルクオート[
"
]で括って記述します文字列の出力(改行なし)
1:
2:
3:
4:
5:
6:
7:
8:
9:
#include <stdio.h>
int main(void) {
printf("おはよう");
printf("こんにちは");
return 0;
}
文字列の出力(改行あり)
1:
2:
3:
4:
5:
6:
7:
8:
9:
#include <stdio.h>
int main(void) {
printf("おはよう¥n");
printf("こんにちは");
return 0;
} 出力結果
おはようこんにちは
出力結果 おはよう
こんにちは 改行される
画面に出力することを
「標準出力」という
printf関数の書式(1)
printf( "出力したい文字列" );
画面への出力(標準出力):
printf関数
エスケープシーケンス 特殊な文字(改行など)を表します
エスケープ文字( ¥ 記号)に続けて入力します
エスケープシーケンス 意味
¥a
警報音を鳴らす¥b
バックスペース¥n
改行¥r
行頭復帰¥t
タブ¥ ' '
を表示する¥ " "
を表示する¥¥
¥ を表示する画面への出力(標準出力):
printf関数
printf関数で文字や数値を表示(出力)
変換仕様
%?
に数値や文字を埋め込んで出力変換仕様付き文字列の表示 1:
2:
3:
4:
5:
6:
7:
8:
#include <stdio.h>
int main(void) {
printf("%dは整数です.¥n", 45);
return 0;
}
出力結果
45は整数です.
printf関数の書式(2)
printf( "変換仕様 %? を含む文字列", 数値や文字);
変換仕様
%d
部分に45
が埋め込まれて出力画面への出力(標準出力)
変換仕様変換仕様 意味
%d
符号付き10
進数(整数)として出力する%f
小数(実数)として出力する(小数点以下6位まで)%c
1文字として出力%s
文字列として出力する
二つ以上の文字や数値を出力 二つ以上の数値や文字を出力する場合は それらをカンマ(,)区切りで記述する
printf("a = %d b = %f¥n", 10, 50.2);
実行結果a = 10 b = 50.2
画面への出力(標準出力)
printfの変換仕様(例題)
printf関数では変換仕様を用いていろいろな出力が
行える
いろいろな値を出力する 1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
#include <stdio.h>
int main(void) {
printf("%dは整数です.¥n", 123);
printf("%fは小数です.¥n", 10.5);
printf("%cは文字です.¥n", 'A');
printf("%sは文字列です.¥n", "ABC");
return 0;
}
実行結果
123は整数です.
10.500000は小数です.
Aは文字です.
ABCは文字列です.
1文字出力する場合は
' ' で文字を囲み,
文字列(複数の文字)を 出力する場合は
" " で文字列を囲む
画面への出力(標準出力)
変換指定による出力レイアウトレイアウト例 意味 出力例
%3d
出力幅3ケタ,右詰で出力 ␣12%-3d
出力幅3ケタ,左詰で出力 12␣%.2f
小数点以下第2位まで出力 12.
00%7.2f
出力幅7ケタ(小数点含む)かつ小数点第2位まで出力
␣␣12.00
出力レイアウト 1:
2:
3:
4:
5:
6:
7:
8:
9:
#include <stdio.h>
int main(void) {
printf("%4dは文字です.¥n", 1);
printf("%4dは整数です.¥n", 12);
printf("%4dは小数です.¥n", 123);
return 0;
}
実行結果
1は整数です.
12は整数です.
123は整数です.
空白が3文字分,左側に 空白が2文字分 空白が1文字分
文字と数値の表現
文字 1つの文字(文字定数)
1文字をシングルクォート( ' )で括って記述する
例 :
’A’, ’b’
文字コードを
'¥~’
で括って記述する.例
: ’¥101’, ’¥x61’
※通常は8進数, xがつくと16進数 文字列(文字列リテラル)
文字のならびをダブルクォート( " )で括って記述する 例
: "こんにちは"
文字と文字列の扱いは異なる.
文字と数値の表現
数値 整数定数
( integer constant )
例 :
1, 2, 100 など
通常は10進数で表される.
先頭に
0
をつけると8進数. 例 :010 (8進数の10)
先頭に
0x
をつけると16進数. 例 :0x10 (16進数の10)
浮動小数点定数
( floating constant )
例 :
2.1, 3.14, 5.0 など
C言語の基本(簡単な計算プログラム)
計算には演算子を用いる演算子による計算プログラム 1:
2:
3:
4:
5:
6:
7:
#include <stdio.h>
int main(void) {
/* 2つの整数値の計算 */
printf("%d + %d = %d¥n", 20, 10, 20 + 10);
printf("%d - %d = %d¥n", 20, 10, 20 - 10);
return 0;
演算子 演算 使用例 意味
+ 加算
20 + 10 20と10の和を計算
- 減算
20 - 10 20と10の差を計算
* 乗算
20 * 10 20と10の積を計算
/ 除算
20 / 10 20を10で割った時の商
% 余算
20 % 10 20を10で割った時の余り
(整数値のみ計算可能)
実行結果 20 + 10 = 30 20 – 10 = 10
C言語の基本(簡単な計算プログラム)
計算処理プログラムでは「変数」を用いる
変数は宣言してから利用する
値や計算結果の変数への格納(代入)は = を使う変数を利用した計算プログラム 1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
#include <stdio.h>
int main(void) {
int a;
int b; /* 変数の宣言 */
int c;
a = 10; /* 変数へのデータの代入 */
b = 20;
c = a + b; /* 計算結果の変数へのデータの代入 */
printf("%d + %d = %d¥n", a, b, c); /* 計算結果の出力 */
return 0;
}
実行結果 20 + 10 = 30
講義のまとめ
C言語の基本 C言語プログラムの構成
画面への出力(標準出力)
printf関数
文字・文字列の表示,エスケープシーケンス
値の表示,変換仕様(変換指定)
出力レイアウト
文字と数値の表現 一つの文字,文字列(複数の文字)
整数値定数,浮動小数点定数