[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 07/02 09:17 / Filesize : 357 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

C/C++の宿題を片付けます 103代目



1 名前:デフォルトの名無しさん mailto:sage [2008/01/14(月) 22:55:25 ]
あなたが解けない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++の宿題を片付けます 102代目
pc11.2ch.net/test/read.cgi/tech/1197132472/

985 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 22:15:05 ]
すいません、詰まっています。教えてください。
「第6回 万年カレンダー(2)
キーボードから年と月を入力し、その月のカレンダーを表示する。 」

#include <stdio.h>
int is_bissextile(int year)
{
/*
閏年かどうか判定する関数
閏年なら1,そうでなければ0を返す
*/

int bis;

if((year % 400) == 0 || ((year % 4) == 0 && (year % 100) != 0)){
bis = 1;
}
else {
bis = 0;
}

/* 下のような書き方も可能
bis = ( year % 400 == 0 || (year % 4 == 0 && year % 100 != 0));
*/
1日の曜日を計算する)

986 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 22:16:35 ]
2008年2月のカレンダーを表示する
2月1日が金曜日であることがわかっているものとする
(課題では,前回のプログラムを使って1日の曜日を計算する)
*/
int year = 2008;
int month = 2;
int first_dow = 5; /* 1日は金曜日 */
int i;

int days[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};

if(is_bissextile(year)) { /* 閏年なら,2月を29日までにする */
days[1] = 29;
}

printf(" %d年%2d月\n", year, month);
printf("日 月 火 水 木 金 土\n");

987 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 22:26:58 ]
for(i=0; i<first_dow; i++){
printf(" "); /* 最初の曜日の,1日の前の空白 */
}
for(i=1; i<days[month-1]+1; i++){
printf("%2d ", i); /* 数字二桁と,二つの空白 */
if((first_dow + i) % 7 == 0){
printf("\n"); /* 土曜日になったら,改行 */
}
}
/*
最終日が土曜日以外だったら,最後に改行を入れる
土曜日の場合は,既に入っているので入れない
*/
if((first_dow + i)%7!=1) printf("\n");
}

988 名前:デフォルトの名無しさん mailto:sage [2008/02/06(水) 22:52:24 ]
>>985-987
わかりづれーなww
>>985>>986の間に

return bis;
}
int main(void){

を追加すればいいだけじゃないのか?

989 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 10:56:35 ]
[1] 授業単元: プログラミング
[2] 問題文(含コード&リンク):課題1:キーボードから文字列を入力し、その内容をファイルに保存するプログラムを作成しなさい。
なお、文字列の最大長は256バイトとし、プログラムの終了条件は、文字データの入力がないときとする。
課題2:課題1で作成されたファイルを読み込み、画面に表示するプログラムを作成しなさい。
[3] 環境
 [3.1] OS: (WindowsXP)
 [3.2] Visual studio 2005
 [3.3] 言語:C
[4] 期限: 2月14日

課題が2つもありますがどうかよろしくお願いします

990 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 10:59:20 ]
連続投稿すみません。課題1の最後の分に「すなわち、次の入力とする「C:\>Enter」」を追加します。

991 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 11:41:11 ]
>>988
ごめんなさいちょっとミスしましたw
えっと、この日本語を全てプログラムにしないとダメなのですが、分からないんです

jbbs.livedoor.jp/bbs/read.cgi/game/33978/1163833286/313n-

問題こちらです、よろしくお願いします。

992 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 11:42:11 ]
>>991
特定したwwwwww

993 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 11:43:37 ]
え、ちょ、何がですか?怖いです



994 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 12:00:44 ]
>>989
初心者ですが作ってみました。

//課題1
#include <stdio.h>
#include <string.h>

#define CHARMAX 256

int main(void)
{
int i=0;
char str[CHARMAX];
FILE *fp=fopen("data.txt","w");

if(!fp) return 1;

do{
fgets(str, CHARMAX, stdin);
i += int(strlen(str));
if(i > CHARMAX){
printf("入力文字数オーバー");
break;
}
fputs(str, fp);
}while(str[0]!='\n');
return 0;
}

995 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 12:01:04 ]
//課題2
#include <stdio.h>

#define CHARMAX 256

int main(void)
{
char str[256];
FILE *fp=fopen("data.txt", "r");
if(!fp) return 1;

while(!feof(fp)){
fgets(str, CHARMAX, fp);
printf("%s", str);
}
return 0;
}

996 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 13:14:20 ]
>>982
こんなんでいいんでしょうか。
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6014.txt

997 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 13:34:05 ]
>>994
問題の解釈違いかも知れんが、入力制限はトータルではなくて毎回個別でいいんじゃないか?
それなら、fgets()任せで済むことだし。

998 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 13:39:15 ]
>>997
ああ、確かに文字列一個当たりの最大値っぽいですね。
指摘ありがとうございます。

//課題1
#include <stdio.h>

#define CHARMAX 256

int main(void)
{
char str[CHARMAX];
FILE *fp=fopen("data.txt","w");

if(!fp) return 1;

do{
fgets(str, CHARMAX, stdin);
fputs(str, fp);
}while(str[0]!='\n');
return 0;
}

課題2は同じで大丈夫ぽいかな。

999 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 13:47:22 ]


1000 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 13:48:02 ]


1001 名前:1001 [Over 1000 Thread]
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<357KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef