C++ Primer Plus(第五版)编程习题解答.doc

上传人:asd****56 文档编号:79332752 上传时间:2023-03-21 格式:DOC 页数:73 大小:333KB
返回 下载 相关 举报
C++ Primer Plus(第五版)编程习题解答.doc_第1页
第1页 / 共73页
C++ Primer Plus(第五版)编程习题解答.doc_第2页
第2页 / 共73页
点击查看更多>>
资源描述

《C++ Primer Plus(第五版)编程习题解答.doc》由会员分享,可在线阅读,更多相关《C++ Primer Plus(第五版)编程习题解答.doc(73页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、Solutions for Programming Exercises in C+ Primer Plus, 5th EditionChapter 2/ pe2-2.cpp#include int main(void) using namespace std; cout furlongs; double feet; feet = 220 * furlongs; cout furlongs furlongs = feet feetn; return 0;/ pe2-3.cpp#include using namespace std;void mice();void run();int main(

2、) mice(); mice(); run(); run(); return 0;void mice() cout Three blind micen;void run() cout See how they runn;/ pe2-4.cpp#include double C_to_F(double);int main() using namespace std; cout C; double F; F = C_to_F(C); cout C degrees Celsius = F degrees Fahrenheitn; return 0;double C_to_F(double temp)

3、 return 1.8 * temp + 32.0;Chapter 3/ pe3-1.cpp#include const int Inch_Per_Foot = 12;int main(void) using namespace std;/ Note: some environments dont support the backspace character cout ht_inch; int ht_feet = ht_inch / Inch_Per_Foot; int rm_inch = ht_inch % Inch_Per_Foot; cout Your height is ht_fee

4、t feet, ; cout rm_inch inch(es).n; return 0;/ pe3-3.cpp#include const double MINS_PER_DEG = 60.0;const double SECS_PER_MIN = 60.0;int main() using namespace std; int degrees; int minutes; int seconds; double latitude; cout Enter a latitude in degrees, minutes, and seconds:n; cout degrees; cout minut

5、es; cout seconds; latitude = degrees + (minutes + seconds / SECS_PER_MIN)/MINS_PER_DEG; cout degrees degrees, minutes minutes, seconds seconds = latitude degreesn; return 0; / pe3-5.cpp#include int main(void) using namespace std; cout miles; cout gallons; cout Your car got miles / gallons; cout mile

6、s per gallon.n; return 0;/ pe3-6.cpp#include const double KM100_TO_MILES = 62.14;const double LITERS_PER_GALLON = 3.875;int main ( void ) using namespace std; double euro_rating; double us_rating; cout euro_rating; / divide by LITER_PER_GALLON to get gallons per 100-km / divide by KM100_TO_MILES to

7、get gallons per mile / invert result to get miles per gallon us_rating = (LITERS_PER_GALLON * KM100_TO_MILES) / euro_rating; cout euro_rating liters per 100 km is ; cout us_rating miles per gallon.n; return 0;Chapter 4/ pe4-2.cpp - storing strings in string objects#include #include int main() using

8、namespace std; string name; string dessert; cout Enter your name:n; getline(cin, name); / reads through newline cout Enter your favorite dessert:n; getline(cin, dessert); cout I have some delicious dessert; cout for you, name .n; return 0; / pe4-3.cpp - storing strings in char arrays#include #includ

9、e const int SIZE = 20;int main() using namespace std; char firstNameSIZE; char lastNameSIZE; char fullName2*SIZE + 1; cout firstName; cout lastName; strncpy(fullName,lastName,SIZE); strcat(fullName, , ); strncat(fullName, firstName, SIZE); fullNameSIZE - 1 = 0; cout Heres the information in a single

10、 string: fullName endl; return 0; / pe4-5.cpp/ a candybar structurestruct CandyBar char brand40; double weight; int calories; #include int main() using namespace std; /introduces namespace std CandyBar snack = Mocha Munch, 2.3, 350 ; cout Brand name: snack.brand endl; cout Weight: snack.weight endl;

11、 cout Calories: snack.calories endl; return 0;/ pe4-7.ccp#include const int Slen = 70;struct pizza char nameSlen; float diameter; float weight;int main(void) using namespace std; pizza pie; cout What is the name of the pizza company? ; cin.getline(pie.name, Slen); cout pie.diameter; cout pie.weight;

12、 cout Company: pie.name n; cout Diameter: pie.diameter inchesn; cout Weight: pie.weight ouncesn; return 0;Chapter 5/ pe5-2.cpp#include int main(void) using namespace std; double sum = 0.0; double in; cout in; while (in != 0) sum += in; cout Running total = sum n; cout in; cout Bye!n; return 0;/ pe5-

13、4.cpp/ book sales#include const int MONTHS = 12;const char * monthsMONTHS = January, February, March, April, May, June, July, August, September, October, November, December;int main() using namespace std; /introduces namespace std int salesMONTHS; int month; cout Enter the monthly sales for C+ for F

14、ools:n; for (month = 0; month MONTHS; month+) cout Sales for monthsmonth salesmonth; double total = 0.0; for (month = 0; month MONTHS; month+) total += salesmonth; cout Total sales: total endl; return 0;/ pe5-6.cpp#include struct car char name20; int year;int main(void) using namespace std; int n; c

15、out n; while(cin.get() != n) / get rid of rest of line ; car * pc = new car n; int i; for (i = 0; i n; i+) cout Car # (i + 1) :n; cout Please enter the make: ; cin.getline(pci.name,20); cout pci.year; while(cin.get() != n) / get rid of rest of line ; cout Here is your collection:n; for (i = 0; i n;

16、i+) cout pci.year pci.name n; delete pc; return 0;/ pe5-7.cpp - count words using C-style string #include #include / prototype for strcmp()const int STR_LIM = 50;int main() using namespace std; char wordSTR_LIM; int count = 0; cout word & strcmp(done, word) +count; cout You entered a total of count

17、words.n; return 0; / pe5-9.cpp/nested loops #include int main() using namespace std; /introduces namespace std int rows; int row; int col; int periods; cout rows; for (row = 1; row = rows; row+) periods = rows - row; for (col = 1; col = periods; col+) cout .; / col already has correct value for next

18、 loop for ( ; col = rows; col+) cout *; cout endl; return 0;Chapter 6/ pe6-1.cpp#include #include int main( ) using namespace std; /introduces namespace std char ch; cin.get(ch); while(ch != ) if (!isdigit(ch) if (isupper(ch) ch = tolower(ch); else if (islower(ch) ch = toupper(ch); cout ch; cin.get(

19、ch); return 0;/ pe6-3.cpp#include int main(void) using namespace std; cout Please enter one of the following choices:n; cout c) carnivore p) pianistn ch; while (ch != c & ch != p & ch != t & ch != g) cout ch; switch (ch) case c : cout A cat is a carnivore.n; break; case p : cout Radu Lupu is a piani

20、st.n; break; case t : cout A maple is a tree.n; break; case g : cout Golf is a game.n; break; default : cout The program shouldnt get here!n; return 0;/ pe6-5.cpp/ Neutronia taxation#include const double LEV1 = 5000;const double LEV2 = 15000;const double LEV3 = 35000;const double RATE1 = 0.10;const

21、double RATE2 = 0.15;const double RATE3 = 0.20;int main( ) using namespace std; double income; double tax; cout income; if (income = LEV1) tax = 0; else if (income = LEV2) tax = (income - LEV1) * RATE1; else if (income = LEV3) tax = RATE1 * (LEV2 - LEV1) + RATE2 * (income - LEV2); else tax = RATE1 *

22、(LEV2 - LEV1) + RATE2 * (LEV3 - LEV2) + RATE3 * (income - LEV3); cout You owe Neutronia tax tvarps in taxes.n; return 0;/ pe6-7.cpp#include #include int main() using namespace std; string word; char ch; int vowel = 0; int consonant = 0; int other = 0; cout word; while ( word != q) ch = tolower(word0

23、); if (isalpha(ch) if (ch = a | ch = e | ch = i | ch = o | ch = u) vowel+; else consonant+; else other+; cin word; cout vowel words beginning with vowelsn; cout consonant words beginning with consonantsn; cout other othersn; return 0; / pe6-8.cpp - counting characters#include #include / file I/O sup

24、pport#include / support for exit()const int SIZE = 60;int main() using namespace std; char filenameSIZE; char ch; ifstream inFile; / object for handling file input cout Enter name of data file: ; cin.getline(filename, SIZE); inFile.open(filename); / associate inFile with a file if (!inFile.is_open()

25、 / failed to open file cout Could not open the file filename endl; cout ch; / get first value while (inFile.good() / while input good and not at EOF count+; / one more item read inFile ch; / get next value cout count characters in filename endl; inFile.close(); / finished with the file return 0;Chap

26、ter 7/pe7-1.cpp - harmonic mean#include double h_mean(double x, double y);int main(void) using namespace std; double x,y; cout x y & x * y != 0) cout harmonic mean of x and y = h_mean(x,y) x & x != 0) cin y; if (y = 0) break; .*/ cout Byen; return 0;double h_mean(double x, double y) return 2.0 * x *

27、 y / (x + y);/ pe7-3.cpp#include struct box char maker40; float height; float width; float length; float volume;void showbox(box b);void setbox(box * pb);int main(void) box carton = Bingo Boxer, 2, 3, 5; / no volume provided setbox(&carton); showbox(carton); return 0;void showbox(box b) using namesp

28、ace std; cout Box maker: b.maker nheight: b.height nlwidth: b.width nlength: b.length nvolume: b.volume volume = pb-height * pb-width * pb-length;/ pe7-4.cpp - probability of winning#include long double probability(unsigned numbers, unsigned picks);int main() using namespace std; double total, choic

29、es; double mtotal; double probability1, probability2; cout total choices) & choices = total) cout mtotal) break; cout The chances of getting all choices picks is one in (probability1 = probability(total, choices) ) .n; cout The chances of getting the megaspot is one in (probability2 = probability(mtotal, 1) ) .n; cout You have one chance in ; cout probability1 *

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 其他杂项

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com