- 1 名前:デフォルトの名無しさん [2008/10/01(水) 07:28:51 BE:151474728-PLT(18888)]
- あなたが解けないC言語/C++言語の宿題を片付けもらうスレッドです。気に入らない質問やその他や発言はスルーの方向で。
【質問者へ】 回答者の便宜のため、質問の際は以下を行うことを推奨します。 ・質問は【質問テンプレ】を利用してください。 ・問題文は、出題されたまま全文を書いてください。 ・問題文やコードをリンクするときは、一言内容にについて説明をつけましょう。 ・計算問題は数式をあげ、どのような計算をするのか詳しく説明してください。 ・エラーは、その詳細と発生した行を書きましょう。エラーメッセージはコピペしてください。 ・後から問題に付け足しするのはコラー!!です。付け足しは作業を無駄にしがちです。 ・なりすましを防ぐため、トリップを使ってください。名前欄に、「#」に続けて任意の文字列を入力して投稿すると、その文字列を知らない他人に騙られることを防ぐことができます。 【質問テンプレ】 [1] 授業単元: [2] 問題文(含コード&リンク): [3] 環境 [3.1] OS: (Windows/Linux/等々) [3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等) [3.3] 言語: (C/C++/どちらでも可 のいずれか) [4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか) [5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々) 【アップローダー==ラウンジ】(質問が長い時はココ使うと便利 回答者もコードが長ければここに) kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm 【C 関数検索 man on WWW】 www.linux.or.jp/JM/index.html 【過去ログ検索】 chomework.sakura.ne.jp/ 【wiki】 www23.atwiki.jp/homework/ 前スレ C/C++の宿題を片付けます 115代目 pc11.2ch.net/test/read.cgi/tech/1217741118/
- 35 名前:デフォルトの名無しさん mailto:age [2008/10/04(土) 14:34:48 ]
- >>29
#include <stdlib.h> #include <stdio.h> #include <string.h> int aki; char zaseki[5][5]; void chomp(char *buf) { int len = strlen(buf); if (len > 0 && buf[len - 1] == '\n') buf[len - 1] = '\0'; } void yoyaku(void) { int i, j, n; char buf[128]; printf("予約状況:\n"); printf(" "); for(j = 0; j < 5; j++) printf(" %2d", j+1); printf("\n"); for(i = 0; i < 5; i++) { printf(" %2d", i+1); for(j = 0; j < 5; j++) if(zaseki[i][j]) printf(" x"); else printf(" ."); printf("\n"); }
- 36 名前:デフォルトの名無しさん mailto:age [2008/10/04(土) 14:35:37 ]
- printf("x: 予約済み .: 空き\n\n");
if (!aki) { printf("空席がありません。\n"); return; } do { printf("予約する座席数: "); scanf("%d", &n); if (aki < n) { printf("空席が足りません。\n"); continue; } } while(0); if(n <= 0) return; while(n--) { rewind(stdin); printf("予約を希望する座席(行-列): "); scanf("%d-%d", &i, &j); if(zaseki[i - 1][j - 1] == 1) { printf("座席「%d-%d」は予約ずみです。\n", i, j); n++; continue; }
- 37 名前:デフォルトの名無しさん mailto:age [2008/10/04(土) 14:36:23 ]
- printf("座席「%d-%d」を予約しますか?(YES/NO): ", i, j);
rewind(stdin); fgets(buf, 128, stdin); chomp(buf); if (strcmpi(buf, "YES") == 0) { zaseki[i - 1][j - 1] = 1; printf("予約しました。\n"); } } } void cancel(void) { int i, j, n; char buf[128]; printf("予約状況:\n"); printf(" "); for(j = 0; j < 5; j++) printf(" %2d", j+1); printf("\n"); for(i = 0; i < 5; i++) { printf(" %2d", i+1); for(j = 0; j < 5; j++) if(zaseki[i][j]) printf(" x"); else printf(" ."); printf("\n"); }
- 38 名前:デフォルトの名無しさん mailto:age [2008/10/04(土) 14:37:25 ]
- printf("x: 予約済み .: 空き\n\n");
if (aki == 5 * 5) { printf("予約済みの席はありません。\n"); return; } do { printf("キャンセルする座席数: "); scanf("%d", &n); if (5*5 - aki < n) { printf("予約済みの席が足りません。\n\n"); continue; } }while(0); if(n <= 0) return; while(n--) { rewind(stdin); printf("キャンセルを希望する座席(行-列): "); scanf("%d-%d", &i, &j); if(zaseki[i - 1][j - 1] == 0) { printf("座席「%d-%d」は予約されていません。\n", i, j); n++; continue; }
- 39 名前:デフォルトの名無しさん mailto:age [2008/10/04(土) 14:38:02 ]
- printf("座席「%d-%d」をキャンセルしますか?(YES/NO): ", i, j);
rewind(stdin); fgets(buf, 128, stdin); chomp(buf); if (strcmpi(buf, "YES") == 0) { zaseki[i - 1][j - 1] = 0; printf("予約しました。\n"); } } } int main(void) { int i, j, m; aki = 5 * 5; for(i = 0; i < 5; i++) for(j = 0; j < 5; j++) { zaseki[i][j] = rand() & 1; if(zaseki[i][j]) aki--; } do { printf("\n\nメニュー(1.予約 2.キャンセル 3.終了): "); scanf("%d", &m); switch(m){ case 1: yoyaku(); break; case 2: cancel(); break; case 3: return 0; } } while(1); }
- 40 名前:デフォルトの名無しさん mailto:sage [2008/10/04(土) 14:52:43 ]
- printf("x: 予約済み .: 空き\n\n");
if (aki == 5 * 5) { printf("予約済みの席はありません。\n"); return; } do { printf("キャンセルする座席数: "); scanf("%d", &n); if (5*5 - aki < n) { printf("予約済みの席が足りません。\n\n"); continue; } }while(0); if(n <= 0) return; while(n--) { rewind(stdin); printf("キャンセルを希望する座席(行-列): "); scanf("%d-%d", &i, &j); if(zaseki[i - 1][j - 1] == 0) { printf("座席「%d-%d」は予約されていません。\n", i, j); n++; continue; }
- 41 名前:デフォルトの名無しさん mailto:age [2008/10/04(土) 14:53:42 ]
- if((fp=fopen(filename, "rb"))==NULL) return;
for(;(moji=fgetc(fp))!=EOF;prev=moji,moji_count++) if(moji=='\n') line_count++; fclose(fp); if(prev!='\n') line_count++; printf("File : %s\nCharacter count : %d\nLine count : %d\n\n", filename, moji_count, line_count); } rewind(stdin); fgets(buf, 128, stdin); chomp(buf); if (strcmpi(buf, "YES") == 0) { zaseki[i - 1][j - 1] = 1; printf("予約しました。\n"); } } } void cancel(void)
|

|