小白入門.輸入一個整數,判斷他的奇偶性,若偶則再判斷一步.(輸出錯誤取值錯誤)

 

#include<stdio.h>
int main()
{
    int a,b,c;
    scanf("%d",&a);
    b=a%2;
    if(b==0)
    {
        printf("%d is even even\n",a);
        c=a/2%2;
        if(c==0)
        {
            printf("Half of %d is also even\n",a);
        }
        else
        {
            printf("Half of %d is not even\n",a);
        }
        
    }
    else
        {
            printf("%d is not even\n",a);
        }
    return 0;
}

                        

 出現問題:函數

                         

第一行輸出數字是個隨機數,並非待判斷的整數spa

錯誤緣由按格式輸出函數printf()格式書寫錯誤,將(「%d」,a)寫成了(「」,&a),多加了取地址符&code

 printf("%d is even even\n",a); 輸出函數printf(),待輸出值通常前面不須要加取地址符&。blog

而函數scanf(),取值通常須要加取地址符&。io

 

注意:通常若浮點數和0比較,近似法比較更爲準確。class

例:a<=1e-7隨機數

若要求精度不高,EPS取值1e-1,便可。im

相關文章
相關標籤/搜索