輸入錯誤,運行成功
#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;???
運行成功,輸出錯誤
x+y=7
x-y=13
x*y=-30
x/y=-3
這是為什么
2017-11-06
1.一個%是格式字符開始的標志,“%%”中第一個%被叫做脫逸或逃逸字符,跟轉義字符的功能差不多。如%d一樣在編譯的時候會被替換而沒有了,所以就稱%為逃逸或脫逸字符。
2.而這里的錯誤是printf("x%y=%d\n",x%y),正確是printf("x%%y=%d\n",x%y)
2017-11-05
?printf("x%y=%d\n", x%y??? ); ?中前面部分的%y系統可能理解成是類似%d這樣的了,所以改成再加一個%,變成x%%y區分開,其他不變。
2017-11-05
是輸出錯誤吧,一共要輸入5個式子,你只輸出了4個,最后的printf("x%y=%d\n", x%y??? ); ?這里面的%要double,即printf("x%%y=%d\n", x%y??? );?