【一人で】C言語課題クレクレ【できないもん】
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2006/09/04(月) 19:47:53なにか課題をください。
0002デフォルトの名無しさん
2006/09/04(月) 20:49:05質問です。Perlの配列のように、各要素が型を限定しないようなリスト構造をC言語で作りたいと思っています。
リストの構造は線形リストを使えばそんなに難しくないと思うのですが、データを保持する方法で悩んでいます。
基本的には格納するデータへのポインタをリストの要素に保持すれば良いと思うのですが、どのような手法を使うか悩んでいます。
0003デフォルトの名無しさん
2006/09/05(火) 23:04:45>kadai01.exe aaa.txt
課題02.テキストファイルを読んで行中に指定された文字が含まれていたらファイル2に書き込む
>kadai02.exe aaa.txt abc bbb.txt
課題03.指定された年月のカレンダーを表示
>kadai03.exe 2006 09
0004デフォルトの名無しさん
2006/09/14(木) 00:33:180005デフォルトの名無しさん
2006/09/14(木) 07:42:240006デフォルトの名無しさん
2006/09/14(木) 15:59:36何が分からないのかとかハッキリしていれば、其れ相応の課題が出せるんですが・・・。
何処が分かり難いとかって有りますか?
0007デフォルトの名無しさん
2006/09/14(木) 16:01:54課題がほしいなら学校行け
0008デフォルトの名無しさん
2006/09/14(木) 22:16:24確かにその意見も一理あり。
0009デフォルトの名無しさん
2006/09/15(金) 22:07:14(課題番号は>>3の続きで4から)
課題04.二つの変数の値を交換する関数void swap(int *x,int *y)
また、その関数を動作させる為の適切なmain関数も作成すること。
次に再帰処理
課題05.階乗を求める関数 unsigned long kaijyo(int n)を作成。
main関数も作成。
次にポインタ文字列
課題06.入力された文字列の複製を作るプログラムを作成。
尚、入力された文字列はポインタに格納すること。
0010デフォルトの名無しさん
2006/09/15(金) 22:11:59いまいち何の役にたつのか、どういう局面で
つかうのかわからないんです。
0011デフォルトの名無しさん
2006/09/15(金) 22:22:53>>10
課題じゃないが、とりあえずこの辺は読んどけ。
期待に沿えるかは知らん。
http://www-06.ibm.com/jp/developerworks/linux/001208/j_posix1.html
001210
2006/09/17(日) 23:53:12熟読してみます。
ありがとうございますー
0013デフォルトの名無しさん
2006/09/19(火) 12:29:10この小学生は、OS?システム?Windowsって何?と言ってくるようなステキなお子様です。
0014デフォルトの名無しさん
2006/09/19(火) 13:14:550015デフォルトの名無しさん
2006/09/19(火) 14:03:14if 文を使う
黒色以外で表示
10行以上のプログラムであること
以上を満たした意味のあるプログラムつくってクレクレ
0016デフォルトの名無しさん
2006/09/19(火) 20:41:000017デフォルトの名無しさん
2006/09/19(火) 21:31:13ここは課題クレクレスレであって、答クレクレスレではない
0019デフォルトの名無しさん
2006/09/20(水) 15:18:41そのレベルに小難しいことを言っても意味無しだろう。
せいぜい「パソコンで動くゲームとかが作れるんだよ」程度でどうか。
つーか、このスレは俺が答えても仕方ないのか。w
0020デフォルトの名無しさん
2006/09/21(木) 01:53:28あんなレベルだけどちゃんとした説明じゃないと納得しない
困った小学生なんだぜ。
0021デフォルトの名無しさん
2006/09/26(火) 12:45:45()なし、一桁の四則計算機なんてつくってみたら?
例えば1+2-3*4/5と入力したら答えを求めるとか。
もちろん/*と-+の優先順位を考慮して。
0022デフォルト名無しさん
2006/09/27(水) 09:21:39http://mitty.jp/up/src/up1969.c
0023デフォルトの名無しさん
2006/09/27(水) 12:42:39ここは課題を出してあげるスレであって、課題をかわりに解いてあげるスレじゃないだろ。
スキルつけたがってるんだから自分で考えさせないと意味ないじゃん。
0024デフォルトの名無しさん
2006/09/27(水) 12:52:50if(!strcmp(str,"1+2-3*4/5")) return 0.6;
return 0;
}
0025デフォルトの名無しさん
2006/09/27(水) 13:37:24コーディング対局とは、対局者の2人がC言語を使い、"}"または、";"がでるまで
口頭でコーディングをしていくと言うものです。勝者は、有効な「return 文」
または、mainの"}"を閉じた方が勝ちです。
解説は、MHK C言語解説委員の山田さんにお願いいたします。
それでは、先手の攻撃です。
読み手「先手、int main(void) { int i; 」
アナ「山田さん、先手の攻撃をどう見ますか?」
山田「コーディングの対局は、前の行に戻って、コーディングをやり直したり、
新たに変数を付け加える事ができませんので、序盤の変数宣言が後々
勝敗に響いてきますので、この変数宣言は重要ですよ。」
読み手「後手、 int j;」
山田「しかし、この"int i; int j;"は将棋でたとえるなら歩の打ち合いですから
定石といってもいいでしょう。」
読み手「先手、 for(i=1; i < 10; i++) {
for(j=1; j < 10; j++){
printf("%d",i*j); 」
アナ「おっと、先手がいきなり王手飛車取りの様な手を使ってきました 。」
山田「ちょっと、この手は序盤の手としては恐ろしいですよ。なにせ、変数が
二つしかありませんから、先手も自分の首を絞めかねないですね。」
0026デフォルトの名無しさん
2006/09/27(水) 13:38:47山田「先手の先制攻撃に対し、後手も荒業breakで反撃にでましたね。」
アナ「では、山田さん、次に先手はどうコーディングしたら良いでしょうか?」
山田「やはり、ここはおとなしく"}"だけで我慢するべきですね。」
アナ「そうですね。では、次の手を見てみましょう。」
読み手「先手、else if (i*j == 25) break;」
アナ「おっと、これは予想に反し、先手もbreakで応酬です。」
読み手「後手、else if (i*j == 16) break;」
アナ「おっと、ついに千日手のbreak3連発になってしまいました。」
山田「千日手ですから、先手は手を変えなければなりません。先手は2手、損を
したことになりますね。」
0027デフォルトの名無しさん
2006/09/27(水) 13:39:27switch(i){
case 5 : if (j = 5) return 0; 」
アナ「おっと、先手、またもや王手をかけてきました。」
山田「先手は勝ちを急ぎ過ぎていますね。あのLabel1と言うのがなかなか曲者
ですね。後手が悪あがきしても、あのLabel1:に飛んでしまえば、
returnで勝ちになりますからね。」
0028デフォルトの名無しさん
2006/09/27(水) 13:40:15アナ「それに対し、後手は余裕のdefaultをかましてきました。」
山田「これはもう、先手は"}"しか出せません。」
読み手「先手、]」
読み手「後手、同、 }」
アナ「後手も"}"ですね。」
山田「そうですね、通常の人間では、今"{"がいくつネスとしているかなんて
おぼえられませんから、減らしているのでしょう。」
読み手「先手、同じく、}」
アナ「いよいよ最終局面に入ってきましたが、先手も"}"で応酬するとは思いません
でした。」
山田「これは、後手が有利ですね。あとはreturn }だけで勝てそうですよ。」
読み手「後手、return 0;」
アナ・山田「え!?」
山田「これは微妙な雰囲気ですよ。これで、先手がmainの"}"を閉じる
わけですから、先手の勝ちのような気がしますが・・・。いったい、
後手は何を考えているのでしょうか?」
読み手「先手、} にて終局です。」
アナ「では実際に動かしてみましょう。ああ、なんと、後手の勝ちです。」
山田「そうです、中盤のdefaultのあとのreturn文でいきなり終わっています。
先手、後手とも、後手が勝っていたことに気づいていませんでした。」
アナ「(「山田、おまえもだろ。」と突っ込みをいれつつ) しかし、山田さん、
このプログラムは何をするプログラムなのでしょう?」
山田「それは各自お考えください。」
それでは「コーディング対局の時間を終わります。 MHK」
0029デフォルトの名無しさん
2006/09/27(水) 14:58:26ビタミンと同じでCが良い。
脳に良い。
とか言っとけばおk。
0030デフォルトの名無しさん
2006/09/27(水) 16:18:26#include <stdio.h>
#include <string.h>
#define BUFF_SIZE 5000
int main(int argc, char *argv[])
{
char buf[BUFF_SIZE];
int i;
if(argc!=2){
printf("コマンドラインエラー\n");
return 0;
}
FILE *fp;
fseek(fp, 0L, SEEK_SET);
if((fp = fopen(argv[1], "rb+")) == NULL ){
printf("ファイルオープンエラー\n");
return 0;
}
fread(buf,sizeof(char),BUFF_SIZE,fp);
fclose(fp);
printf("ファイルの内容=\n%s",buf);
return 1;
}
■ このスレッドは過去ログ倉庫に格納されています