C言語の基本的なコードのバグ


C言語初心者です.以下はバグのあったコードです.

[code]

    #include <stdio.h>
    int main(void){
        int repeat;
    
        int value1 = 0;
        int value2 = 0;
    
        int v;
        int add;
        char command[10];
    
        char str[3];
        scanf("%d", &repeat);
    
        int i;
        for (i=0; i<repeat; i=i+1){
            scanf("%s %d %d",&command, &v, &add);
            if (command == "SET"){
                if (v == 1){
                    value1 += add;
                    printf("%s %d %d\n", command, value1, value2);
                    //ここで,addが例えば,SET 1 10と入力するとadd==1となる.しかも,value1==-1となる.(value1+=addのはずが,逆に引き算される.)
                }
                else{
                    printf("%d", v);
                    value2 += add;
                    printf("%s %d %d\n", command, value1, value2);
                    //ここで,例えば,SET 2 20と入力するとvalue1にadd==2が引き算されてvalue1==-3になる.
                }
            }
            else if (command == "ADD"){
            ここから下は省略.
    
[/code]

これらのバグが起きる原因が分かりません.  
この一連のバグの原因はaddにあると思われるのですが,詳しく教えていただけないでしょうか?




とりあえずchar [] の比較を==でしているのは気になる。  
C言語ならstrcmpとかでは？

デバッガでちゃんと問題の箇所を実行しているか確認してみるのがいいかと思います。

