C言語なら俺に聞け( ..
[2ch|▼Menu]
369:デフォルトの名無しさん
06/06/12 17:58:40
>>366
まず何をしたらいいのか・・・・

370:デフォルトの名無しさん
06/06/12 18:07:22
まず「論理式」でぐぐれ
そしてC言語に関連あるところまで理解が進んでからもう一回来い。

371:デフォルトの名無しさん
06/06/12 18:11:16
>>369
> まず何をしたらいいのか・・・・

まずは、日本語の勉強からどうぞ。
算数の勉強も合わせてどうぞ。

372:デフォルトの名無しさん
06/06/12 18:17:18
ひねくれ者うぜーしばいばい

373:デフォルトの名無しさん
06/06/12 18:42:14
URLリンク(www.geocities.co.jp)
ドモホルンリンクルの法則・・・なんでもないw

374:デフォルトの名無しさん
06/06/12 18:45:03
>>368
x nor x = not x だよ。

nor か nandがあればOK。

375:デフォルトの名無しさん
06/06/12 18:46:01
ねぇねぇ、知ってた?論理回路のすべてはnotがあれば全部作れるんだよ?

376:デフォルトの名無しさん
06/06/12 19:10:34
単項演算だけでか?

377:デフォルトの名無しさん
06/06/12 19:11:56 BE:81522667-#
>>374
>A→Bを|のみを用いて

と書いてあるんでNOTの入った物(NOR,NANDも含む)が必要かなと。

378:365
06/06/12 19:16:17
A⇔B = ((not A)or B) and (A or (not B))ですかね?
これを巧く直せないんです

379:デフォルトの名無しさん
06/06/12 19:19:24
>>378
だからスレ違いだっての

380:デフォルトの名無しさん
06/06/12 20:01:16
300あたりから「くだすれC言語」化してきたな、と思ってたら
ついにC言語ですらなくなったか。このスレも終わりかな。

381:デフォルトの名無しさん
06/06/12 21:07:50
入門編だからいいんだよ
質問の仕方入門や
BOOL代数の入門も含まれる

という事にしてマタリしとこう

382:デフォルトの名無しさん
06/06/12 21:15:16
>>381
質問の仕方は勘弁してくれ。
正しい質問の仕方を心得ている事は、最低限必要。


プログラミング言語初心者はいいが、日本語初心者はお断りにすべき。
母国語もマトモに使えないようでは、プログラム以前の問題。


383:デフォルトの名無しさん
06/06/12 21:15:56
2B or (not 2B)

384:デフォルトの名無しさん
06/06/12 22:24:30
>>368
「論理回路 完全系」でググれ。

385:URLエンコード
06/06/14 14:57:40
URLリンク(upld3.x0.com)

このソースは書籍からのCGIのサンプルなんですが
CによってURLエンコードをする際に%xx%nn%yyという2バイトコードをを16進数に変更して1バイトにまとめていく処理があるのですが
229行目での配列への代入が何を代入しているのかがどうしても分かりません。
この代入は次のループで書き換えられているような気がするのですが、これは必ず必要な処理なのでしょうか。
変な文章の質問になりますが、ここだけがどうしても胸につかえていて気持ち悪いんです。どなたかスッキリさせていただけないでしょうか。

386:デフォルトの名無しさん
06/06/14 15:13:41 BE:149769656-#
>>385
%xxという形式じゃなかったら、そのままコピーしてるだけなんじゃない?
インデックスの変数をインクリメントしてるから、次のループでも
上書きはしてないと思う。


387:URLエンコード
06/06/14 15:23:18
>>386
失礼しました。
改行でのみの行番号だと223行目の部分でした。
エディタ入れなおしたばっかりで設定し忘れていました。


388:デフォルトの名無しさん
06/06/14 15:40:38 BE:199692858-#
>>387
ああ、本当だ、それバグっぽいね。

他にも、渡されたデータのサイズに関係なく適当にmalloc()してるとか、
%が現れたら、無条件にインデックスを+2してるとか、危なそうなコー
ディングしてるね。


389:URLエンコード
06/06/14 15:43:59
>>386
>>388
おお。ではこれは必要のない一行ということでよかったのでしょうか。
御教授いただきありがとうございました。
これで胸の支えが取れた感じです、、が危なそうなコーディングですかー。
中々C言語によるCGIの書籍というのがなかったもので、徐々に理解していきたいとおもいます


390:デフォルトの名無しさん
06/06/14 17:47:23
>>385のソース見ると
なんていうか、すごいね。


391:デフォルトの名無しさん
06/06/14 18:17:22
学校ではC++できるのですが、
家ではやり方が良くわかりません。
どうすれば、C++でコンパイルや実行などができるのでしょうか??

392:デフォルトの名無しさん
06/06/14 18:24:56
>>391
学校ではどうやっている?

393:デフォルトの名無しさん
06/06/14 23:31:48
電気屋に逝って店員に相談する。
XPならVC++とかじゃね? VC++スレ逝け。詳しい香具師が多い。

394:デフォルトの名無しさん
06/06/14 23:38:34
いつも思うんだが、なぜ学生なのに先生や同級生に聞かないんだろう

395:デフォルトの名無しさん
06/06/14 23:45:34
キョドってキモがられて虐められて以下無限ループ

396:デフォルトの名無しさん
06/06/14 23:59:58
URLリンク(www.vipper.org)
こんな顔の奴だな。

397:デフォルトの名無しさん
06/06/15 00:04:08
ああ… そういう奴らがここに溜まって来る訳か。

398:デフォルトの名無しさん
06/06/15 00:07:11
下がり眉
常に上目遣い
常に口が開いてる
口をすぼめ気味
自触癖っぽい唇の傷

全てが精神遅滞を思わせる特徴だなwww

399:デフォルトの名無しさん
06/06/15 00:13:10
友達はいないかも知れんが先生に聞くことはできるだろ
それすらできないならちょっとアレだ

400:デフォルトの名無しさん
06/06/15 00:26:38
>>399
この手の人は、他人が書いた答えを写す事しか頭にないだけ。

401:デフォルトの名無しさん
06/06/15 00:36:50
>>399
そうだよね。積極的に教授と交流作っとけば成績もプラスに評価されるよね。
あ、もちろん対教授コミュ法は『教えて君』じゃだめだよ。

402:デフォルトの名無しさん
06/06/15 02:34:08
#include <time.h> #include <stdio.h>
int main(){
time_t times;
struct tm *jt;
time_t tt;
times = time(NULL);
// jt = localtime(×);
jt->tm_year = 100;
jt->tm_mon =1;
jt->tm_mday = 1;
jt->tm_hour = 5;
jt->tm_min = 11;
jt->tm_sec = 33;
printf("%4d年%2d月%2d日 %2d時%2d分%2d秒\n",
1900+jt->tm_year,jt->tm_mon,jt->tm_mday,
jt->tm_hour,jt->tm_min,jt->tm_sec);
tt = mktime(jt);
printf("%d\n",tt);
return 0; }

上記プログラムで、現在時刻を、また通算秒数に戻したいのですが、
localtime()で受け取った値をそのまま使えば、戻せるのですが、
自分で、年月日、時間分秒を指定すると、-1になってしまいます。
年月日、時分秒だけ入力して、
通算秒数に戻す方法はないのでしょうか?改行で怒られて見づらくてすいません。

403:デフォルトの名無しさん
06/06/15 06:04:48
>>402
時刻表示にprintf()で愚直に詰めるのはやめようよ。
ちゃんとstrftime()って関数があるんだから。
処で、jtはどこを指しているのかな?

404:402
06/06/15 07:39:19
そういう関数があるんですか、いろんなHPでprintfで表示してる
のでそれで良いのかと思ってました。

すみません、どこを指してるとはどういう意味でしょうか。
localtime()の返り値を受け取って初めて、
時間指定ができるようになるとか、そういう意味でしょうか。


405:デフォルトの名無しさん
06/06/15 07:56:52
localtime()を使わない場合、struct tm * jt;でポインタを宣言した後初期化もしないで代入してはダメ。
また、localtime()で戻されるポインタが指す領域もlocaltime()が抱える静的領域なのでそれを加工してはダメ。

書くならこんなもんかな。
#if 0 /* localtime()の例 */
time_t tt = time(NULL);
struct tm * pjt = localtime(& tt);
#else /* 自分で代入する例 */
struct tm jt = {33, 11, 5, 1, 1, 100, };
struct tm * pjt = & jt;
#endif
char buf[30];
strftime(buf, sizeof(buf), "%F %r", pjt);

strftime()の使用例などについてはこちら参照。
URLリンク(www.linux.or.jp)
printf()で愚直に詰めるのはアナクロだと言うことを知らないアナクロな表現者は多いと言うことだね。

406:デフォルトの名無しさん
06/06/15 08:56:23
>>405
> strftime(buf, sizeof(buf), "%F %r", pjt);

それ「#else」の方だと

 strftime(buf, sizeof(buf), "%F %r", &pjt);

としないとダメじゃね?

407:デフォルトの名無しさん
06/06/15 09:24:44
>>406
よく見ろ。それを回避するためにstruct tm * pjt = & jt; している。

408:406
06/06/15 10:47:00
>>407
そうか、見落としてたよ。

409:デフォルトの名無しさん
06/06/15 16:16:49
printf 使わないで、
strftime だけで
"2006 年 6 月 15 日 木曜"
て書く方法教えて!

410:デフォルトの名無しさん
06/06/15 16:58:54
>>409
char buf[100];
struct tm date = {0};
date.tm_year=2006-1900;
date.tm_mon=6-1;
date.tm_mday=15;
mktime(&date);
setlocale(LC_TIME, "Japanese");
strftime(buf, sizeof(buf), "%Y 年 %#m 月 %#d 日 %a 曜", &date);
puts(buf);

411:デフォルトの名無しさん
06/06/15 18:47:34
外部関数としてファイルを分割し、
メイン関数で外部関数を呼ぶとき、構造体を引数として外部関数に渡すにはどうしたらいいですか?

412:デフォルトの名無しさん
06/06/15 20:31:57
>>411
普通に呼べばいい。

413:デフォルトの名無しさん
06/06/15 20:48:48
>>411
その構造体をさらに別のファイルfoo.hで宣言して、それぞれのソースファイルでインクルードする。

414:デフォルトの名無しさん
06/06/15 21:47:24

0000000000
1111111111 1セット
2222222222
0000000000
1111111111 2セット
2222222222
0000000000
1111111111 3セット
2222222222
...        xセット

(10+1, 3, x)
10文字ずつ並んでいる(改行コードで文字数が+1と考える)
それが3行で1セットのものがある。
それがxセットあるとする。あと、これがchar str[1024];とかに入ってると考える。

それを次のように横向きにつなげるのにはどうすればいいだろうか?

000000000000000000000000000000
111111111111111111111111111111
222222222222222222222222222222
(10*x+1, 3)

※ここで10と3って書いたけど実際に使うプログラムでは3じゃなくて20です。
長くなりすぎないように3に変えただけです。

頭が悪くてやり方がわからん。教えてくれまいか?

415:デフォルトの名無しさん
06/06/15 23:34:21
// こんなもんかな
const int rowLen = 10;
const int setLen = 3;
const int rowSize = rowLen + 1;
const int setSize = rowSize * setLen;
char newStr[1024];
newStr[0] = '\0';
for (int rc = 0; rc < setLen; ++rc) {
for (int ic = 0; ic < x; ++ic) {
sprintf(strchr(newStr, '\0'), "%.*s", rowLen, & str[ic * setSize + ir * rowSize]);
}
}

416:デフォルトの名無しさん
06/06/15 23:43:26
変数名の付け方が最悪だなウププププ

417:402
06/06/16 00:05:27
>>405
うわ、経過秒表示できました。
自分で代入する場合のサンプルまでどもです。

418:デフォルトの名無しさん
06/06/16 00:47:20
NULLポインタを返す関数を作るのはだめですか?
一々アドレスの有効性を示すブール値が必要とは思ってなかったけど
会社の先輩に言われました。ここは組み込み系だからなとかなんとか・・・

419:デフォルトの名無しさん
06/06/16 00:49:34
>>418
そんなことありません。
ポインタを返す関数の場合、エラーが起こったときにはNULLを返すのが普通です。

420:デフォルトの名無しさん
06/06/16 00:50:49
>>418
その先輩を説得するために、mallocやfopenの例を示しましょう。
ただし、あまり関係が悪くならないように立ち回る必要がありますね。

421:418
06/06/16 00:54:00
>>419
そうですよねー。
なんかアセ屋さん上がりの人たちが得意げに説法してくれるので
自信失いました。

NULLを知らずにアクセスしたらどうすんだって言うんですよ。
ちゃんと返り値のほうでNULLかどうか見てるのですが、
忘れたらどうすんじゃとかなんとか・・・
それ知らない人が次にソース触ったらどうとこかこうとか。

会社辞めようかな orz

422:419
06/06/16 01:22:19
>>421
周りが全部そうだったら、ひとまず先輩を立てておいて転職を画策するって手もありますね。

いずれにせよ・・・がんばってください。

423:デフォルトの名無しさん
06/06/16 07:56:32
>>421
そんな変なスタイルに凝り固まった人たちと仕事していても(技術的に)得る物はありませんよ。
適当に相槌打ちつつ次を模索するのが妥当かと。

424:デフォルトの名無しさん
06/06/16 13:58:33
NULLを知らずにアクセスするのが怖いならCやC++は使うべきじゃないなあ。


425:デフォルトの名無しさん
06/06/16 19:06:53
>>415
ありがと。解決しました。

426:デフォルトの名無しさん
06/06/16 22:42:09
組み込み系だから何か事情があるんじゃないの?
つうか一番大事な理由をちゃんと聞いてないってどういう事よ

427:デフォルトの名無しさん
06/06/16 22:45:22
理由書いてるじゃん、「NULLを知らずにアクセスしたらどうすんだ」って。
推して知るべし。

428:デフォルトの名無しさん
06/06/16 23:14:47
boolean な戻り値が何を意味してるかを知らずに
戻り値を無視したらどう(ry

429:デフォルトの名無しさん
06/06/17 01:04:16 BE:38820454-#
ポインタを戻すこと自体の是非は文脈に依存するが、ポインタが戻されたらNULLかどうかを
チェックするのは当然。

430:デフォルトの名無しさん
06/06/17 01:45:23
仕様で NULL にならないと書いてあっても、
とりあえず assert くらいはするかもしれんな。

431:418
06/06/17 09:15:32
>>426
いろいろ調べてみて分かってきたのですが
今私が使っているCPUではNULLがゼロ番地を示すようにコードが落ちます。
ここまでは普通の話かもしれません。
(違うところを差す環境もあるらしいですが)

このCPUの場合には0番地はCPUが使う特殊な領域として定義されていて
ユーザがアクセスすると暴走するようです。
明確にCPUリセットや決められた割り込みが発生すればいいのですが、
他に使っている割り込み処理を壊してしまったりするようです。

正直、NULLをチェックするのを忘れた場合でも、CPUリセットする
だろうという思い込みはありましたが、
やっぱり、チェックし忘れたらどうするんだっていう言い方だけでは
分かりませんよね。。。

>>428
結局そういうことですよね。
しかも、booleanがTRUEのときに、返り値のアドレスがNULLかチェックする
なんて馬鹿げてるし。
結局NULLかどうかは必ず検査していないといけないですよねw

>>430
NULLが返ることもあることを仕様書に明記すればいいみたいな話で
もういいやみたいな言われてしまいました。

でもやっぱり結局はNULLかどうかを検査するコードを常に書かないと
いけないわけですよねw

難しいですね もっと勉強します。

432: ◆hznrtioKU2
06/06/17 13:25:54
教えてください。
char *str[][] =
{
{"abc", "def"},
{"ghi","jkl"}
};

これを引数として関数側に飛ばす場合、受け側はどういう記述でいけばいいのでしょうか?
*[][]でも***でも**[]でもむりですた('A`)

433: ◆hznrtioKU2
06/06/17 13:28:05
BOOL GetIniFilePos(POINT *coordinate, short PosVal, char **chKeyPos, char *ActDir)
{
short i;
for(i = 0; i < PosVal; i++)
{
/* セクション"POS"からxの値を取得 */
(coordinate + i)->x = GetPrivateProfileInt("POS", &chKeyPos[0][i], -1, ActDir);
if((coordinate + i)->x == -1)
{
goto FUNC_END;
}
/* セクション"POS"からyの値を取得 */
(coordinate + i)->y = GetPrivateProfileInt("POS", &chKeyPos[1][i], -1, ActDir);
if((coordinate + i)->y == -1)
{
goto FUNC_END;
}
}
return TRUE;
FUNC_END:
return FALSE;
}
static char *chItemPos[POS_XY][POS_VALUE] = {
{"One_x", "Two_x", "Three_x", "Four_x", "Five_x", "Six_x"},
{"One_y", "Two_y", "Three_y", "Four_y", "Five_y", "Six_y"}
};
/* SKILLPOSキー項目テーブル */
static char *chSklPos[POS_XY][SKLPOS_VALUE] = {
{"SklOne_x", "SklTwo_x", "SklThree_x", "SklFour_x", "SklFive_x", "SklSix_x"},
{"SklOne_y", "SklTwo_y", "SklThree_y", "SklFour_y", "SklFive_y", "SklSix_y"}
};


434: ◆hznrtioKU2
06/06/17 13:29:57
GetIniFilePos()の3番目の引数に下記の配列を渡して参照させたいんだが・・・
chKeyPos部分の受けの型はいったいどうすればいいのかさっぱりなんで('A`)


435:デフォルトの名無しさん
06/06/17 13:35:33
>>431
君にはこれがきっと役に立つと思うから読んでごらん。
URLリンク(sec.ipa.go.jp)

ただ、これで先輩を納得させたり教育したりしようと思わないこと。
一人でこっそりスキルアップに励むが吉。

436:デフォルトの名無しさん
06/06/17 13:42:07
>>434
無理。
char*を二つメンバーにもつ構造体を宣言し、その配列を使うようにしろ。

437: ◆hznrtioKU2
06/06/17 13:44:05
>>436
あー、やっぱそうなのか
それとなぜ無理なのかを教えてほしいんですけどいまいち納得がいかないというか
ポインタについてまだ理解できてないというか・・

438:デフォルトの名無しさん
06/06/17 14:19:36
>>437
結論だけ言うと、多次元配列を関数に渡す場合、仮引数の型は最初の次元を除いてその大きさを
全て明記しなければならない。

詳しくはC FAQ参照。
URLリンク(www.kouno.jp)

この説明で理解できない場合は、『ポインタ完全制覇』のような(そのような書籍が実在するのか
知らないし、読んだこともないが、確かにポインタに特化した書籍は存在する)書籍を読むと良い。

あるいは、”多次元配列 仮引数”などで検索してヒットしたページを読んでみると良いかもしれない。

439:デフォルトの名無しさん
06/06/17 14:22:37
書き忘れたが、POS_VALUEとSKLPOS_VALUEという異なる値(>>433の場合はどちらも6だが)を
使う限り、配列を渡すのは無理だということ。
どちらもいつも同じというのであれば、仮引数にその大きさを明記してやれば渡せる。

440: ◆hznrtioKU2
06/06/17 15:12:12
>>438-439
参考になった。ありがとう

441:デフォルトの名無しさん
06/06/18 19:27:25
☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
嫌いなコテハン投票URLリンク(vote2.ziyu.net)
☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆

えいいちに清き1票を!


442:デフォルトの名無しさん
06/06/19 12:54:09
>>435 もっといいやつ教えてあげればいいのに。


443:デフォルトの名無しさん
06/06/19 14:01:52
>>442
じゃ、君が教えてあげれば?

444:デフォルトの名無しさん
06/06/19 21:24:46 BE:49923252-#
>>443
それは断る。

445:デフォルトの名無しさん
06/06/19 22:31:52
例えば、その関数に至ったら1秒間止まる、といった具合に、
一定時間処理を止める関数ってありますか?

446:デフォルトの名無しさん
06/06/19 22:59:13
ある

447:デフォルトの名無しさん
06/06/19 23:00:53
sleep系の関数は「最低N(mm)秒」止まるだけ

448:デフォルトの名無しさん
06/06/19 23:16:38
>>447
thx

449:デフォルトの名無しさん
06/06/20 00:10:41
120.10 200.55 344.78 ・・・
150.66 300.78 664.13 ・・・
400.44 135.66 333.44 ・・・

上のようにファイルに実数型で記入されているものを
整数型に型変換したいのですがどうすればいいのでしょうか
小数点以下の数値は切り上げでも切捨てでも構いません
一つずつならできるのですが、複数だとうまくできません
どなたかご助力ください


450:デフォルトの名無しさん
06/06/20 00:13:26
その、一つずつなら出来るというコードを見せてもらおうじゃないか。

451:デフォルトの名無しさん
06/06/20 00:16:36
>>449
一つずつってつまりは複数なんじゃないの?

452:デフォルトの名無しさん
06/06/20 00:25:49
言い方が間違っていました
一つずつではなく、一つのみなら整数型に変換できる
ということです
コードは他のサイトから拾ってきたもので
double d = 2.5;
int i = (int) d;
のようなやり方をして型変換していました


453:デフォルトの名無しさん
06/06/20 00:29:05
んーそれをファイル内のすべてに対してすればいいんでないの?

454:デフォルトの名無しさん
06/06/20 00:29:15
>>452
一行読み取って、スペースで区切りながら、atofを使うか、
一行読み取ってsscanf("%lf %lf ....")とかする(個数固定の場合)

455:デフォルトの名無しさん
06/06/20 00:31:56
>>453
>>454
ありがとうございました
やってみます

456:デフォルトの名無しさん
06/06/20 00:51:08
>>454
strtod()という選択肢はないのかね。

457:誰か教えてください・・・。
06/06/20 11:03:59
(OS)XPでソフトはVC++なんですが、こんな問題が解けないのでお願いしたいのですがいいでしょうか?
得点に負の値が入力されるまで得点を入力し、その最大値と最小値を求め、その差が30点以上であれば
「差が大きい」と表示するプログラムを作成せよ。
です。もしよかったらおしえてください。

458:デフォルトの名無しさん
06/06/20 11:05:04
スレ違い

459:デフォルトの名無しさん
06/06/20 12:28:55
>>457
#include <stdio.h>

int main(int argc, char* argv[])
{
  printf("得点に負の値が入力されるまで得点を入力し、"
      "その最大値と最小値を求め、"
      "その差が30点以上であれば「差が大きい」\n");
}

460:デフォルトの名無しさん
06/06/20 13:15:15
>>457
人にものを聞くのに「せよ」なんて命令形使うのは人間として間違い。


461:デフォルトの名無しさん
06/06/20 13:40:54
>>460
ちょwwwwwwおまっwwwwww人にものを聞くじゃなくて
その部分は「問題文」だからwwwwwwww
>>457
>もしよかったらおしえてください。
って言ってるじゃんwwwwwwwwwww

まさか、あんたが受けたことある試験や問題集に書かれていた問題って
次の○○を解いて下さい。 みたいな、丁寧口調なものばかりだったの?w

462:デフォルトの名無しさん
06/06/20 14:11:09
【問題】
  得点に負の値が入力されるまで得点を入力し、その最大値と最小値を求め、
  その差が30点以上であれば「差が大きい」と表示するプログラムを作成して
  戴けましたなら幸い至極に存じあげ奉り候。

463:デフォルトの名無しさん
06/06/20 14:12:12
何が候(そうろう)だよー!早漏なんて卑劣すぎ!

464:デフォルトの名無しさん
06/06/20 14:14:33
精神年齢低すぎ

465:デフォルトの名無しさん
06/06/20 15:09:48
>>457
URLリンク(kansai2channeler.hp.infoseek.co.jp)

466:デフォルトの名無しさん
06/06/20 15:12:39
>>457
>>465はミスった
URLリンク(kansai2channeler.hp.infoseek.co.jp)


467:デフォルトの名無しさん
06/06/20 17:23:01
>>461
昔から問題文の命令形はおかしいと思ってました。
自分が先生をやっていた時も自分で問題文書きながら
絶対おかしいと思ってました。w


468:デフォルトの名無しさん
06/06/20 17:29:46
それじゃ「解いてみよう」でいきますか?

469:デフォルトの名無しさん
06/06/20 17:30:42
なんなら「点数が欲しいなら解いた方が良いよ」とか?
「解かないと単位取得が危ういよ」とかそことなくやらせる気を起こさせる?

470:デフォルトの名無しさん
06/06/20 18:12:29
ゆとり世代もここまできたか

471:デフォルトの名無しさん
06/06/20 20:29:38


472:デフォルトの名無しさん
06/06/20 20:34:42
* 斬新な試み
1. 問題文を若者言葉にしてみる。
2. 問題文を絵文字満載にしてみる。
3. やたら顔文字を使う。
4. (爆)が文末に意味なく挿入されている。
5. wが文末に意味なく挿入されている。
6. 藁が文末に意味なく挿入されている。
7. 最後に「欝」の文字が入っている。


473:虫歯18本
06/06/20 21:24:54
超伝導量子干渉素子のプログラムを作ってください。
ちなみに水銀が超伝導状態になるのは、4.2K(ケルビン)の時です。

474:デフォルトの名無しさん
06/06/20 21:32:34
ΣΣ{(内積)の二乗}
を計算するプログラムはどのようにつくったらよいでしょうか?
forつかっただけでできますか?


475:デフォルトの名無しさん
06/06/20 21:51:10
彼女ができません。
forつかっただけでできますか?

476:デフォルトの名無しさん
06/06/21 00:25:24
for(int=0;i<N;i++)if(kokuhaku(girlfriend[i]))break;

477:デフォルトの名無しさん
06/06/21 01:44:00
残念。 N = 0 だ。

478:デフォルトの名無しさん
06/06/21 09:22:11
   ∧ ∧
ΣΣ(´Д`)


479:C++風に
06/06/21 12:42:16
>>475
for( i=0; i<My->GirlFriendCount; i++ ) {
  try {
    /* 告白 */
    Declared( My->GirlFriend[i] );
  } catch( DeclaredSuccessException exp ) {
    /* カップル成立 */
    DeclaredSuccess( exp );
    break;
  }
}


480:デフォルトの名無しさん
06/06/21 13:50:46
なるほど。彼女が出来る方が例外的なことであると。


481:デフォルトの名無しさん
06/06/21 14:04:24
どうせなら一生彼女ができない無限ループじゃね?
無限と言っても人生が終わった時点でプログラム終了だが

482:デフォルトの名無しさん
06/06/21 14:26:58
両親からforkした段階で変数kanojyoが宣言されてないと思う。
ext(1)で氏ぬのを待つだけ。

483:デフォルトの名無しさん
06/06/21 16:05:32
int life(const char *job)
{
 int age, lifetime;

 if (strcmp(job, "プログラマ") == 0)
  lifetime = 50;
 else
  lifetime = 70;

 for (age = 0; age < lifetime; ++age) {
#ifdef IKEMEN
  if (age >= 10)
   printf("%d 人目の彼女が出来ました。\n", age - 9);
  else if (age == 25)
   puts("結婚しました。");
  else if (age >= 30)
   printf("%d 人目の愛人が出来ました。\n", age - 29);
#endif
  sleep(31536000);
 }
}


484:デフォルトの名無しさん
06/06/21 17:02:40
>>483
生まれた時には職業は決まってないだろう。

485:デフォルトの名無しさん
06/06/21 17:15:48
age35ってドラマがあったよね?

486:デフォルトの名無しさん
06/06/22 19:28:42
生まれながらのプログラマー。


487:デフォルトの名無しさん
06/06/22 19:29:44
>>484
神は何でも分かっているのです。


488:デフォルトの名無しさん
06/06/23 01:26:54
ファイルから構造体の配列への読込と、書き込みがいまいち
分からないので、教えてください。

489:デフォルトの名無しさん
06/06/23 01:30:06
>>488
マルチ乙

490:デフォルトの名無しさん
06/06/23 01:32:42
まるちはだめよ。

491:488
06/06/23 01:35:37
>>489>>490
マルチになってスイマセン。
どーしても知りたくて。緊急なんです。
良ければ教えてください。

492:デフォルトの名無しさん
06/06/23 01:48:02
>>491
情報が曖昧過ぎて何をしたいのかわからない。
宿題スレに、構造体の配列を使った課題があったと思うから探してみたら?

493:デフォルトの名無しさん
06/06/23 07:45:58
>>488
struct foo { ... };

void write_foo()
{
FILE* fp;
struct foo f[10];
fp = fopen("foo.dat", "wb");
fwrite(f, sizeof(struct foo), 10, fp);
// fwrite(f, sizeof(struct foo), sizeof f / sizeof f[0], fp);
// fwrite(f, sizeof f, 1, fp);
fclose(fp);
}

void read_foo()
{
FILE* fp;
struct foo f[10];
fp = fopen("foo.dat", "rb");
fread(f, sizeof(struct foo), 10, fp);
fclose(fp);
}

494:デフォルトの名無しさん
06/06/23 09:31:22
実行するとgetsやfgetsのコードがスルーされるのですが、原因が全くわかりません。
しかし、例えば
gets(str);
gets(str);
と二回続けて書くと1つだけが実行されます。
原因が解る方いらっしゃいますか?

495:デフォルトの名無しさん
06/06/23 12:27:41
>>494
前にscanf()が呼ばれていて、
バッファに改行が残っているとみた。

496:デフォルトの名無しさん
06/06/23 13:07:49
>>494
素朴な疑問だが、2行目の「しかし」は何に掛かっているんだ?

497:デフォルトの名無しさん
06/06/23 13:23:53
コードがスルーされるのですがに掛かるので意味は通じる

498:デフォルトの名無しさん
06/06/23 14:15:45
>>496
but (日本語だと「しかし」、「でも」など) を使うとその手前のことがキャンセル
されて後に言ったことが強調される。また口語だといきなり「しかし」を先頭に持っ
て来るという考えてみればおかしな文でも通じてしまうのでいきなり何かを強調
したい時に使える。

というようなことがこの前買ったコールドリーディングの本に書いてありました。


499:デフォルトの名無しさん
06/06/23 15:21:46
PGは日本語が不自由だからな。
意味不明の仕様書しか作れないから、手を入れるより毎回新しいプログラムかいておき替えたほうが早い。

500:デフォルトの名無しさん
06/06/23 16:41:20
>>499
それはPGで括ることじゃないと思うが
PMだってSEだって(ry

501:デフォルトの名無しさん
06/06/23 17:45:21
>>499
>PGは日本語が不自由だからな。
>意味不明の仕様書しか作れないから
PGの書く仕様書を読まされるあなたは、もしや伝説のコーダー様??

502:デフォルトの名無しさん
06/06/23 19:30:32
元PGってのが仕様書作って来るけど糞って話では?
仕様書通りに作って納品したら、案の定作り直しでデスマであぼーん。

503:デフォルトの名無しさん
06/06/24 14:26:55
無償のVS2005でC言語を始めようと思うのですが、C++かC#どっちがいいと思いますか?
人気のある方がいいです
プログラム経験はあります(perl,ASなど)

504:デフォルトの名無しさん
06/06/24 14:33:36
C++もC#もC言語ではありません。

505:デフォルトの名無しさん
06/06/24 17:12:34
だがしかし、Visual C++のコンパイラはCのソースをコンパイルすることもできる。

506:デフォルトの名無しさん
06/06/24 17:13:04
>>503
とても、プログラム経験がある人の発言とは思えない。

507:デフォルトの名無しさん
06/06/24 17:13:18
>>503
初心者?言語の仕様を習いたいの?それとも教育機関でやる
ありきたりな数学的な知識を使った手法(アルゴリズム)をきちっと理解したいの?
まぁ、どの道どの言語でも、アルゴリズムの部分は共通しているんで
どっちでも良いんだけど、C++にしとけば?

508:デフォルトの名無しさん
06/06/24 20:19:17
>>506
人気のあるほうって何だよそれ人気があればいいのか?じゃあVB

509:508
06/06/24 20:20:04
安価ミス
>>506 ×
>>503

510:デフォルトの名無しさん
06/06/24 21:25:01
人気っつーか、自分が使いやすい方がイイ!

511:デフォルトの名無しさん
06/06/24 22:10:32
おまえら本当にこの手のどうでもいい質問に律儀に答えますね

512:デフォルトの名無しさん
06/06/24 22:31:39
君も仲良しクラブに入らないか

513:デフォルトの名無しさん
06/06/24 23:12:55
俺も入れてくれないか?

514:デフォルトの名無しさん
06/06/25 00:23:31
バブルソートを少しヒントをもらって、なんとか自力でやりとげたんですが
これってどのぐらいの難易度なんですか?
自分はかなり努力したつもりですがみなさんからみたら初歩なんですかね?

515:デフォルトの名無しさん
06/06/25 00:26:12 BE:59908234-#
>>514
バブルソートは、アルゴリズムの本にソースが載ってたんで、
自分で考えるなんてことはしたことがない。

516:デフォルトの名無しさん
06/06/25 00:35:35
>>514
初歩的だが、もっと効率の良いソートを理解する前の前座程度。
しかも、今後作るプログラムにはバブルソートなんて使わず
もっと高速なソートが使われるし、自分で定義しなくてもできたものがあるしね。

517:デフォルトの名無しさん
06/06/25 01:01:51
>>483
どうあっても結婚まで発展しなさそうな気がするんだが


518:デフォルトの名無しさん
06/06/25 01:13:38
C言語を勉強するとAVのモザイクが外せると聞いたのですが
どのようにするといいのか教えてください。

519:デフォルトの名無しさん
06/06/25 01:14:14
勉強しろ

520:デフォルトの名無しさん
06/06/25 01:15:19
別にCじゃなくても出来ると思うが

521:デフォルトの名無しさん
06/06/25 01:15:41
ソートのアルゴリズムはいくらでもそれ専用の本でてるじゃん
それを言語に置き換えるだけで、アルゴリズム理解しようとは思ったこともなかったわ。
シェルソートとクイックソート覚えるだけで良し


522:デフォルトの名無しさん
06/06/25 02:05:39
今日からC言語をやってみたいと思うのですが
C言語を使えばどんなものが作れるのかを教えてください。

その中から簡単そうなプログラムから一つずつ作って行って
C言語を学んでいこうと思います。

523:522
06/06/25 02:41:58
C言語についてググッてC言語のソースを見てみて
感じたのですが。
C言語のソースって、なんだかPerlによく似ているような気がする。
補足するようですが私はPerlを使ってのCGIなら組んだことはあります。

C言語の\nってもしかして、改行を意味する命令?
ifってPerlで使っているifと一緒?

だったら、画面に文字を表示する命令は

print "文字\n";

でしょうか?

524:デフォルトの名無しさん
06/06/25 02:46:56
>>523
本読め寝言を書き込むな。薬でもやってるのか?

525:デフォルトの名無しさん
06/06/25 02:52:17
>>523
命令制御コード制御文の基礎から勉強しとけ


526:デフォルトの名無しさん
06/06/25 03:26:04
ググレば腐るほど入門出てくるというのに…


527:デフォルトの名無しさん
06/06/25 04:24:32
どの入門書がいいですか
都会の本屋に行ったら種類が山ほどあって
近所の本屋に行ったら一冊もなくて
迷います

528:デフォルトの名無しさん
06/06/25 04:37:50
>>527

ネットで検索してネットで注文しなさいよ

プログラミング言語C ANSI規格準拠
B.W. カーニハン

これを、理解できるまで何百回も読み直せ


529:デフォルトの名無しさん
06/06/25 04:41:57
やっぱりその本が一番いいんですかね・・・
お小遣い貯めて買います

530:デフォルトの名無しさん
06/06/25 13:09:44
小学生が2chやってんじゃねーよ

531:デフォルトの名無しさん
06/06/25 20:21:20
小学生ではありません
立派なニートです

532:デフォルトの名無しさん
06/06/25 23:59:37
実家引きこもりで小遣い貰ってるって香具師か。
いきなり本買う前に近所の図書館で借りて読んでみたほうがいいよ。

533:デフォルトの名無しさん
06/06/26 00:51:17
>>528
ちうかそれ、出版された日付が古いぞな・・・
ANSI基準もそれから変わった部分もあるんでは?

534:デフォルトの名無しさん
06/06/26 01:08:41
バブルソートの件を書きこんだものです。
みなさん返信くださってありがとうございます
なんかへこみましたが‥これからも頑張ります

535:デフォルトの名無しさん
06/06/26 01:15:55
>>534
そりゃ経験があなたとは何万時間も違うような人から見たら、
バブルソートなんてアホみたいなものに見えちゃうさ。

別にへこむこと無いよ。そのまま突っ走れ。

536:デフォルトの名無しさん
06/06/26 01:41:43
図書館は敷居が高くて・・・
バブルソートです

537:デフォルトの名無しさん
06/06/26 01:46:27
基本情報やソフトウェア開発の本にもソートについては出てくるが
最初はバブルソートだな。けど、この仕組みを理解するのに苦労するのは
先行き不安だね・・・。単純に、各々の要素を配列の先頭から比較して並び替える程度だし。
まぁ、頭の中だけでなく、実際に数字を並べて自分で並び替えて仕組みを理解してみ。
んな難しくないことだし。

538:デフォルトの名無しさん
06/06/26 02:15:23
>>536
どこかの大学の講義資料とか漁ってみ。
学外から見れるところもまだ結構残ってる。

539:デフォルトの名無しさん
06/06/26 02:32:58
URLリンク(www.elc.ees.saitama-u.ac.jp)
ここにあるけど、ここのは配列の後ろの要素から比べているね・・・
自分が見たものの多くは前からだったが、まぁ概要は同じなんで

540:デフォルトの名無しさん
06/06/26 04:00:40
前からも後ろからも計算量は同じだし。
降順に並べるか昇順に並べるかの差。

Cには関係ない。アルゴリズムの本読めばソートの解説載ってる。
数学屋の理論的な蘊蓄付きで。

541:デフォルトの名無しさん
06/06/26 04:17:20
>>539はモロにC言語なんだがw

542:デフォルトの名無しさん
06/06/26 12:45:00
>>541
君は日本語の勉強を先にした方がいいよ。

543:デフォルトの名無しさん
06/06/26 14:24:46
>>533
いや、この本を理解できればどんなCのマニュアルも理解できる
っつうことでさ。

おれが生まれて初めて読んだ時は10回読んでも理解できんかったw


544:デフォルトの名無しさん
06/06/26 14:58:38
>Cに=関係ない
>>540>>542>>539のPDFが見られず
人間の言葉以前に状況も理解できないサル以下の知能しかないようだ
>>539はバブルソートをC言語で表したものだが?
頭が悪い以前に自分勝手な主観や意見だけでゴリ押しする
周りを無視するタイプだな
所詮、低学歴、低俗、低レベルな奴

545:デフォルトの名無しさん
06/06/26 15:03:51
>>540>>542はこのスレの流れも理解していないようだ。
>>538には
>大学の講義資料とか
あるため、大学でそれに関する文献を公表している場所を示して
話が続いただけなんだが、無理やりバブルソートを話を終わらせようと必死こいた結果
ここはお前が中心になって話を進めるスレじゃないんで、他へ行った方が良いよ?
そういう考えはまともなソースをかけないクズの考え。
一つ一つおろそかにせず、順を追うことは重要。
なぜなら、効率が悪いアルゴリズムを改善していくという部分の勉強も含まれているから。

現代人は最初っから便利なものを使っている。が、その便利なもの
手法が作られる経緯をろくに知らず、さらに、現代の問題を無視して
現在使っているものが引き起こす問題をそのままにしておく傾向もある。
そういう改善をする考えをもてなければ、プログラマとしてでなく
知能を持った人間として成長しない人間になるよ。

546:デフォルトの名無しさん
06/06/26 15:05:48
>>540
>前からも後ろからも計算量は同じだし。
誰もそんなことは聞いてないw
>降順に並べるか昇順に並べるかの差。
え?後ろから比較するか前から比較するかの差は分かるけど?

>Cには関係ない。
モロにC言語で記述されたソースが提示されてんですけどぉ?
C言語でないって言うならスレタイを見て「お前」には聞いてねーって思えよ?w

>数学屋の理論的な蘊蓄付きで。
数学の話なんてしてねーよ

547:デフォルトの名無しさん
06/06/26 15:07:53
>>542が必死こいて自分の勘違いを認めないレスをする↓

548:デフォルトの名無しさん
06/06/26 15:18:49

 ま た お 前 か


549:デフォルトの名無しさん
06/06/26 15:27:08
前からか後ろからかで実際の速度が変わる環境は多いと思うがね。

550:デフォルトの名無しさん
06/06/26 15:34:02
>>549
それは一概に言えないけど、とりあえず上の流れは
明らかに大学のプログラムの講義でC言語を使っているものを例に出しているけどね
そういうと、今度は無理なこじつけとか言い出すだろうけど、C言語において
ソートは出てくるんで、あまり細かいことを言っていたら
それじゃC言語でなんのプログラムを作るの?って話にまで発展しちゃうんで
一例を出しての話はおkだな

551:デフォルトの名無しさん
06/06/26 16:33:18
面減る

552:デフォルトの名無しさん
06/06/26 17:08:59
メンヘル型かまってちゃん症候群

553:デフォルトの名無しさん
06/06/26 17:19:28
お勧めC本(ステップアップ順)
やさしいC
しばたぼうようのC入門のやつ
独習C++
ダイテル親子の本
K&R

554:デフォルトの名無しさん
06/06/26 17:57:35
すいません
質問したものですが私のために揉め事になってしまっているようで
どうもすいませんでした
家の物置を整理したところ
兄の使っていたC言語の本と思しき書物がありましたので
ひとまずそれを繙いてみます

555:デフォルトの名無しさん
06/06/26 19:25:20
>>554
古そうな本はやめておけ。
Cだって生まれたときから今まで全く同じ姿だったわけではない。
せいぜい10年以内できれば5年以内のもので、お前が合っていると感じればよいと思う。

556:名無し
06/06/26 19:26:15
>>517
イケメンなら結婚できる。
void life(const char *job)
{
 int age,lifetime;

 if(strcmp(job,"プログラマ") == 0)
 {
  lifetime = 50;
 }
 else
 {
  lifetime = 70;
 }
 
 age=-1;

557:続き
06/06/26 19:27:46
 while(++age<lifetime)
 {
#ifdef IKEMEN
  if(9<age && age<25)
  {
   printf("%d 人目の彼女が出来ました。\n",age-9);
  }
  else
  {
   if(age==25)
   {
     puts("結婚しました。");
   }
   else
   {
    if (age>29)
    {
     printf("%d 人目の愛人が出来ました。\n",age-29);
    }
   }
  }
#endif
  sleep(31536000);
 }
}

558:デフォルトの名無しさん
06/06/26 19:49:22
#ifdef IKEMEN
  if(9<age && age<25)
   printf("%d 人目の彼女が出来ました。\n",age-9);
  else if(age==25)
    puts("結婚しました。");
  else if (age>29)
   printf("%d 人目の愛人が出来ました。\n",age-29);
  }
#endif

でいいじゃないか。
何でそんなにネスト掘り下げてんの?

559:デフォルトの名無しさん
06/06/26 21:03:39
>>558
else と if がどこに懸かっているのかが分かりにくいから。

560:デフォルトの名無しさん
06/06/26 21:29:37
初心者へ上司からの指令です。

C言語を使って「愛していますか?」って表示させるプログラムを組んでみよ。
さらに、YESとNOの選択を用意して
YESを選択すれば「もちろん!」
NOを選択すれば「なわけねーだろ!」
って表示させるプログラムを組んでみよ。

561:デフォルトの名無しさん
06/06/26 22:05:23
>>559
いつか、ひと目で解るようになれるといいですね。

562:デフォルトの名無しさん
06/06/26 23:00:16
>>560
文字列の受け取り方が分かりません('A`)

int main(void) {
       char yn;

       do {
              printf("愛していますか?");
              printf("(y/n) > ");
              scanf("%c", &yn);
              while (getchar() != '\n') { }

              if (yn == 'y') {
                     printf("もちろん!\n");
                     break;
              } else if (yn == 'n') {
                     printf("なわけねーだろ!\n");
                     break;
              } else { printf("yかnを入力してください。\n"); }
       } while (!(yn == 'y' || yn == 'n'));

       return 0;
}

563:デフォルトの名無しさん
06/06/26 23:09:09
534です。
みなさん色々指示してもらって。助かります。
>>535さんの発言どうり途中であきらめず、この世界で
やっていこうと本気で思いました。本気で突っ走りたくなったんで
更に更に勉強します。

564:デフォルトの名無しさん
06/06/26 23:24:54
思いとどまれよ。
人生負け組みになりたくなければ。

565:デフォルトの名無しさん
06/06/26 23:31:06
>>564
ひとそれぞれだよ。
俺は今年で35歳になるが、この業界に入って後悔したことはただの一度も無い。
負け犬だと思ったこともないし。客観的に見れば社会的ステータスは低いんだろうけどね。

566:デフォルトの名無しさん
06/06/26 23:32:18
質問なんですが
scanfとgetsこの二つは
なにが違うのですか??
初心者ですいません

567:デフォルトの名無しさん
06/06/26 23:36:27
ゲッツは文字列を受け取る
スキャンエフも文字列とか受け取れるがゲッツの方が使い勝手がよいと自分なりに勝手に拝借して候

568:デフォルトの名無しさん
06/06/26 23:52:53
scanfはスペースがあるとそこで区切られるよね。
ところでgetsって
ゲッツ?ゲットエス?

569:デフォルトの名無しさん
06/06/27 00:16:44
getStringの略だからゲットエスだろ。
getsは文字列(string)を受け取るだけ。
scanfは書式指定(Format)できるから、文字列じゃなくて数値とか
いろいろ入力できる。

ま、本当はバッファオーバーランを防ぐためにもfgetsを使う
べきだと思うが。

570:デフォルトの名無しさん
06/06/27 00:33:45
>>568
区切られずに読ませる方法もある。

571:デフォルトの名無しさん
06/06/27 00:45:55
>>566
むしろ同じ所などない。
全てにおいて異なる。

572:デフォルトの名無しさん
06/06/27 00:51:58
>>566です
教えてくれた人ありがとうございます。
勉強になりました



次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5129日前に更新/249 KB
担当:undef