ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

C言語とC++言語コミュのお願いします。教えてください。

  • mixiチェック
  • このエントリーをはてなブックマークに追加
学校の課題なんですが、
「点数を入れるとSABCDを出力するプログラムを作れ」といったもので
100点〜90点 S
 89点〜80点 A
 79点〜70点 B
 69点〜60点 C
 59点以下   D
が点数の設定で
例として実行結果が./kadai・・・ 70 80 85
と打つと

1教科目はBです。
2教科目はAです。
3教科目はAです。

となります。
どなたかお願いします!!

コメント(39)

#include <stdio.h>
#include <stdlib.h>

int main(int argc,char *argv[])
{
    int n,p ;
    char r ;
    for (n=1 ;n<argc ;n++){
        p = atoi(argv[n]);
        if (p<=59){
            r = 'D' ;
        } else if (p>=60 && p<=69){
            r = 'C' ;
        } else if (p>=70 && p<=79){
            r = 'B' ;
        } else if (p>=80 && p<=89){
            r = 'A' ;
        } else if (p>=90 && p<=100){
            r = 'S' ;
        }
        printf("%d教科目は%cです。\n",n,r);
    }
    return EXIT_SUCCESS ;
}
> 6
多分、下みたいにかけって事だと思うよー
#include <stdio.h>
突っ込んでくれると信じていました。

× int n,p ;
○ int n, p;

× return EXIT_SUCCESS ;
○ return EXIT_SUCCESS;

他にもありますよね。
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

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

    for (n = 1; n<argc; n++) {
        r = 'I'-max(atoi(argv[n])/10,5);
        printf("%d教科目は%cです。\n", n, (r<'A') ? 'S' : r);
    }
    return EXIT_SUCCESS ;
}
maxはstdlib.hにありました。
mathの別関数を使って出そうとしてたのが、ソースに残っていました。
Cだと標準関数ではなさそうな気がします > max
C++だと、あるのかな?
char rank[N] = {'D','D','D','D','D','D','C','B','A','S','S'};
こんなことをしてみたくなりました。
ありがとうございます。今からやってみます。

タイトルすいませんでした。次から気をつけます。
Borland C++ 5.5.1 for Win32
stdlib.h

#ifndef max
#define max(__a,__b) (((__a) > (__b)) ? (__a) : (__b))
#endif
#ifndef min
#define min(__a,__b) (((__a) < (__b)) ? (__a) : (__b))
#endif

マクロでした。
>>28
これはうっかり使ってしまうと地獄に堕ちそうなマクロですね。
一つでintとfloatと共用出来そうではありますが。

例えば、a++とb++を比較させてみると...
1から26の整数を入力するとそいつに対応してaからzまでの文字を出力する方法ってどうすればよろしいのですか?
1〜26の整数をどうやって入力するのかによって、プログラムの書き方も変わりますが、、、、
もし、scanfで入力するのだとすると、
int n;
scanf("%d",&n);
で、その後、
putchar('a'+n-1);
とか
putchar("@abcdefghijklmnopqrstuvwxyz"[n]);
とか。
ありがとうございました。早速やってみたいと思います。
1から1000までの範囲内で7の倍数をforループで求める方法を教えて下さい。
for(i = 7; i < 1000; i += 7)

こんなループを回せばいいんじゃないですか。

ログインすると、残り22件のコメントが見れるよ

mixiユーザー
ログインしてコメントしよう!

C言語とC++言語 更新情報

C言語とC++言語のメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。

人気コミュニティランキング