1. 給定兩個整形變數的值,將兩個值的內容進行交換。
#include #include int main()
引入第三個臨時變數實現兩個變數的交換。
2. 不允許建立臨時變數,交換兩個數的內容
#include #include int main()
可能出現的問題:num1或num2很大,num1+num2的結果溢位,產生錯誤的結果。
#include #include int main()
這樣就不會導致相加超過型別上限導致錯誤。
3.求10 個整數中最大值。
#include #include int main()
; int maxnum = numarr[0];
int n = sizeof(numarr) / sizeof(numarr[0]);
for (int i = 1; i < n; i++) }
printf("10個數里最大值為: %d\n" , maxnum);
system("pause");
return 0;
}
4.將三個數按從大到小輸出。
#include #include int main()
else
}else if (num2 >= num1 && num2 >= num3)
else
}else
else
}system("pause");
return 0;
}
5.求兩個數的最大公約數。
#include #include int main()
}} printf("最大公約數為: %d\n", maxcommondivisor);
system("pause");
return 0;
}
第一次在迴圈條件處,寫成了 i <= (num1 > num2) ? num2 : num1,根據優先順序變成了 (i <= (num1 > num2) )? num2 : num1,
不是想要的結果所以應該整體加上括號 i <= ((num1 > num2) ? num2 : num1)才能正確執行。
C語言 練習2
給定兩個整形變數的值,將兩個值的內容進行交換。include include intmain int arr2 int len sizeof arr1 sizeof arr1 0 int i 0 for i 0 i len i for i 0 i len i printf n for i 0 i l...
C語言 指標練習 2
int main 輸出結果 ff ff ff fc 4 分析 int main int ptr1 int aa 1 int ptr2 int aa 1 printf d d ptr1 1 ptr2 1 return 0 輸出結果 10 5 分析 aa,取的是二維陣列的位址,加1,跳過整個陣列,指向了...
C語言簡單練習(2)
給定兩個整形變數的值,將兩個值的內容進行交換。不允許建立臨時變數,交換兩個數的內容 附加題 求10 個整數中最大值。3.求10 個整數中最大值。將三個數按從大到小輸出。將三個數按從大到小輸出。求兩個數的最大公約數。求兩個數的最大公約數。void jiaohuan void jiaohuan2 voi...