问答详情
源自:3-2 算术运算符

为什么第111段的x%y要改成x%%y

#include <stdio.h>

int main()

{

    int x,y;

    x = 10;

    y = -3;

    printf("x+y=%d\n",x+y);  

    printf("x-y=%d\n",x-y);

    printf("x*y=%d\n",x*y);

    printf("x/y=%d\n",x/y);

    printf("x%%y=%d\n",x%y);  

    return 0;    

}

而不能是

#include <stdio.h>

int main()

{

    int x,y;

    x = 10;

    y = -3;

    printf("x+y=%d\n",x+y);  

    printf("x-y=%d\n",x-y);

    printf("x*y=%d\n",x*y);

    printf("x/y=%d\n",x/y);

    printf("x%y=%d\n",x%y);  

    return 0;    

}


提问者:憨憨Paul 2018-06-19 18:24

个回答

  • 慕盖茨3383877
    2018-06-19 20:08:07

    因为如果你用%编译器会把它和它后面的字母识别成格式说明用%%来避免这个问题。