作者:tangjiaqian
題目1:
#include<stdio.h>
int main()
{
printf("hello world\n");
return 0;
}
題目2:
#include<stdio.h>
int main()
{
int a = 10 ;
float b = 4.5 ;
char c = 'A';
printf("a = %d\n", a);
printf("a = %f\n", b);
printf("a = %c\n", b);
printf("End of the program\n");
return 0;
}
題目3:
#include<stdio.h>
int main()
{
printf("Data type Number of bytes \n");
printf("------------ --------------------\n");
printf("char %d\n", sizeof(char));
printf("int %d\n", sizeof(int));
printf("short int %d\n", sizeof(short));
printf("long int %d\n", sizeof(long));
printf("float %d\n", sizeof(float));
printf("double %d\n", sizeof(double));
return 0;
}
題目4:
#include<stdio.h>
int main()
{
double temC, temF;
temF = 100;
temC = 5 * (temF - 32) / 9;
printf("華氏溫度%5.2f對應的攝氏溫度是%5.2f\n", temF, temC);
return 0;
}
題目5:
#include<stdio.h>
int main()
{
int a = 6, b = 5, c = 5;
int triC;
triC = a + b + c;
printf("三角形的周長是:%d\n", triC);
return 0;
}
題目6:
將 short 型別變數 short_value 設定為它的最大值 32767 ,並且再加一的時候,會發生溢位,因為 short 型別不能表示大於 32767 的值,所以它會從最大值迴繞到最小值。
在二進位制表示中,32767 是 0111 1111 1111 1111,當在這個基礎上加一,就變成了 1000 0000 0000 0000,這在有符號的二進位制表示中等價於 -32768
題目7:
(a)-87
(b)-20
(c)0
(d)-2
題目8:
如果 i != j 成立,那麼 i != j 的結果為1,然後 1 < k 就會根據 k 的值來決定真假。
如果 i == j,那麼 i != j 的結果為0,接著 0 < k 就會根據 k 的值來決定真假。
題目9:
(a)i = 3,d = 3.0
(b)i = 3,d = 3.5。
題目10:
條件運算子(Conditional Operator),也被稱為三元運算子(Ternary Operator),在C語言及其衍生的語言(如C++、Java等)中提供了一種簡潔的方式來根據條件選擇不同的值。條件運算子的語法如下:
條件表示式 ? 值1 : 值2;
這裡的解釋如下:
- 條件表示式:一個返回布林值的表示式(非零為真,零為假)。
- ?:如果條件表示式的值為真(非零),則計算並返回 值1。
- ::如果條件表示式的值為假(零),則計算並返回 值2。
例子
下面是一些使用條件運算子的例子:
示例1: 最簡單的使用
int max_value = (a > b) ? a : b;
這段程式碼將 a
和 b
中較大的值賦給了 max_value
變數。
示例2: 複雜一點的情況
int result = (score >= passing_score) ? "Passed" : "Failed";
這個例子中,score
是一個分數,passing_score
是及格分數。如果 score
大於或等於 passing_score
,則 result
會被賦值為字串 "Passed"
;否則,賦值為 "Failed"
。注意,這裡的例子使用了字串,實際上在C語言中,你需要確保字串是以空字元終止的,並且 result
需要是一個指向足夠長度字串的指標。
示例3: 使用在函式返回值中
int min(int x, int y) {
return (x < y) ? x : y;
}
這個函式接受兩個引數 x
和 y
,並返回較小的一個。
注意事項
雖然條件運算子可以簡化一些程式碼,使其更加緊湊,但在複雜的情況下使用它可能會降低程式碼的可讀性。此外,巢狀使用條件運算子可能會使程式碼變得難以理解和維護。因此,在適當的情況下,建議使用傳統的 if-else
語句來代替條件運算子,尤其是在邏輯較為複雜的時候。
示例對比
使用傳統的 if-else
語句來實現上面的 min
函式:
int min(int x, int y) {
if (x < y) {
return x;
} else {
return y;
}
}
兩種方式都能達到同樣的效果,但 if-else
語句可能更容易理解。選擇哪一種取決於具體情況和個人偏好。