したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

ぷろぐらみんぐ

50まてりん:2007/06/11(月) 10:44:09 ID:Fr2CZ.06
整数ならべるのこれでいけてるとおもうんだけどなぜか10ごとに改行されない・・・


int integer, i;

printf("Enter an integer:");
scanf("%d", &integer);

for (i = 1; i <= integer; i++)
printf(" %d", i);

if (i % 10 == 0)
printf("\n");

return 0;
}

51まてりん:2007/06/11(月) 12:08:01 ID:Fr2CZ.06
45だと今までに使ったぽいんとが0からふえなかった。

52まてりん:2007/06/11(月) 12:28:05 ID:Fr2CZ.06
46は数字入力してもめちゃめちゃな値にしかならん・・・

53まてりん:2007/06/11(月) 14:52:20 ID:Fr2CZ.06
52は自己解決。scanfのなかに&ないだけだったw

54あんだ〜:2007/06/11(月) 15:44:14 ID:CUqg93Jc
>>50

↓のまんまだと
for (i = 1; i <= integer; i++)
printf(" %d", i);//ここしかForで実行してない

if (i % 10 == 0)
printf("\n");

こうせんといかん
for (i = 1; i <= integer; i++)
{
printf(" %d", i);

if (i % 10 == 0)
printf("\n");
}


>>45
問題ないと思うけど・・しいて言うならdo while文のほうがよくて↓のように括弧をつけるくせつけとくといい
usedpoint = (Acount * 50) + (Bcount * 100) + (Ccount * 120) + (Dcount * 180);

55あんだ〜:2007/06/11(月) 15:53:57 ID:CUqg93Jc
>>45
あんまよくみてないが、↓じゃね?
つまりwhileのなかに+をいれただけ

int main(int argc, char* argv[])
{

int number, usedpoint;
int Acount = 0, Bcount = 0, Ccount = 0, Dcount = 0;

printf("景品番号を入力してください(1,2,3,4,EOF):\n");

while ( ( number = getchar() ) != EOF){

usedpoint = Acount * 50 + Bcount * 100 + Ccount * 120 + Dcount * 180;

switch (number)
{

case '1':
++Acount;
printf("必要なポイント:50\n");
printf("これまでの使用ポイント:%d\n",usedpoint);
break;
case '2':
++Bcount;
printf("必要なポイント:100\n");
printf("これまでの使用ポイント:%d\n",usedpoint);
break;
case '3':
++Ccount;
printf("必要なポイント:120\n");
printf("これまでの使用ポイント:%d\n",usedpoint);
break;
case '4':
++Dcount;
printf("必要なポイント:180\n");
printf("これまでの使用ポイント:%d\n",usedpoint);
break;
case '\n': case ' ':
break;

default:
break;

}
}
printf("\n合計%dポイント使用しました。\n", usedpoint);

return 0;

}

56まてりん:2007/06/14(木) 15:08:57 ID:Fr2CZ.06
ブラックジャックなんだけど21ごえとか引き分けの判定のとこで
if (nDealer < nPlayer <= 21)
printf("あなたの勝ちです。"\n);
else if (nPlayer > 21 >= nDealer)

って延々とかいてったんだけど何も変わらず21こえても勝ち判定になってまう。

57まてりん:2007/06/14(木) 15:16:52 ID:Fr2CZ.06
GOTOつかったらいかんらしい

58すずき:2007/06/14(木) 17:04:12 ID:CUqg93Jc
>>56
そのif文はnDealer<nPlayerとの比較が行われ、真か偽(1,0)がはいってその結果を
21と比べてるから条件は真になる。この真か偽は通常0,1だがコンパイラによって変わる。

if( (nDealer<nPlayer) /*先に←これが行われコンパイラは0か1を返す*/ <=21)
0,1と比べたら真になるから意味が分からん

if (nDealer<nPlayer)
{
if(21>=nPlayer)
printf("かち");
else if(21>=nDealer)
printf("まけ");
else
printf("どろー");
}else{
// ここにはディーラーがプレイヤー以下の時の条件がはいる
  // ただし、二人とも21超でもはいってくる
}

59名も無きマテリアル:2007/06/28(木) 10:07:59 ID:???
>>56
文法がおかしい
if ( nDealer < nPlayer && nPlayer <= 21 )
printf("あなたの勝ちです。"\n);

60名も無きマテリアル:2007/07/08(日) 04:42:41 ID:yY40YP9M
つぅか掲示板だとインデントは付かないのか?
お題も参考書レベルだし
これを人に手伝ってもらわないとダメなら業界入るのヤメたほうがいい。
信じられないかも知れないけど
社会でたら研修開始で2日目には理解できてないとダメなレベル。
やるのは勝手だけどもう少し隔離されたところでやった方が身のため。

61すずき:2007/07/10(火) 09:24:44 ID:CUqg93Jc
>>60
インデント空白無効(めちゃみずらいw)。まぁ〜まだ学習しだして2ヶ月だしねw
常時さげの隔離空間。つかメッセでいろいろやってたけどメッセのほうが説明しにくい・・・

62ちうりっぷの鼻:2007/08/21(火) 19:24:27 ID:2pR5Hbu6
http://www.yourfilehost.com/media.php?cat=video&amp;file=070523p669_02.wmv

ここもねwww


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板