2001 年度コンピュータ基礎及演習 I テスト問題

注意

全ての問題を解答しなくても合格します。 時間配分に十分に気を付けて、解ける問題から順に解答してください。

オペレーティングシステム

マイクロソフトウィンドウズなどのオペレーティングシステムは、様々な機能 を提供している。OS の提供する機能に関して、次の問いに答えなさい。

  1. カットバッファとはなにか?
  2. カットバッファの使い方を、例を挙げて説明しなさい。
  3. ファイルとはなにか説明しなさい。
  4. 標準入力、標準出力とはなにか説明しなさい。

マイクロソフト製品

  1. マイクロソフト社のワードやエクセルが作る標準のファイル(.doc や .xls)を電子メールの添付ファイルとして送るのは問題がある場合がある。 どのような場合問題があり、またどのような場合に問題がないか説明しなさい。
  2. エクセルで作成した情報を添付ファイルを使用せずに電子メールで送る 手順を説明しなさい。

プログラミング1

次のプログラムを読み、各問いに答えなさい。

#include <stdio.h>
main(){
  int a=5;
  float b=2718E-3;
  char c='c';
  char d[]="abcdef";

  printf("%a %b\n%c\n%d\n",a,b,c,d);
}  

問い

  1. 上記のプログラムは誤っている。誤りを指摘し、誤っている行を書き直 しなさい。(特にカンマとピリオドなど、各記号の違いが明確になるように注 意しなさい)
  2. 直したプログラムを実行するとどのような出力がでるか?

プログラミング2

次のプログラムを読み、各問いに答えなさい。

#include <stdio.h>
main()
{
  float a=3.0;
  float b=6.0;
  float x;

  printf("%fx + %f = 0",a,b);
  if(a!=0){
    x=b/a;
    printf("解は\%f。\n ",x);
  }else{
    if(b!=0){
      printf("(A)");
    }else{
      printf("任意の x は式を満す。\n");
    }
  }
}

問い

  1. このプログラムはなにをするプログラムか説明しなさい。
  2. 上の(A)にはどのような文字が入るか答えなさい。
  3. このプログラムは一箇所間違っている。その間違いを指摘し、間違いを 直しなさい。
  4. (A)を正しく設定し、誤りを直したプログラムに対して、次の問いに答 えなさい。
    1. このプログラムを実行するとなにを出力するか?
    2. 次のように a,b が設定されているとき、なにが出力されるか?
      1.   float a=2.0;
          float b=1.0;
        
      2.   float a=0.0;
          float b=1.0;
        
      3.   float a=0.0;
          float b=0.0;
        

プログラミング3

次のプログラムを読み、各問いに答えなさい。

#define BUFSIZE 512
#include <stdio.h>

main()
{
  char c,a[BUFSIZE];
  int i,j;

  for(i=0;i<5;i++){
    j=0;
    while((c=getchar())!='\n'){
      a[j]=c;
      j++;
    }
    a[j]='\0';
    printf("%s\n",a);
  }
}

問い

  1. このプログラムはなにを行うものか説明しなさい。
  2. このプログラムは重大な欠陥がいくつかある。どのような欠陥か説明しなさい。
  3. この欠陥を取り除くにはプログラムの流れを変更しなければならない。 どのように変えればよいか日本語で説明しなさい。 (日本語で説明できない場合は、 C 言語でプログラムを書き直しても良い)