• 検索結果がありません。

Microsoft PowerPoint - 説明2_演算と型(C_guide2)【2015新教材対応確認済み】.pptx

N/A
N/A
Protected

Academic year: 2021

シェア "Microsoft PowerPoint - 説明2_演算と型(C_guide2)【2015新教材対応確認済み】.pptx"

Copied!
21
0
0

読み込み中.... (全文を見る)

全文

(1)

情報ネットワーク導入ユニットⅠ

C言語

(2)

• 演算

• 代入

←C言語では

「代入」の意味

vx = a + b;

//a+bの結果をvxに代入

• 型:

int型

(整数)

double型

(実数)

• 演算での型変換 (整数,実数の混在)

• キャスト演算子 ・・・ 型を一時的に変更

• 書式指定:

printf("%6d¥n", a);

演算と型

(3)

加減,剰余演算

#include <stdio.h> int main(void){

int vx, vy;

puts("二つの整数を入力してください."); printf("整数vx:"); scanf("%d", &vx ); printf("整数vy:"); scanf("%d", &vy ); printf("vx + vy = %d¥n", vx + vy ); //和 printf("vx - vy = %d¥n", vx - vy ); //差 printf("vx * vy = %d¥n", vx * vy ); //積 printf("vx / vy = %d¥n", vx / vy ); //商 printf("vx %% vy = %d¥n", vx % vy ); //余り return(0); } 教科書:p.22 の List 2-1 キーボードから2つの整 数を読込み,その和・差・ 積・商・剰余を画面に表示 するプログラムを作成しな さい. 二つの整数を入力してください 整数vx:57 整数vy:21 vx + vy = 78 vx – vy = 36 : vx % vy = 15 * 掛け算 / 割り算 % 余り(剰余) printfで%を表示するときは、%%と2つ続けて書く。

(4)

加減,剰余演算

#include <stdio.h> int main(void){

int vx, vy;

puts("二つの整数を入力してください."); printf("整数vx:"); scanf("%d", &vx ); printf("整数vy:"); scanf("%d", &vy ); printf("%d + %d = %d¥n", vx, vy, vx + vy ); printf("%d - %d = %d¥n", vx, vy, vx - vy ); printf("%d * %d = %d¥n", vx, vy, vx * vy ); printf("%d / %d = %d¥n", vx, vy, vx / vy ); printf("%d %% %d = %d¥n", vx, vy, vx % vy ); return(0); } キーボードから2つの整 数を読込み,その和・差・ 積・商・剰余を画面に表示 するプログラムを作成しな さい. 二つの整数を入力してください 整数vx:57 整数vy:21 57 + 21 = 78 57 - 21 = 36 : 57 % 21 = 15

(5)

代入 =

#include <stdio.h> int main(void){

int vx, vy, wa, sa, se, sh, jo;

puts("二つの整数を入力してください."); printf("整数vx:"); scanf("%d", &vx ); printf("整数vy:"); scanf("%d", &vy );

//計算 wa = vx + vy; //和の計算 sa = vx – vy; //差の計算 se = vx * vy; //積の計算 sh = vx / vy; //商の計算 jo = vx % vy; //剰余の計算 //結果の表示 printf("%d + %d = %d¥n", vx, vy, wa); printf("%d - %d = %d¥n", vx, vy, sa ); printf("%d * %d = %d¥n", vx, vy, se ); printf("%d / %d = %d¥n", vx, vy, sh ); printf("%d %% %d = %d¥n", vx, vy, jo ); return(0); } キーボードから2つの整数を 読込み,その和・差・積・商・ 剰余を画面に表示するプログ ラムを作成しなさい. = 代入 (等しいではない!) a = 10; // 10をaに代入 a = b; // bをaに代入 wa = vx + vy; //和をwaに代入 教科書:p.27

(6)

int型,double型

int

例)

int nx;

double

例)

double dx;

整数値

1,

12,

1000

実数

1.2, 0.003, 6.00

printf

printf("

%d

",

nx

);

printf("

%f

",

dx);

printf("%lf", dx );

(7)

変換指定:

printf表示を工夫

n = 12345; printf("%d", n ); //変数aの値を表示 printf("%7d", n ); //変数aの値を少なくとも7桁で表示 printf("n=%7d", n ); //変数aの値を少なくとも7桁で表示 1 2 3 4 5 1 2 3 4 5 n = 1 2 3 4 5 1 2 3 4 5 6 7 8 9 10

(8)

変換指定:

printf表示を工夫

1 2 . 3 4 5 0 0 0 d = 12.345; printf("%f", d ); //double型変数dの値を表示 printf("%7.2f", d ); //dの値を少なくとも7桁,小数点以下2桁で表示 printf("d=%.1f", d ); //小数点以下1桁で表示 1 2 . 3 5 d = 1 2 . 3 1 2 3 4 5 6 7 8 9 10

(9)

List

2-8:

#include <stdio.h> int main(void){ int n1, n2, n3, n4; /*整数*/ double d1, d2, d3, d4; /*実数*/ // 右辺の計算イメージ n1 = 5 / 2; // n1 ← 2 n2 = 5.0 / 2.0; // n2 ← 2.5 n3 = 5.0 / 2; // n3 ← 2.5 n4 = 5 / 2.0; // n4 ← 2.5 d1 = 5 / 2; // d1 ← 2 d2 = 5.0 / 2.0; // d2 ← 2.5 d3 = 5.0 / 2; // d3 ← 2.5 d4 = 5 / 2.0; // d4 ← 2.5 printf("n1 = %d¥n", n1 ); printf("n2 = %d¥n", n2 ); printf("n3 = %d¥n", n3 ); printf("n4 = %d¥n", n4 ); printf("d1 = %f¥n", d1 ); printf("d2 = %f¥n", d2 ); printf("d3 = %f¥n", d3 ); printf("d4 = %f¥n", d4 ); return(0); } (実行結果) n1 = 2 n2 = 2 n2 = 2 n2 = 2 d1 = 2.000000 d2 = 2.500000 d3 = 2.500000 d4 = 2.500000 整数どうしの計算→整数 整数と実数の計算→実数 計算結果の小数点以下の切り捨てに注目!

(10)

List

2-9:

#include <stdio.h> int main(void){ int na, nb; /*整数*/ puts("二つの整数入力:"); printf("整数A:"); scanf("%d",&na); printf("整数B:"); scanf("%d",&nb); printf("平均は%fです¥n", (na+nb)/2.0); return(0); } 二つの整数入力 整数A: 40 整数B: 45 平均は42.50000です 整数と実数の計算 → 実数で計算 整数 / 実数 で計算 ※ (na+nb) / 2 とすると どうなるか? 各自確認.

(11)

List

2-10:

#include <stdio.h> int main(void){ int na, nb; /*整数*/ puts("二つの整数入力:"); printf("整数A:"); scanf("%d",&na); printf("整数B:"); scanf("%d",&nb);

printf("平均は%fです¥n", (double)(na+nb)/2); return(0); } 二つの整数入力 整数A: 40 整数B: 45 平均は42.50000です (double) ・・キャスト演算子 一時的に整数を実数と みなして,計算する キャスト演算子 (double) 一時的に整数を実数扱いする

(12)

List

2-11:

#include <stdio.h> int main(void){ int na, nb, nc; /*整数*/ int sum; /*合計値用変数*/ double ave; /*平均値用変数*/ puts("三つの整数を入力");

printf("整数A:"); scanf("%d", &na); printf("整数B:"); scanf("%d", &nb); printf("整数C:"); scanf("%d", &nc); sum = na + nb + nc;

ave = (double) sum / 3;

printf("それらの合計は%5d ¥n", sum ); printf("それらの合計は%5.1f ¥n", ave ); return(0); } 三つの整数入力 整数A: 87 整数B: 45 整数C: 59 それらの合計は 191 それらの平均は 63.7 キャスト演算子 (double) 一時的に整数を実数扱いする 整数型(int型)変数sumを 一時的に実数型(double型)にして計算. ※ (double)を書かないで ave = sum / 3; とすると結果はどうなるか?

(13)
(14)

□問題3-1. キーボードから2つの整数値を読込み,その商と剰余(余り) を表示するプログラムを作成しなさい. (実行結果例) 整数値を2つ入力 整数A:47 整数B:7 商 :6 余り:5 ( 部分はキーボード入力) ① キーボードから2つの整数値を読み込む ② 商と剰余を計算・・・ / と % ③ 結果を実行結果例のように表示 ・整数値2つ → int型変数2つ int na, nb; ・キーボード読込み → scanf scanf("%d", &na ); scanf("%d", &nb ); ・実行結果例のように printf("整数値を2つ入力¥n"); printf("整数A:"); scanf("%d", &na ); printf("整数B:"); scanf("%d", &nb ); ・計算 sho = na / nb; amari = na % nb; ・結果用の変数の宣言を忘れない! int sho, amari;

・結果を実行結果例のように表示 printf("商 :%d¥n", sho ); printf("余り:%d¥n", amari );

(15)

□問題3-1. キーボードから2つの整数値を読込み,その商と剰余(余り) を表示するプログラムを作成しなさい. (実行結果例) 整数値を2つ入力 整数A:47 整数B:7 商 :6 余り:5 ( 部分はキーボード入力) ① キーボードから2つの整数値を読み込む ② 商と剰余を計算・・・ / と % ③ 結果を実行結果例のように表示 // 問題3-1 // 学籍番号:0922XXX // 氏名 :○○△△ #include <stdio.h> int main(void){

int na, nb, sho, amari;

printf("整数値を2つ入力¥n");

printf("整数A:"); scanf("%d", &na ); printf("整数B:"); scanf("%d", &nb );

sho = na / nb; amari = na % nb; printf("商 :%d¥n", sho ); printf("余り:%d¥n", amari ); return(0); }

(16)

① キーボードから2つの実数値(double型)を読み込む ② 平均値を計算 → 2つを足して2で割る ③ 結果を実行結果例のように表示 #include <stdio.h> int main(void){ double x1, x2, avg; printf("2つの値の平均を求めます¥n"); printf("実数1 = "); scanf("%lf", &x1 ); printf("実数2 = "); scanf("%lf", &x2 ); avg = ( x1 + x2 )/2; printf("2つの値の平均値は%fです¥n", avg ); return(0); } □問題3-3. キーボードから2つの実数値を読込み,その平均値を表示す るプログラムを作成しなさい. (実行結果例) 2つの値の平均を求めます 実数1 = 1.6 実数2 = 3.8 2つの値の平均値は 2.700000 です

(17)

復習:

printf:画面への表示

printf(

"

こんにちは.私は臼杵です.¥n

"

);

この部分( " と " で挟まれた部分)が画面に表示される こんにちは.私は臼杵です.

int

a;

a = 10;

printf(

"

aの値 =

%d

です¥n

", a

);

%d → " "の後に続く,整数値を表示 aの値は10です

(18)

復習:

printf:画面への表示

int

a, b, c;

a = 10;

b = 30;

c = a + b;

printf("

%d

+

%d

=

%d

です¥n"

, a, b, c

);

10 + 20 = 10です

(19)

復習:

scanf:キーボード読込み

int a; printf("整数を入力:"); scanf("%d", &a ); printf("a = %d¥n", a ); 整数を入力:20 a = 20

scanf("%d",

&

a ); → キーボードから

入力された整数を

変数

aに入れる

(20)

printf:表示 scanf:読込み

printf("整数を入力:");

scanf("%d", &x);

printf("整数を入力:", &x );

×

scanf("整数を入力:", &x);

×

復習

(21)

復習

キーボードから2つの整数を読込んで,そ の和を画面に表示するプログラムを作成 しなさい 2つの整数を入力 整数A:100 整数B:40 和は140です // 演習(2) 問題10 // 学籍番号 0922150 // 名前 ○○ △△ #include <stdio.h> int main(void){ int a, b; printf("2つの整数を入力¥n"); printf("整数A:"); scanf("%d", &a ); printf("整数B:"); scanf("%d", &b ); /*計算と表示*/ printf("和は%dです¥n", a+b); return(0); }

参照

関連したドキュメント

READ UNCOMMITTED 発生する 発生する 発生する 発生する 指定してもREAD COMMITEDで動作 READ COMMITTED 発生しない 発生する 発生する 発生する デフォルト.

参考資料ー経済関係機関一覧(⑤各項目に関する機関,組織,企業(2/7)) ⑤各項目に関する機関,組織,企業 組織名 概要・関係項目 URL

System Organ Class 器官別大分類 High Level Group Term 高位グループ語 High Level Term 高位語. Preferred

国の5カ年計画である「第11次交通安全基本計画」の目標値は、令和7年までに死者数を2千人以下、重傷者数を2万2千人

入札説明書等の電子的提供 国土交通省においては、CALS/EC の導入により、公共事業の効率的な執行を通じてコスト縮減、品

しかし,物質報酬群と言語報酬群に分けてみると,言語報酬群については,言語報酬を与

ダウンロードしたファイルを 解凍して自動作成ツール (StartPro2018.exe) を起動します。.

NISSEI RED EXHIBITION in Nagano2022”