ここから本文です

独自“プログラミング言語C”の作成 条件通りにプログラムを作るには、どうすればよ...

c3w********さん

2018/6/2421:15:11

独自“プログラミング言語C”の作成
条件通りにプログラムを作るには、どうすればよいのでしょうか?

#defineで置き換えてしまえば,例えばC言語のお約束である,文末に’;’をつけるというものも,変更が可能である.printf関数も別の識別子に置き換えられるわけだから,printfの’f’って何だという疑問も「表面上」わからなくなる.※ #define print printf とか?
よって,#defineを駆使してc言語の(表現上の)独自ルールを作り,その定義部分をex.hとしてまとめ,そのルールに従って,適当なプログラム( ex.c )を作りなさい.

皆目見当がつきませんでした。

閲覧数:
90
回答数:
2
お礼:
500枚

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

tre********さん

2018/6/2422:43:37

/*

ちょっと日本語化してみる

-----実行結果-----
あなたの名前を入力して下さい:Yamada Taro
あなたの年齢を入力して下さい:16
あなたの名前はYamada Taroです。
あなたの年齢は16です。
あなたは未成年です。
あと4年で成年です。

*/

#include <stdio.h>
//#include "ex.h"
//-----ex.hの中身 ここから-----
#define プログラムスタート int main
#define 文字 char
#define 整数 int
#define 実数 double

#define もし if
#define その他 else
#define 戻る return

#define 大きい >
#define 小さい <
#define 以上 >=
#define 以下 <=

#define は =
#define 引く -

#define 整数入力(a) scanf("%d",&a)
#define 整数表示(a) printf("%d",a)
#define 文字列入力(str) scanf("%[^\n]", str)
#define 単語入力(str) scanf("%s", str)
#define 文字列表示(str) printf("%s", str)
//-----ex.hの中身 ここまで-----

プログラムスタート(void){
文字 name[100];
整数 age;

文字列表示("あなたの名前を入力して下さい:");
文字列入力(name);

文字列表示("あなたの年齢を入力して下さい:");
整数入力(age);

文字列表示("あなたの名前は");
文字列表示(name);
文字列表示("です。\n");

文字列表示("あなたの年齢は");
整数表示(age);
文字列表示("です。\n");

もし(age 以上 20) {
文字列表示("あなたは成年です。\n");
}
その他{
文字列表示("あなたは未成年です。\n");
文字列表示("あと"); 整数表示(20 引く age); 文字列表示("年で成年です。\n");
}

戻る 0;
}

  • 質問者

    c3w********さん

    2018/6/2621:08:57

    2行目 return type defaults to ‘int’
    3、4行目 unknown type name
    5、6、8、13、15行目 implicit declaration of function
    15行目 expected ‘)’ before
    15行目 expected ‘;’ before ‘{’ token
    というエラーメッセージが出たのですが、どうすればよいのでしょうか?

  • その他の返信を表示

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

質問した人からのコメント

2018/6/26 23:36:53

細やかな回答、本当にありがとうございました!!

ベストアンサー以外の回答

1〜1件/1件中

プロフィール画像

カテゴリマスター

nor********さん

2018/6/2421:32:43

何かの課題ですか?
まともなプログラミングの科目なら絶対になるべきではない内容だと思いますが。

http://www.pro.or.jp/~fuji/mybooks/cdiag/cdiag.8.2.html

プログラミング言語としてLispなどはかなり高度なマクロ機能を持ちますが、下手に使うとマクロを定義した人しか解読できなくなります。
Rubyという言語を開発した「まつもとゆきひろ」氏もLispについて魅力を感じながらマクロ機能は取り入れないとしたのも同様の理由です。

> printfの’f’って何だという疑問も「表面上」わからなくなる

Format(書式)付きのprintと説明も出来ない、説明しても理解出来ないなら、プログラミング自体厳しいように思えますけど。(putsと「print」の違いが分からず混乱しか生まないでしょう)

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる