整數除於整數,還是整數。參與運算的操作數必須是同類型。
1/2的值是0。參與運算的操作數是什麼類型,得出的值就是什麼類型。 10.5 + 10將右邊的10提升為了double類型 自動類型提升。
int b = 10.5 + 1.7; 自動將大類型轉換為了小類型,會丟失精度。
double a = (double)1 / 2; 注:參與運算的都是整型,所以要強轉一下.
%兩側只能是整數。
正負性取決於%左側的數值。
#include <stdio.h> int main() { int input; int minute; int second; printf("請輸入一個時間值(秒):\n"); scanf("%d",&input); minute = input / 60; second = input % 60; printf("您輸入的是:%d分%d秒\n",minute,second); return 0; }
int a = 10; int b; b= a++ + ++a //注意結果為 22 10++是錯誤的 10=10+1 常量
int size = sizeof 10; //4 int size = sizeof 10.9; //8 int a; int size = sizeof a; //4 // sizeof(常量/變量) 可省略括號 int size = sizeof (int); // 4 sizeof (數據類型) 不可省括號
C語言規定,任何數值都有真假性,任何非0值都為“真”,只有0才為“假”。也就是說,108、-18、4.5、-10.5等都是“真”,0則是“假”。
關系運算符的運算結果只有2種:如果條件成立,結果就為1,也就是“真”;如果條件不成立,結果就為0,也就是“假”
#include <stdio.h> int main() { int a = 3; int b = 7; int result = b>a; //result 返回為 1 printf("result = %d\n",result); return 0; }
關系運算符中==、!=的優先級相等,<、<=、>、>=的優先級相等,且前者的優先級低於後者:2==3>1
關系運算符的結合方向為“從左往右”: 4>3>2
關系運算符的優先級小於算術運算符:3+4>8-2