0

この最初に、時間、分、秒を入力します。ユーザーに 3 つの変数を入力してもらいたいのですが、プログラムを実行すると、コンピュータが 4 番目の変数を要求するため、理由がわかりません:S 誰か?

(詳細をお尋ねします) ...................................

…………ああああああああああああああああああああああああ

    #include <stdio.h>

int main()
{
    int d,m,vrst,vrmn,vrsc,nvrst;

    printf("Please enter hours minutes and seconds in Sarajevo : ");
    scanf("%d %d %d ", &vrst, &vrmn, &vrsc);

    printf("Please enter date and time ");
    scanf("%d %d", &d, &m);

     if(m<3)
            {
              nvrst=vrst+2;
              printf("Time in Sarajevo is %d %d %d ", nvrst, vrmn, vrsc);
            }
     if(m==3 && d<31)
            {
              nvrst=vrst+1;
              printf("Time in Sarajevo is %d %d %d ", nvrst, vrmn, vrsc);
            }
    if(m==3 && d==31)
            {
              nvrst=vrst+2;
              printf("Time in Sarajevo is %d %d %d ", nvrst, vrmn, vrsc);
            }

    if(m>3 && m<=9 )
            {
              nvrst=vrst+2;
              printf("Time in Sarajevo is %d %d %d ", nvrst, vrmn, vrsc);
            }
    if(m==10 && d<27)
            {
              nvrst=vrst+2;
              printf("Time in Sarajevo is %d %d %d ", nvrst, vrmn, vrsc);
            }
    if(m==10 && d>=27)
            {
              nvrst=vrst+1;
              printf("Time in Sarajevo is %d %d %d ", nvrst, vrmn, vrsc);
            }
    if(m>10)
            {
              nvrst=vrst+1;
              printf("Time in Sarajevo is  %d %d %d ", nvrst, vrmn, vrsc);
            }

    return 0;
}
4

3 に答える 3

1

最初の scanf() の最後のスペースが問題です:

scanf("%d %d %d ", &vrst, &vrmn, &vrsc);

それを削除すると、プログラムは思い通りに動作します。

scanf("%d %d %d", &vrst, &vrmn, &vrsc);
于 2013-11-01T21:17:59.450 に答える
1

のすべてのスペースを削除する必要はありませんscanf。最後のものを削除するだけです

scanf("%d %d %d", &vrst, &vrmn, &vrsc);
               ^ - Remove this space
于 2013-11-01T21:19:01.887 に答える