其他章節答案
/*project 1*/
#includeint main(void)
/*project 2*/
#includeint main(void)
else
break;
}n++;
if(n == 10)
}return 0;
} 或者
#includeint main(void)
else
printf("%c %d,",ch,ch);
n++;
if(n == 10)
}return 0;
} /*project 3*/
#includeint main(void)
else if (ch >= 'a' && ch <= 'z')
}printf("大寫字母個數:%d\n小寫字母個數:%d",n,m);
return 0;
} 或者
#include#includeint main(void)
else if (islower(ch))
}printf("大寫字母個數:%d\n小寫字母個數:%d",n,m);
return 0;
} /*project 4*/
/*假設字母間均用空格隔開,標點符號後若有單詞則也加空格*/
#include#includeint main(void)
else if (ch == ' ')
}printf("平均每個字母的單詞數:%d\n",n/m);
return 0;
} /*project 5*/
#includeint main(void)
else if (response == 'l')
else
printf("sorry,i can't understand only y or u or l.\n");
while(getchar() != '\n')
continue;
}printf("i knew i could do it!\n");
return 0;
}/*project 6*/
#includechar get_first(void);
int main(void)
char get_first(void)
/*project 7*/
#include#define overtime 1.5
#define tax11 300
#define tax12 0.15
#define tax21 150
#define tax22 0.2
#define tax3 0.25
#define time 40
int main(void)
if(num != 'q')
switch(num)
if(time <= time)
else if(time > time)
printf("工資總額:%.2f$.\n稅金:%.2f$.\n淨收入:%.2f$.\n",pay,tax,pay - tax);
}else
printf("done!");
return 0;
}/*project 8*/
#includeint main(void)
switch(choice)
printf("enter second number: ");
while(scanf("%f",&second) != 1)
printf("%g + %g = %g\n",first,second,first+second); /*%g能自動選擇合適的格式輸出*/
break;
case 's':
printf("enter first number: ");
while(scanf("%f",&first) != 1)
printf("enter second number: ");
while(scanf("%f",&second) != 1)
printf("%g - %g = %g\n",first,second,first-second);
break;
case 'm':
printf("enter first number: ");
while(scanf("%f",&first) != 1)
printf("enter second number: ");
while(scanf("%f",&second) != 1)
printf("%g * %g = %g\n",first,second,first*second);
break;
case 'd':
printf("enter first number: ");
while(scanf("%f",&first) != 1)
printf("enter second number: ");
while((scanf("%f",&second) != 1))
const float epsinon = 0.000001;
/*由於浮點數的表示是不精確的,所以不能直接比較兩個數是否完全相等。
一般都是在允許的某個範圍內認為某個個浮點數相等
最好設定個變數0.000001再比較,直接比較容易出錯*/
while(( second >= -epsinon ) && ( second <= epsinon ))
printf("%g / %g = %g\n",first,second,first/second);
break;
default:
break;
}while(getchar() == eof)
break;
if (choice == 'q')
printf("enter the operation of you choice:\n");
printf("a) add \tb) subtract\n");
printf("c) multiply\td) divide\n");
printf("q) quit\n");
}return 0;
}
c primer Plus第八章筆記
該書應從8章之後開始學習 現在開始第8章 p199 字元輸入輸出 緩衝區 是乙個存放內容的臨時儲存區域 為什麼要設定緩衝區 一 將若干個字元作為乙個塊進行傳輸比逐個傳送這些字元耗時少。二 如果輸入了乙個錯的字元,可以用鍵盤的更正功能進行修改。當按下回車鍵的時候就傳送輸入的字元。但是,互動性的程式需要...
C primer plus 第八章(一)
a int a 10 b int ob a c int p a d int function int const int 問 是引用?取位址?答 b表示引用,即 ob是a的別稱,從此ob與a就綁在一起同生同變,簡直就是乙個人 c中 表示取位址 d中函式原型中的形參也是 引用 注意第二形參的 cons...
C Primer Plus 隨記(第八章)
1.建立引用變數 int rat int roatents rat 此式中 不是位址運算子,而是型別表示符,roatents是rat的別名,他們指向相同的值和記憶體單元,改變 roatents的值,rat也會變。roatents是乙個引用變數 int prats rat prat是指標 roaten...