MMGamesロゴ  MMGames
Twitterシェアボタン  Facebookシェアボタン   
 English 

しんで覚えるC言語
しんで覚えるC言語

練習問題7

基本知識

問 1-1
条件判断の時には0以外の数値のことをなんと呼ぶか。


問 1-2
条件判断の時には0のことをなんと呼ぶか。


問 1-3
{}で囲むことで、複数の文をまとめることをなんと呼ぶか。

プログラム読取
次のプログラムは、何を表示するためのプログラムなのか、
処理内容や変数名から判断して答えよ。

問 2-1
#include <stdio.h>

int main(void)
{
    int value, rest;

    scanf("%d", &value);

    rest = value % 2;

    if (rest == 0) printf("E");
    if (rest == 1) printf("O");

    printf("\n");

    return 0;
}

プログラム書取

問 3-1
西暦年を入力すると、その年にオリンピックが開かれるか、
表示するプログラムを作成せよ。
可能なら、夏季と冬季の区別も表示できればなお良い。
ヒント:シドニー五輪(夏)は2000年開催であった。

※条件がややこしくなるので、
以前夏季と冬季が同じ年だった時期のことは無視する。

記述式

問 4-1
if (-1) printf("OK\n");

上記のプログラムを実行すると、OKが表示されるが、
それはなぜか簡潔に説明せよ。
基本知識(解答例)

解 1-1
真 あるいは true


解 1-2
偽 あるいは false


解 1-3
ブロック あるいは 複文

プログラム読取(解答例)

解 2-1
入力値が奇数か偶数かを表示する。

※O は odd の略、E は even の略です。
※% は余りを計算します。
※最後のprintf関数は改行するためだけにあります。
プログラム書取(解答例)

解 3-1
#include <stdio.h>

int main(void)
{
    int year;

    printf("西暦年を入力して下さい:");
    scanf("%d", &year);

    if (year % 4 == 0) printf("夏季五輪\n");
    if (year % 2 == 0 && year % 4 != 0) printf("冬季五輪\n");
    if (year % 2 != 0) printf("五輪なし\n");

    return 0;
}

※ここでは、五輪が開催される年は2で割り切れ、
さらに夏季五輪の時は4でも割り切れることを利用した。
※他の計算方法も考えられるので、計算で求めていれば正解とする。
※計算せずに、年をそのまま比較している場合は不正解とする。
問題
記述式(解答例)

解 4-1
if文では、0以外の数値はすべて真と見なすので、
たとえ負の値であっても実行するから。



本サイトについて

苦しんで覚えるC言語(苦C)は
C言語入門サイトの決定版です。
C言語の基本機能を体系立てて解説しており、
市販書籍と同等以上の完成度です。

第0部:プログラム概要編
  1. プログラムとは何か?
2章:プログラムの書き方
  1. 書き方のルール
  2. 書き方の慣習
  3. 練習問題2
3章:画面への表示
  1. 文字列の表示
  2. 改行文字
  3. 練習問題3
6章:キーボードからの入力
  1. 入力用の関数
  2. 入力の恐怖
  3. 練習問題6
9章:回数が決まっている繰り返し
  1. 繰り返しを行う文
  2. ループ動作の仕組み
  3. 練習問題9
10章:回数がわからない繰り返し
  1. 回数不明ループ
  2. 入力チェック
  3. 練習問題10
13章:複数の変数を一括して扱う
  1. 複数の変数をまとめて扱う
  2. 配列の使い方
  3. 練習問題13
20章:複数のソースファイル
  1. 最小限の分割
  2. 分割の定石
  3. 練習問題20

コメント
COMMENT

💬 コメント投稿欄を開く