次の5つのスポーツの名前を英語に直しなさい
/* 次の5つのスポーツの名前を英語に直しなさい */ #include <stdio.h> #include <string.h> #define MAX 5 int main(void) { char mondai[][14] = {"野球","サッカー","テニス","ゴルフ","陸上"}; char kotae[][30] = {"baseball","football","tennis","golf","land"}; char kaitou[256]; /*解答入力用*/ int points = 0; /*得点計算用*/ int i; printf("次の5つのスポーツの名前を英語に直しなさい\n\n"); for(i=0; i<MAX; i++){ /*出題*/ printf("\t問題%2d: %s ? ", i+1, mondai[i]); scanf("%s", kaitou); /*判定*/ if( !strcmp(kaitou,kotae[i]) ){ printf("\t〇\n"); points ++; } else{ printf("\t×\n"); } } /*成績*/ if(points == 0){ printf("\n修業が足らん!!!\n"); } else{ printf("\n%d問中、%d問正解!\n", MAX, points); } return 0; }
実行イメージ
次の5つのスポーツの名前を英語に直しなさい
問題 1: 野球 ? baseball
〇
問題 2: サッカー ? soccor
×
問題 3: テニス ? tennis
〇
問題 4: ゴルフ ? golfer
×
問題 5: 陸上 ? swimming
×
5問中、2問正解!
モンスターを倒すゲーム風のプログラム
/*ngame.c モンスターを倒すゲーム風のプログラム*/ #include <stdio.h> #include <stdlib.h> #include <time.h> int p=30; int m=40; void kougeki(void) { /*ここにプログラムを記述*/ int r; srand((unsigned)time(NULL)); r = rand()%11; system("cls"); printf("プレイヤー体力:%d\nモンスター体力:%d\n\n",p,m); printf("攻撃します\n"); printf("%dダメージを与えた\n",r); printf("%dダメージを喰らった\n\n",r/2); m-=r; p-=r/2; } int main(void) { int s; printf("モンスターが現れた\n"); while(1){ if(p==0){ system("cls"); printf("プレイヤー体力:%d\nモンスター体力:%d\n\n",p,m); printf("力尽きた・・・\n"); break; } else if(m==0){ system("cls"); printf("プレイヤー体力:%d\nモンスター体力:%d\n\n",p,m); printf("モンスター討伐成功!\n"); break; } printf("どうする?\n"); printf("1.戦う\n2.逃げる\n"); scanf("%d",&s); switch(s){ case 1: kougeki(); break; case 2: if(m<p){/*プレイヤーの残りの体力が、モンスターより多ければ逃げれる*/ printf("うまく逃げることに成功した!\n"); goto END; } else{ printf("逃げられない!\n"); continue; } } } END: return 0; }
実行イメージ
プレイヤー体力:30
モンスター体力:40
モンスター体力:40
攻撃します
3ダメージを与えた
1ダメージを喰らった
どうする?
1.戦う
2.逃げる
あなたが勇者として戦う力を手に入れたとしよう。
#include <stdio.h> void showNumber(int); int main(void) { int i, n; char moji[256]; printf("もし、\n"); getchar(); rewind(stdin); printf("あなたが勇者として戦う力を手に入れたとしよう。\n"); getchar(); rewind(stdin); printf("あなたに味方はいない。\n"); getchar(); rewind(stdin); printf("敵は人外に化け物、魑魅魍魎。\n"); getchar(); rewind(stdin); printf("あなた一人で世界を守らなくてはならない。"); getchar(); rewind(stdin); printf("王「勇者よ、戦ってくれるか?」"); getchar(); rewind(stdin); printf("1.はい\n"); printf("2.YES\n"); printf("3.いいえ\n"); printf("4.だが断る\n"); scanf("%d",&n); rewind(stdin); showNumber(n); return 0; } void showNumber(int n) { printf("\n"); switch(n){ case 1: printf("王「そうかそうか、戦ってくれるのか。」\n"); getchar(); rewind(stdin); printf("王「ならば戦うための武具をあたえよう。」\n"); printf(" 俺たちの戦いはこれからだっ!!!系END\n"); break; case 2: printf("王「何が、「YES」だ!貴様ふざけているのか」"); getchar(); rewind(stdin); printf("王「者ども、この不敬なものを拘束しろ!!」\n"); printf(" この後、なんやかんやあって、お尋ねものになりながらも敵と戦いに赴く系END\n"); break; case 3: printf("王「なっ、なんじゃと。世界の為に戦ってくれないのか…」\n"); getchar(); rewind(stdin); printf("王「…もうこの国は、世界はおしまいだ……」\n"); printf(" そして、世界は滅ぼされるのであった BAD END\n"); break; case 4: printf("王「!!?」\n あなた「この私の最も好きな事の一つは…」"); getchar(); rewind(stdin); printf("あなた「自分は偉いと思っている奴に NOと断ってやる事だ!!」\n"); printf(" 一時のテンションで言った結果、この後ひどい目に… BAD END\n"); break; default: printf("残念ながら、それは選択肢に含まれていない。\n"); printf("GAME OVER"); } }
実行イメージ
もし、
あなたが勇者として戦う力を手に入れたとしよう。
あなたに味方はいない。
敵は人外に化け物、魑魅魍魎。
あなた一人で世界を守らなくてはならない。
王「勇者よ、戦ってくれるか?」
1.はい
2.YES
3.いいえ
4.だが断る
1
王「そうかそうか、戦ってくれるのか。」
:
神出鬼没の超人
#include <stdio.h> #include <stdlib.h> #include <string.h> #define FILE_NAME "data2.txt" int main(void) { struct _monster{ char name[256]; int hp; int mp; }; struct _monster monster[4]; int i, length; FILE *fp; /* データファイルを開く */ fp = fopen(FILE_NAME, "r"); if(fp == NULL){ printf("ファイル<%s>がオープン出来ません\n", FILE_NAME); exit(1); } /* モンスターデータ読み取り */ i = 0; while(fscanf(fp, "%s\n", monster[i].name) != EOF){ fscanf(fp, "HP=%d\n", &monster[i].hp); fscanf(fp, "MP=%d\n", &monster[i].mp); i++; } fclose(fp); length = i; printf("%d体のモンスターデータを確認.....キーを押して下さい\n\n", length); getchar(); /* モンスターデータ表示 */ for(i=0; i<length; i++){ printf("No.%2d:\n", i+1); printf("\t%s\n", monster[i].name); printf("\tHP/%04d MP/%04d\n", monster[i].hp, monster[i].mp); } return 0; }
必要なデータファイル
data2.txt
神出鬼没の超人パンダマン
願いから生まれたザ・ペンシルマシーン
芸人バナナマン
願いから生まれたザ・ペンシルマシーン
芸人バナナマン
実行イメージ
3体のモンスターデータを確認…..キーを押して下さい
No. 1:
神出鬼没の超人パンダマン
HP/1702920 MP/-1073741511
No. 2:
願いから生まれたザ・ペンシルマシーン
HP/7853384 MP/0128
No. 3:
芸人バナナマン
HP/1703568 MP/2003939381
だ~れだ!
#include <stdio.h> int main(void) { int ma; int su; printf(" ■■■■■ \n"); printf(" ■■■■■■■■■ \n"); printf(" □□□■■□■ \n"); printf(" □■□■■■□■■■ \n"); printf(" □■□□■■■□■■■ \n"); printf(" □□■■■■□□□□ \n"); printf(" ■■■■■■■ \n"); printf(" □□■□□□ \n"); printf(" □□□■□□■□□□ \n"); printf(" □□□□■■■■□□□□ \n"); printf(" ■■□■□■■□■□■■ \n"); printf(" ■■■■■■■■■■■■ \n"); printf(" ■■■■■■■■■■■■ \n"); printf(" ■■■ ■■■ \n"); printf(" □□□ □□□ \n"); printf(" □□□□ □□□□ \n"); getchar(); rewind(stdin); printf("だ~れだ!\n"); printf("入力してね 1=ルイージ 2=マリオ\n"); scanf("%d",&su); if(su==1){ printf("正解!!次いこか\n"); } else{ printf("大正解!次いこか\n"); } getchar(); rewind(stdin); printf(" ■ \n"); printf(" ■ \n"); printf(" ■ \n"); printf(" ■ \n"); printf(" ■■■ \n"); printf(" ■■■■■ \n"); printf(" ■■■■■■■■■ \n"); printf(" ■■■■■■■■■■■ \n"); printf(" ■■■■□■■■□■■■■ \n"); printf(" ■■■■□■□■□■□■■■■ \n"); printf(" ■■■■□■□■□■□■■■■ \n"); printf(" ■■■□■□■■■□■□■■■ \n"); printf(" ■■■□□■■■■■□□■■■ \n"); printf(" ■■■■□□□□□■■■■ \n"); printf(" ■■■■■■■■■■■ \n"); getchar(); rewind(stdin); printf("だ~れだ!\n"); printf("入力してね 1=スライム 2=うんち\n"); scanf("%d",&su); if(su==1){ printf("大正解!!おわり!\n"); } else{ printf("正解!おわり!\n"); } return 0; }
実行イメージ
九九の計算
/* kuku.c 九九の計算 */ #include <stdio.h> void kuku(int *suji) { int j, ans; for(j=1; j<=9; j++){ ans = *suji * j; printf("%d * %d = %d\n", *suji, j, ans); } }; int main(void) { int num; printf("数字を入力してください(1~9):"); scanf("%d", &num); kuku(&num); return 0; }
実行イメージ
数字を入力してください(1~9):3
3 * 1 = 3
3 * 2 = 6
3 * 3 = 9
3 * 4 = 12
3 * 5 = 15
3 * 6 = 18
3 * 7 = 21
3 * 8 = 24
3 * 9 = 27
3 * 1 = 3
3 * 2 = 6
3 * 3 = 9
3 * 4 = 12
3 * 5 = 15
3 * 6 = 18
3 * 7 = 21
3 * 8 = 24
3 * 9 = 27
時間を計測
/* stopwatch.c 時間を計測 */ #include <stdio.h> #include <time.h> int main(void) { time_t timer; struct tm *local; int hour, minute, second; int _hour, _minute, _second; int h, m, s; printf("タイムを計測します(ENTERキーを押してください)\n"); getchar(); timer = time(NULL); local = localtime(&timer); hour = local->tm_hour; minute = local->tm_min; second = local->tm_sec; printf("計測中…(ENTERキーで終了)\n"); getchar(); timer = time(NULL); local = localtime(&timer); _hour = local->tm_hour; _minute = local->tm_min; _second = local->tm_sec; if(second > _second){ second = 60 - second; _second += second; _minute -= 1; } else _second -= second; if(minute > _minute){ minute = 60 - minute; _minute += minute; _hour -= 1; } else _minute -= minute; if(hour > _hour){ hour = 24 - hour; _hour += hour; } else _hour -= hour; printf(" %d時間 %d分 %d秒", _hour, _minute, _second); return 0; }
実行イメージ
タイムを計測します(ENTERキーを押してください)
計測中…(ENTERキーで終了)
0時間 0分 7秒
コメント