1、第二章 1第三章 2第四章 3第五章 8第六章 14第七章 18第八章 23第九章 27第十章 32第十一章 33第十二章 35第十三章 38第十四章 40第十五章 43第十六章 46第二章、完整代码结构:预处理头文件主函数语句 1;/注释语句 n;、cout ”改为“a;cout r;s=pi*r*r;/计算面积cout =b(a+b)*c)!=0 或(a+b)*c(a=1?b:c)1 或(a!=1?c:b)1,注意条件运算符的优先级低于关系运算符b!=0 /(!C)=0,(k+3*0)=k,m=k,所以 m=4else/配第二个 if,所以不运行k=k*!m!=c;couta;if (a0
2、) cout 0?a%10:-a%10) a oper1 b oper2 c;if (oper2=* | oper2=/) break;case /:if (c!=0) temp=b/c;else cout number;cout year month date;switch (month)case 12:numOfDay=numOfDay+30;case 11:numOfDay=numOfDay+31;case 10:numOfDay=numOfDay+30;case 9:numOfDay=numOfDay+31;case 8:numOfDay=numOfDay+31;case 7:numO
3、fDay=numOfDay+30;case 6:numOfDay=numOfDay+31;case 5:numOfDay=numOfDay+30;case 4:numOfDay=numOfDay+31;case 3:numOfDay=numOfDay+(year%4=0 case 2:numOfDay=numOfDay+31;case 1:numOfDay=numOfDay+date;cout ans;if (ans=a+b)numOfRight+;cout ans;if (ans=a-b)numOfRight+;cout inquiry;while (inquiry!=N cout ans;
4、if (ans=a+b)numOfRight+;cout ans;if (ans=a-b)numOfRight+;cout ans;if (ans=a*b)numOfRight+;cout ans;if (ans=a/b)numOfRight+;cout inquiry;while (inquiry!=N cout b) return a;else return b; void char(char c);/输出功能void char(char c)/多了一个分号cout a b c;if (delta(a,b,c)temp;cout scoreji)/比分较大的胜利winsi+;return
5、max(wins,4);/求出四个中胜利次数最多的球队char mgoal(int score4,int r,int c)int goal4=0,0,0,0;for (int i=0;imax)max=resulti;maxi=i;switch (maxi)/根据下标判断队伍名称case 0:return A;case 1:return B;case 2:return C;case 3:return D;default:/防止发生错误return e;第八章 P85 P95 重点1、说出下列语句中包含的指针类型char *cptr;/字符型指针const int *iptr;/整型常量指针fl
6、oat array4;/浮点型指针int *ipptr;/指向整型指针的指针2、分析下列函数原型中的参数和返回值情况int max( int *array,int size);/返回整型数,参数为整型指针和一个整型数char * str(const char *string1,const char *string2);/返回字符指针,参数为两个字符常量指针int main (char * argv);/返回空类型,参数为字符指针数组3、指出下列程序的错误之处#include “iostream.h“int main()int *iptr;/未经初始化,直接使用,较为合理的做法应该申请堆内存fo
7、r (int i=0;iiptri;/修改了未知位置的数据for (int j=5;j=0;j-)cout size;/输入的 size 是一个不太大的正整数iptr=new int size;for (int i=0;i(*iptr+);/堆内存首元素地址被修改,导致内存泄漏delete iptr;/忘记了 ,造成内存泄漏return 0;4、根据运行结果完成代码#include “iostream.h“void strcopy(char *string1,char *string2);int main()char str1=“Tomato Studio“;char *str2;int si
8、ze=sizeof(str1)/sizeof(char);str2=new charsize;cout num;emptr=new employeenum;cout emptr3-id;/应该使用“.”操作符cout emptr3-salary; /应该使用“.”操作符display(emptr3);/参数应该是结构指针,而不是结构变量return 0;/忘记释放内存void display(employee *p)cout ”操作符cout ”操作符5、根据运行结果完成代码假设 9.6 节的函数都已经写好,现在要求编写一个函数 reverse,把一个已经存在的链表倒置。#include “i
9、ostream.h“struct nodechar data;node *next;node * create();/创建链表void showList(node *head);/遍历链表node * search(node *head,char keyWord);/查找结点void insert(node * /插入结点void Delete(node * /删除结点void destory(node * /清除链表void reverse(node * /实现链表倒置int main()node *head=NULL;head=create();showList(head);cout ne
10、xt;p-next=newhead;newhead=p;head=newhead;6、根据要求编写程序(参考代码)P117#include “iostream.h“struct employeechar name7;float salary;void sort(employee emp,int numOfEmp);int main()employee emp5=“Jimmy“,1250.04f,“Tim“,1280.07f,“Rose“,1390.08f,“Tommy“,1490.35f,“Jon“,1320.54f;sort(emp,5);return 0;void sort(employee emp,int numOfEmp)employee *ptr=new employee*numOfEmp;for (int i=0;isalaryptrmax-salary)max=k;employee * ptrtemp;ptrtemp=ptrmax;ptrmax=ptrj;ptrj=ptrtemp;for (int l=0;lname salary endl;delete ptr;#include “iostream.h“struct nodechar operation;