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


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

C言語なら俺に聞け(入門篇)



1 名前:デフォルトの名無しさん [2006/05/04(木) 08:53:09 ]
入門者向けの俺に聞けスレです。
なんでもきいてよね

369 名前:デフォルトの名無しさん mailto:sage [2006/06/12(月) 17:58:40 ]
>>366
まず何をしたらいいのか・・・・

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

371 名前:デフォルトの名無しさん mailto:sage [2006/06/12(月) 18:11:16 ]
>>369
> まず何をしたらいいのか・・・・

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

372 名前:デフォルトの名無しさん mailto:sage [2006/06/12(月) 18:17:18 ]
ひねくれ者うぜーしばいばい

373 名前:デフォルトの名無しさん [2006/06/12(月) 18:42:14 ]
ttp://www.geocities.co.jp/Technopolis-Mars/5427/math/fe_set1.html
ドモホルンリンクルの法則・・・なんでもないw

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

nor か nandがあればOK。

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

376 名前:デフォルトの名無しさん mailto:sage [2006/06/12(月) 19:10:34 ]
単項演算だけでか?

377 名前:デフォルトの名無しさん mailto:sage [2006/06/12(月) 19:11:56 BE:81522667-#]
>>374
>A→Bを|のみを用いて

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



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

379 名前:デフォルトの名無しさん mailto:sage [2006/06/12(月) 19:19:24 ]
>>378
だからスレ違いだっての

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

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

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

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


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


383 名前:デフォルトの名無しさん mailto:sage [2006/06/12(月) 21:15:56 ]
2B or (not 2B)

384 名前:デフォルトの名無しさん mailto:sage [2006/06/12(月) 22:24:30 ]
>>368
「論理回路 完全系」でググれ。

385 名前:URLエンコード [2006/06/14(水) 14:57:40 ]
upld3.x0.com/src/upld7639.txt

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

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


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




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

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


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


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


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

392 名前:デフォルトの名無しさん mailto:sage [2006/06/14(水) 18:24:56 ]
>>391
学校ではどうやっている?

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

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

395 名前:デフォルトの名無しさん mailto:sage [2006/06/14(水) 23:45:34 ]
キョドってキモがられて虐められて以下無限ループ

396 名前:デフォルトの名無しさん mailto:sage [2006/06/14(水) 23:59:58 ]
www.vipper.org/vip275713.jpg
こんな顔の奴だな。

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



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

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

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

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

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

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

404 名前:402 mailto:sage [2006/06/15(木) 07:39:19 ]
そういう関数があるんですか、いろんなHPでprintfで表示してる
のでそれで良いのかと思ってました。

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


405 名前:デフォルトの名無しさん mailto:sage [2006/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()の使用例などについてはこちら参照。
ttp://www.linux.or.jp/JM/html/LDP_man-pages/man3/localtime.3.html
printf()で愚直に詰めるのはアナクロだと言うことを知らないアナクロな表現者は多いと言うことだね。

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

それ「#else」の方だと

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

としないとダメじゃね?

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



408 名前:406 mailto:sage [2006/06/15(木) 10:47:00 ]
>>407
そうか、見落としてたよ。

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

410 名前:デフォルトの名無しさん mailto:sage [2006/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 名前:デフォルトの名無しさん mailto:sage [2006/06/15(木) 18:47:34 ]
外部関数としてファイルを分割し、
メイン関数で外部関数を呼ぶとき、構造体を引数として外部関数に渡すにはどうしたらいいですか?

412 名前:デフォルトの名無しさん mailto:sage [2006/06/15(木) 20:31:57 ]
>>411
普通に呼べばいい。

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

414 名前:デフォルトの名無しさん mailto:sage [2006/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 名前:デフォルトの名無しさん mailto:sage [2006/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 名前:デフォルトの名無しさん mailto:sage [2006/06/15(木) 23:43:26 ]
変数名の付け方が最悪だなウププププ

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



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

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

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

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

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

会社辞めようかな orz

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

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

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

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


425 名前:デフォルトの名無しさん mailto:sage [2006/06/16(金) 19:06:53 ]
>>415
ありがと。解決しました。

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

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



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

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

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

431 名前:418 mailto:sage [2006/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 mailto:sage [2006/06/17(土) 13:25:54 ]
教えてください。
char *str[][] =
{
{"abc", "def"},
{"ghi","jkl"}
};

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

433 名前: ◆hznrtioKU2 mailto:sage [2006/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 mailto:sage [2006/06/17(土) 13:29:57 ]
GetIniFilePos()の3番目の引数に下記の配列を渡して参照させたいんだが・・・
chKeyPos部分の受けの型はいったいどうすればいいのかさっぱりなんで('A`)


435 名前:デフォルトの名無しさん mailto:sage [2006/06/17(土) 13:35:33 ]
>>431
君にはこれがきっと役に立つと思うから読んでごらん。
https://sec.ipa.go.jp/download/files//report/200504/coding_guide.pdf

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

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

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



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

詳しくはC FAQ参照。
www.kouno.jp/home/c_faq/c6.html

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

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

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

440 名前: ◆hznrtioKU2 mailto:sage [2006/06/17(土) 15:12:12 ]
>>438-439
参考になった。ありがとう

441 名前:デフォルトの名無しさん [2006/06/18(日) 19:27:25 ]
☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
嫌いなコテハン投票vote2.ziyu.net/html/corosuke.html
☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆

えいいちに清き1票を!


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


443 名前:デフォルトの名無しさん mailto:sage [2006/06/19(月) 14:01:52 ]
>>442
じゃ、君が教えてあげれば?

444 名前:デフォルトの名無しさん mailto:sage [2006/06/19(月) 21:24:46 BE:49923252-#]
>>443
それは断る。

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

446 名前:デフォルトの名無しさん mailto:sage [2006/06/19(月) 22:59:13 ]
ある

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



448 名前:デフォルトの名無しさん mailto:sage [2006/06/19(月) 23:16:38 ]
>>447
thx

449 名前:デフォルトの名無しさん mailto:sage [2006/06/20(火) 00:10:41 ]
120.10 200.55 344.78 ・・・
150.66 300.78 664.13 ・・・
400.44 135.66 333.44 ・・・

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


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

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

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


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

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

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

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

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



458 名前:デフォルトの名無しさん mailto:sage [2006/06/20(火) 11:05:04 ]
スレ違い

459 名前:デフォルトの名無しさん mailto:sage [2006/06/20(火) 12:28:55 ]
>>457
#include <stdio.h>

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

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


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

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

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

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

464 名前:デフォルトの名無しさん mailto:sage [2006/06/20(火) 14:14:33 ]
精神年齢低すぎ

465 名前:デフォルトの名無しさん mailto:sage [2006/06/20(火) 15:09:48 ]
>>457
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2111.cpp

466 名前:デフォルトの名無しさん mailto:sage [2006/06/20(火) 15:12:39 ]
>>457
>>465はミスった
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/2112.cpp


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




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

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






[ 続きを読む ] / [ 携帯版 ]

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

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