#include <stdio.h>
#include <ctype.h> // 包含判斷字元是否為字母的函數
int main() {
float salary, newSalary;
char input[50]; // 用於存儲輸入的字串
printf("請輸入員工的薪資(或輸入A~Z之間任一字母以結束): ");
while (scanf("%s", input) && !isalpha(input[0])) { // 檢查是否輸入了字母
// 將字串轉換為薪資浮點數
salary = atof(input);
// 如果薪資低於50000,則增加3%
if (salary < 50000) {
newSalary = salary * 1.03;
// 如果調整後的薪資超過50000,則將薪資設置為50000
if (newSalary > 50000) {
newSalary = 50000;
}
} else {
// 薪資已經是50000或更高,不進行調整
newSalary = salary;
}
printf("調整後的薪資是: %.2f\n", newSalary);
printf("請輸入下一位員工的薪資(或輸入A~Z之間任一字母以結束): ");
}
printf("薪資調整完畢。\n");
return 0;
}
這段程式首先提示使用者輸入員工薪資,然後讀取輸入。如果輸入的是字母(使用isalpha()檢查第一個字元),程式將結束。如果輸入的是薪資數值,程式將根據規則計算新薪資並列印出來。然後再次提示用戶輸入下一個員工的薪資,直到輸入字母為止。
為了將該代碼片段運行,需要確保環境中已經配置了C語言的編譯器。在Linux環境下,可以使用gcc編譯器來編譯和運行這段代碼。在Windows環境下,可以使用如Visual Studio、Code::Blocks等IDE,或者配置好的MinGW或Cygwin環境。