Font Size:

Cプログラミング Edit

ここでは、Linux での C言語のプログラミング環境について学びます。
コンパイル作業の詳細な意味については、次回の講義で説明します。
今回は、一連の作業を通してCプログラミングの大まかな流れを把握して下さい。

1.テキストエディタ Edit

前期の Windows 環境と同様に、テキストエディタを用いてC言語のソースファイルを作成します。
デスクトップ上部の「アプリケーション」以下から、様々なテキストエディタが起動できます。
自分にあったテキストエディタを利用して下さい。ここでは、Emacs というエディタを利用して説明します。
Emacsの基本的な操作は他のテキストエディタと同様ですので、ここで操作方法の詳細については触れません。
Emacs の便利な機能を Cプログラミングでの便利な機能~にまとめてありますので、興味のある人はご覧下さい。

  • GUI で *.c (ファイルの拡張子が .c )というC言語のソースファイルをダブルクリックすると、
    自動的にエディタでの編集画面になります。このとき起動するエディタは gedit が初期設定されています。
    好みのエディタが立ち上がるようにするためには各自で GUIでの起動エディタの設定が必要です。

演習課題 4-1 Edit

  1. カレントディレクトリを Kiso2 ディレクトリへ移動しておきましょう。
    cd ~/Kiso2
  2. テキストエディタを起動して、このページの最後にある prime.c を入力しなさい。
    • Emacs を起動する場合は、ターミナル(端末/CUI)画面で
      emacs
      あるいは、
      emacs &
      と入力します。編集するファイルの名前が決まっていれば、
      emacs prime.c &
      のようにします。この場合、Emacs の起動時にファイル prime.c が編集するファイルとして開かれます。
    • GUI からは、デスクトップ上部のメニューより、「アプリケーション」->「アクセサリ」-> 「Emacs 22 (X11)」を選択してください。
       
    • 日本語入力の切り替えは、キーボード左上の半角/全角キー、あるいはCtrl-Space(コントロールキーを押しながらスペース)です。
      デスクトップ上部のメニュー右側にある「キーボードアイコン」からも切り替えできます。
      日本語変換モードでは次のような変換操作ができます。
      • スペースキーで変換
      • カーソルキーで文節移動
      • シフト+カーソルキーで文節伸張
  3. プログラムソースを入力し終わったら、prime.c という名前でファイルを保存しなさい。
    • Emacs では、上部のフロッピーディスク + ペン のアイコンをクリックします。
      最下段にファイル名を入力するプロンプト(入力を促すカーソル)が表示されるので、ファイル名(prime.c)を入力してリターンキーを押します。
      ファイル名を指定して起動した場合は、フロッピーディスク(ペンなし) のアイコンをクリックすれば指定ファイル名で保存できます。

2.コンパイルと実行 Edit

コンパイルとは、プログラムのソースファイルを計算機が実行可能なオブジェクト(実行)ファイルに変換する作業です。
前期の計算機基礎実習Iでは、このコンパイルの作業を GUI(ドラッグ&ドロップ)によって実行していました。
ここでは、Cプログラムのコンパイルをターミナル上で行います。
コンパイルは cc (C Compiler) コマンドによって行います。

演習課題 4-2-1 Edit

  1. 演習課題 4-1 で作成した prime.c を以下のコマンドでコンパイルしなさい。
    cc prime.c
    • 上記コマンドを実行したカレントディレクトリに prime.c が置かれていることを確認しなさい。
    • エラーが表示された場合は、テキストエディタで入力したファイルを修正しなさい。
      cc のエラーメッセージの簡単な解説が教科書の末尾にあります。
  2. ls を実行して、a.out というオブジェクト(実行)ファイルが新たに作成されたことを確認しなさい。
  3. 以下のコマンドで作成された a.out を実行し、動作を確認しなさい。
    ./a.out
    • a.out の前の ./ は、カレントディレクトリのファイルであることを明示的に示しています。
      「ここのディレクトリの(./) a.out を実行しなさい」、という指示です。
  4. 以下のコマンドを実行したときの動作を確認しなさい。
    a.out

演習課題 4-2-2 Edit

  1. 演習課題 4-1 で作成した prime.c を以下のコマンドでコンパイルしなさい。
    cc prime.c -o prime
    • -o ファイル名 を挿入すると、コンパイルして作成されるオブジェクト(実行)ファイル名を指定することができます。
      演習課題 4-2-1 のa.out はオブジェクトファイル名を指定しない場合のデフォルトのファイル名です。
  2. ls を実行して、prime というオブジェクト(実行)ファイルが新たに作成されたことを確認しなさい。
  3. 以下のコマンドで作成された prime を実行し、動作を確認しなさい。
    ./prime

3.課題の提出 Edit

トップページを見てください。

prime.c Edit

/*********************/
/* 素数を出力 prime */
/*********************/
#include <stdio.h>
#define N 1000
 
main()
{
   int i, j, kosu = 1, n = N;
   int a[N +1];
 
// 2と3以上の奇数をを素数と仮定
   a[1] = 0;
   a[2] = 1;
   for (i = 3; i <= n; i+=2) a[i] = 1;
 
// 奇数を順に見て
   for (i = 3; i <= n; i+=2) {
   // 素数ならその整数倍を素数から省く
      if (a[i] == 1) 
         for (j = i+i; j <= n; j += i)
            a[j] = 0;
   }

// 素数を出力 
   printf("   2 "); 
   for (i = 3; i <= n; i+=2) { // 奇数を見る
      if (a[i] == 1) { // 素数なら出力
         printf("%4d ", i);
         kosu++;
         if ((kosu % 10) == 0) printf("\n");
      }
   }
   printf("\n");
}


リロード   新規 編集 凍結 差分 添付 複製 名前変更   ホーム 一覧 単語検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS
Last-modified: 2015-09-28 (月) 17:13:47 (1426d)