资源描述
#include /包含 iostream.h 头文件 /float 型溢出main() float x=3.5e14; coutx=xendl;/声明变量,并初始化 coutx*x=x*xendl;int a=010,b=10,c=0X10; coutx*x*x=x*x*xendl;/以十进制形式显示数据coutDEC:;cout a=a;cout b=b; #include cout c=cendl; main()/以八进制形式显示数据 /x,y 为操作数, c 为运算符coutOCT:; int x,y,z;coutoct; /指定八进制输出 char c1;cout a=xc1y; /c1cout b=b;cout c=cendl; /多路选择语句选择不同表达式计算语句switch(c1) /以十六进制形式显示数据 case +:coutx+y=x+yendl;coutHEX:; break;couthex; /指定十六进制输出 case -:coutx-y=x-yendl;cout a=a; break;cout b=b; case *:coutx*y=x*yendl;cout c=cendl; break;case /:coutx/y=x/yendl;/八、十和十六进制数混合运算并输出 break;couta+b+c=; case %:coutx%y=x%yendl;coutdec; /恢复十进制输出 break;couta+b+cendl; default :coutWrong !endl; /当不符合上述情况时执行本子句/测试八、十和十六进制输入 couta; coutb;coutc;coutDEC:decendl; /指定十进制输出couta=aendl; #includecoutb=bendl; float x=365.5; /声明全局变量coutc=cdx; double w=x+y;coutdy; double x=1.414,y=1.732,z=3.14;coutdx+dy=dx+dyendl; coutinner:x=xendl;coutdx-dy=dx-dyendl; coutinner:y=yendl;coutdx*dy=dx*dyendl; coutinner:z=zendl;coutdx/dy=dx/dyendlendl; coutouter:w=wendl;/coutfx%fy=fx%fyendl; Error! cout:x=:xendl; /访问重名的全局变量/测试 float 和 double 类型数据的有效位 coutouter:x=xendl;fx=10.0;fy=6.0; coutouter:y=yendl;float fz=fx/fy; coutouter:w=wendl;dx=10.0;dy=6.0;double dz=dx/dy; /coutinner:z=zendl; 无效coutfz=; cout:x=:xendl; /访问重名的全局变量coutsetprecision(20)fx/fy=fzendl; coutdz=; #includemain() coutsetprecision(20)dx/dy=dzendlendl; /显示 1,2,3.10for(int i=1;i=10;i+)1couti ; int s=0,n=0;cout=1;j-) while(n100);coutj ; couts=sendl;coutendl;/累加键盘输入的数据/显示 1,3,5.9 double x,sum=0.0;for(int k=1;k=10;k=k+2) do coutk ; coutx=;coutx;sum+=x;/显示 ABC.Z while(x!=0);for(char c=A;c=Z;c+) coutsum=sumendl;coutc; coutendl;#include/显示 0,0.1,0.2.1.0 main()for(float x=0;x=1.0;x=x+0.1) coutx ; /计算和打印打印乘法九九表coutendl; for (int i=1;i=9;i+) couti;/显示 0,0.1,0.2.1.0 for (int j=1;j=9;j+)for(float x1=0;x1=1.0+0.1/2;x1=x1+0.1) coutti*j=i*j;coutx1 ; coutendl;coutendl; /计算 s=1+2+3.+100int s=0; #includefor(int n=1;n=100;n+) main()s=s+n; couts=sendl; int x,sum=0; /定义标号 L1#include L1: coutx; if (x=-1)/计算 s=1+2+3.+100 goto L2; /无条件转移语句,转到 L2 语句处int s=0,n=1; elsewhile(n=100) sum+=x;s=s+n; goto L1; /无条件转移语句,转到 L1 语句处n+; /定义标号 L2 L2: coutsum=sumendl;couts=sendl; /累加键盘输入的数据double x,sum=0.0; #includecoutx; while(x!=0) /累加键盘输入的数据sum+=x; double x,sum=0.0;coutx; coutx;coutsum=sumendl; if (x=0) break; sum+=x;#include main() coutsum=sumendl; /计算 s=1+2+3.+1002#include max=a0;main() for (i=0;i=4;i+) int i; if (maxai)for (i=1;i=20;i+) max=ai;if (i%3=0) /能被 3 整除的整数, 返回进行下次循 index=i;环 continue; couti ; coutnMax=max index=index; coutendl; #include #define size 5#include main()main() /声明变量/声明数组和变量 int i,j;int a5,i,sum; float t,asize;double avg;/从键盘上为数组赋值/从键盘上循环为数组赋值 for (i=0;isize;i+)for (i=0;i5;i+) coutai=; coutaiai; cinai; /直接显示数组元素 /对数组按从小到大顺序排序couta0a1a2a3a4endl; for (i=0;isize-1;i+)for (j=i+1;jaj)for (i=0;i5;i+) coutai ; t=ai;coutendl; ai=aj;aj=t;/计算数组元素之和 ,并显示计算结果 sum=a0+a1+a2+a3+a4;coutsum=sumendl; /显示排序结果for (i=0;isize;i+)/利用循环计算数组的累加和 coutai ;for (sum=0,i=0;i5;i+) coutendl;sum+=ai;/输入要查找的数据/显示累加和及平均值 int value;coutsum=sumendl; int found; /找到为 1,否则为 0avg=sum/5.0; int low,high,mid;coutavg=avgendl; for (i=1;i=3;i+) coutvalue=;#include cinvalue;main() /二分法查找数组 aint i,max,index,a5; found=0;low=0;/从键盘上为数组赋值 high=size-1;for (i=0;i=4;i+) while(low=high) coutaiai; if (amid=value) found=1;/ 利用循环遍历数组,找出最大值的元素及其下标 break;3 if (amidvalue) coutendl;low=mid+1; elsehigh=mid-1; /找出该数组的最大元素及其下标 int h,l,Max=a00;if (found) for (i=0;i2;i+) coutThe valu found for (j=0;j3;j+)at:amid=amidendl; else if (Maxaij) coutThe value is not found!endl; Max=aij; h=i; l=j;#include main() /声明变量 coutMax:ahl=ahlendl;int i,j; float t,a5; #includemain()/从键盘上为数组赋值 for (i=0;i=4;i+) /声明字符数组和变量 char str6;coutaiai; /从键盘上输入字符串coutstr;for (i=0;i=3;i+) coutstrendl;for (j=i+1;j=4;j+)if (ai=aj) /按数组和下标变量两种方式显示字符数组 coutstrendl;t=ai; for (i=0;i6;i+)ai=aj; coutstri;aj=t; cout=0;i-)for (i=0;i=4;i+) coutstri;coutai ; coutendl;#include /将字符数组变成大写字母后输出main() for (i=0;i=5;i+) stri-=32; /小写字母转换成大写字母/声明二维数组及变量 coutstrendl; /显示字符串int a23,i,j; #include/从键盘上为数组 a 赋值 main()for (i=0;i2;i+) for (j=0;j3;j+) /声明变量和指针变量 int a,b,c,*ip;coutaijaij; /指针变量 ip 指向变量 a a=100;ip=&a; /使指针变量 ip 指向变量 a/显示数组 a couta=aendl;for (i=0;i2;i+) cout*ip=*ipendl;for (j=0;j3;j+) coutip=ipendl;coutaij ; /指针变量 ip 指向变量 b4ip=&b; /使指针变量 ip 指向变量 b cout*ip2=(*ip2)endl;b=200;coutb=bendl; /测试指针的自增自减运算和组合运算cout*ip=*ipendl; ip1+;coutip=ipendl; ip2+=4;cout*ip1=(*ip1)endl;/指针变量 ip 指向变量 c cout*ip2=(*ip2)endl;ip=&c; /使指针变量 ip 指向变量 b*ip=a+b; /测试指针变量之间的关系运算coutc=cip1;cout*ip=*ipendl; coutip1=nendl;coutip=ipendl; coutip2!=NULL=(ip2!=NULL)endl;#include /指针变量之间的减法main() n=ip2-ip1; coutip2-ip1=nendl;/声明数组、变量和指针变量 int a23,i,j; #includeint* ip; main()/从键盘上为数组 a 赋值 /声明字符型数组和指针变量for (i=0;i2;i+) /为数组 a 赋值 char str10;for (j=0;j3;j+) char *strip=str;coutaijaij; coutstr; /用字符数组输入字符串coutstr=strendl;/利用下标变量显示数组 a coutstrip=stripendl;for (i=0;i2;i+) coutstrip=;for (j=0;jstrip; /用字符指针变量输入字符串 coutstr=strendl;coutaij ; coutstrip=stripendl;coutendl; /利用指针变量改变其指向字符串的内容 *(strip+2)=l;coutstr=strendl;/利用指针变量显示数组 a coutstrip=stripendl;ip=&a00;for (i=0;i2;i+) /动态为字符型指针变量分配内存for (j=0;j3;j+) strip=new char(100); coutstrip=;coutaijstrip; / 用字符指针变量输入字符串coutip ; coutstr=strendl;cout*ipendl; coutstrip=stripendl;ip+; #include main() #include / 声明用于存放运动员号码的数组main() int h=1001,1002,1003,1004; / 声明用于存放运动员成绩的数组/声明数组、变量和指针变量 float x=12.3,13.1,11.9,12.1;int a=1,2,3,4,5,6; /声明用于存放运动姓名的字符型指针数组int *ip1,*ip2; char *p=Wang hua,Zhang jian,Li wei,Hua ming;/i,j,it 是用做循环控制变量和临时变量/测试指针的赋值运算 int i,j,it;ip1=a; /ft 用做暂存变量ip2=ip1; float ft;cout*ip1=(*ip1)endl; /pt 为字符型指针变量用做暂存指针变量5char *pt; coutZbk.pages=Zbk.pagesendl;coutZbk.price=Zbk.priceendl;/用选择法对数组 x 进行排序, 并相应调整数组 h 和 p 中的 cout-endl;数据for (i=0;i=3;i+) /对结构变量的输入输出for (j=i+1;j=3;j+) cout=xj) cinWbk.title;ft=xi,xi=xj,xj=ft; coutWbk.author;pt=pi,pi=pj,pj=pt; coutWbk.pages;coutWbk.price;for (i=0;i=3;i+) coutWbk:endl;couthi ,pi ,xiendl; coutWbk.title endl; coutWbk.authorendl;#include coutWbk.pagesendl;main() coutWbk.priceendl; cout-endl;/声明指针数组char *colors=Red,Blue,Yellow,Green; /结构变量之间的相互赋值/指向指针的指针变量 books temp;char *pt; temp=Wbk;couttemp:endl;/通过指向指针的变量访问其指向的内容 couttemp.titleendl;pt=colors; couttemp.authorendl;for (int i=0;i=3;i+) couttemp.pagesendl;coutpt=ptendl; couttemp.priceendl;cout*pt=*ptendl; cout*pt=*ptendl;pt+; #include main() #include int i;main() /定义结构类型 struct student /定义结构类型 int num;struct books char name10; float maths;char title20; float physics;char author15; float chemistry;int pages; double total;float price; ; ;/声明结构数组 st/声明结构变量 student st3;struct books Zbk=VC+ ,Zhang,295,35.5;books Wbk; /从键盘上为结构数组输入值cout num name maths physics chemistry/对结构变量的输出 endl;coutZbk:endl; for (i=0;i3;i+)coutZbk.title endl; coutZbk.authorendl; couti+1 ;coutZbk.pagessti.num;coutZbk.pricesti.name;cout-sti.maths;cinsti.physics;/对结组成员的运算 cinsti.chemistry;Zbk.pages+=10; Zbk.price+=0.5;6/计算每个学生的总成绩 for (i=0;i3;i+) /定义结构类型sti.total=sti.maths+sti.physics+sti.chemistry; struct human char name10;/输出结构数组各元素的值 int sex;for (i=0;i3;i+) int age; ;coutsti: ;coutsti.numt; /声明结构变量和结构指针 ,并初始化coutsti.namet; struct human x=WangPing,1,30,*p=&x;coutsti.mathst;coutsti.physicst; /利用结构指针显示结构中的数据coutsti.chemistryt; cout(*p).name=(*p).nameendl;coutsti.totalendl; cout(*p).sex=(*p).sexendl; cout(*p).age=(*p).ageendl; cout-endl;#includemain() /利用 new 运算符为 p 分配内存 p=new human;/定义结构类型struct human /从键盘上为 p 指向的结构对象赋值char name10; coutname=;int sex; cinp-name;int age; coutsex=; cinp-sex;coutage=;/声明结构变量和结构指针变量 ,并初始化 cinp-age;struct human x=WangPing,1,30,*p=NULL; cout-endl;/结构指针变量指向对象 /显示 p 所指结构对象的值p=&x; coutname=nameendl;coutsex=sexendl;/显示结构变量的值 coutage=ageendl;coutx.name=x.nameendl; cout-endl;coutx.sex=x.sexendl;coutx.age=x.ageendl; /显示结构变量的值coutx.name=x.nameendl;/利用结构指针显示结构对象中的数据 coutx.sex=x.sexendl;cout(*p).name=(*p).nameendl; coutx.age=x.ageendl;cout(*p).sex=(*p).sexendl;cout(*p).age=(*p).ageendl; /释放 p 指向的内存coutname=nameendl; delete p;coutsex=sexendl; coutage=ageendl; #includemain()/通过结构指针为结构对象输入数据 cout(*p).name; struct human cout(*p).sex; int sex;cout(*p).age; ;/显示结构变量的值 /声明结构数组和结构指针变量 ,并初始化coutx.name=x.nameendl; humancoutx.sex=x.sexendl; x=WeiPing,1,30,LiHua,1,25,LiuMin,0,23,*p=NUcoutx.age=x.ageendl; LL;include /用下标变量的输出结构数组的元素main() for (int i=0;i3;i+)7 main()coutxi.namet; coutxi.sext; /定义 date 结构coutxi.ageendl; struct date cout-endl; int year;int month;/用结构指针输出结构数组的元素 int day;for (p=x;p=&x2;p+) ;coutnamet; /定义 baby 结构coutsext; struct baby coutageendl; int num; float weight; date birthday; / date 为结构类型#include ;main() /声明 baby 结构变量并初始化/定义一个包含指针成员的结构类型 baby b1=10001,10,2002,12,25;struct test char *str; /下列是 baby 结构变量 b1 的引用。int *ip; coutb1.num=b1.numendl; x; coutb1.weight=b1.weightendl;coutb1.birthday.year=b1.birthday.yearendl;/使用结构变量 x 中的整型指针 ip coutb1.birthday.month=b1.birthday.monthendl;x.ip=new int; /分配 1 个单元 coutb1.birthday.day=b1.birthday.dayendl;*(x.ip)=100; cout-endl;coutx.ip:x.ipt*(x.ip)endl;cout-endl; /声明 baby 结构变量 temp,并进行赋值运算delete x.ip; baby temp;x.ip=new int5; /分配 5 个单元 temp=b1;for(int i=0;i5;i+) couttemp.num=temp.numendl;*(x.ip+i)=100+i; couttemp.weight=temp.weightendl;coutx.ip:endl; couttemp.birthday.year=temp.birthday.yearendl;for(i=0;i5;i+) couttemp.birthday.month=temp.birthday.monthendl;coutx.ip+it(*(x.ip+i)endl; couttemp.birthday.day=temp.birthday.dayendl;delete x.ip; cout-endl; #includemain()/使用结构变量 x 中的字符型指针 str x.str=new char(A); /分配 1 个单元 /定义名为 list 的递归结构coutx.str:(*x.str)endl; struct list cout-endl; char name10;delete x.str; int sex;x.str=new char5; /分配多个单元 int age;*x.str=G; list *next; /成员 next 为指向其自身结*(x.str+1)=o;构的指针*(x.str+2)=o; ;*(x.str+3)=d;*(x.str+4)=0; /使用递归结构变量coutx.str:x.strendl; list L1=WeiPing,1,35.5,NULL;delete x.str; coutL1:endl;cout-endl; coutnametL1.nameendl;coutsextL1.sexendl;/在声明结构变量时初始化 coutagetL1.ageendl;test y=Very Good!,NULL; coutnexttL1.nextendl;couty.str:y.strendl; couty.ip:y.ipendl; #include main()#include 8int i; int math;/定义名为 student 的递归结构 int computer;struct student float sum;char name10; student *forw; /forw 成员是前指针int math; student *next; /next 成员是后指针int computer; ;float sum;student *next; /next 成员是指向自身的结构指 /用 student 声明 3 个结构指针变量针 struct student *head,*tail,*temp;/申请第 1 块数据,并设置各结构指针的初值/用 student 声明 3 个结构指针变量 temp=new struct student; /申请内存struct student *head,*tail,*temp; head=temp; / 头指针tail=head; / 尾指针/申请第 1 块数据,并设置各结构指针的初值 head-forw=NULL;temp=new struct student; /申请内存head=temp; / 头指针 /循环为链表记录输入数据tail=head; / 尾指针 couttname Math Computerendl;for (i=1;i+) /循环为链表输入数据 coutit;couttname Math Computertemp-name;for (i=1;i+) if (temp-name0!=*)coutitemp-name; cintemp-mathtemp-computer;if (temp-name0!=*) temp-sum=temp-math+temp-computer; temp-next=NULL;cintemp-mathtemp-computer; tail=temp; /设置链表尾指针temp-sum=temp-math+temp-computer; temp-next=NULL; elsetail=temp; /设置链表尾指针 / 以下是输入结束处理else delete temp; tail-next=NULL;/ 以下是输入结束处理 break;delete temp; tail-next=NULL; /为下一个学生申请内存break; temp-next=new struct student; temp-next-forw=temp; /设置前指针/为下一个学生申请内存 temp=temp-next; /使处理指针 temp 指向新temp-next=new struct student;内存块temp=temp-next; / 使处理指针 temp 指向新内存 块 / 将链表数据从头到尾打印出来couttail:endl;/将链表数据从头到尾打印出来 temp=head;cout-endl; while (temp!=NULL) temp=head; coutname,math,;while (temp!=NULL) coutcomputer,sumendl;coutname,mathnext;coutcomputer,sumnext; / 将链表数据从尾到头打印出来 couthead:endl;#include temp=tail;main() while (temp!=NULL) coutname,math,;int i; coutcomputer,sumforw;struct student char name10; 9#include ux.x=123.456;main() coutux.x=ux.xendl; /输出联合变量 ux 的 x 成员 coutsizeof(ux)=sizeof(ux)endl;int i; /定义联合类型 #includeunion utag main()char c; int k; /自定义类型float x; typedef int ARRAY_INT50; int i;ARRAY_INT a; /用自定义类型声明数组变量 a/声明联合变量union utag u; /以下为数组 a 赋值,并打印for (i=0;i50;i+) / 使用联合变量中的字符型成员 if (i%10=0) /每 10 个数换一次行u.c=*; coutendl;coutu.c=u.cendl; ai=i;coutait;/ 使用联合变量中的整型成员 u.k=1000; coutendl;coutu.k=u.kendl; #include/ 使用联合变量中的浮点型成员 /定义结构类型u.x=3.1416; struct studentcoutu.x=u.xendl; int num;/声明联合变量时初始化 char name20;utag u1=A; float grade;/同时引用联合变量的各成员 void main(void)coutu1.c=u1.cendl; coutu1.k=u1.kendl; /声明数组coutu1.x=u1.xendl; int i,size; char str=This is a string.;#include int int_values = 51, 23, 2, 44, 45,0,11;main() float float_values = 15.1, 13.3, 22.2, 10.4, 1.5; student/定义结构类型,并为声明的结构变量赋初值 st_arr=101,WangLin,92,102,LiPing,85,103,ZhaoMin,88;struct s_tag short i; /显示 char 类型数组元素及其大小float x; size=sizeof(str) / sizeof(char); sx=100,3.1416; coutNumber of elements in str: ;coutsizeendl;/定义联合类型,并为声明的联合变量赋初值 for(i=0;isize;i+) union u_tag coutstri;short i; float x; coutendl; ux=1000;/显示 int 类型数组元素及其大小/输出结构类型和结构变量的有关信息 size=sizeof(int_values) / sizeof(int);coutsizeof(struct s_tag)=sizeof(struct s_tag)endl; coutNumber of elements in int_values: ;coutsx.i=sx.iendl; coutsizeendl;coutsx.x=sx.xendl; for(i=0;isize;i+) coutsizeof(sx)=sizeof(sx)endl; coutint_valuesi ;cout-endl; coutendl;/输出联合类型和联合变量的有关信息coutsizeof(union u_tag)=sizeof(union u_tag)endl; /显示 float 类型数组元素及其大小ux.i=200; size=sizeof(float_values) / sizeof(float);coutux.i=ux.iendl; /输出联合变量 ux 的 i 成员 coutNumber of elements in float_values: ;10coutsizeendl; double x;for(i=0;isize;i+) int i;coutfloat_valuesi ; for (i=0;i=2;i+) coutx=;coutx;coutsgn(x)=sgn(x)endl;/显示 student 类型数组元素及其大小 size=sizeof(st_arr) / sizeof(student); coutNumber of elements in st_arr: ; #includecoutsizeendl; /函数原型语句可以在这里for(i=0;isize;i+) /定义 main() 函数coutst_arri.num ; main()coutst_arri.name ; coutst_arri.gradeendl; /max() 函数原型声明语句 float max(float,float);#include /变量声明语句/add()函数的定义,其有返回值 float a,b,Max;double add(double x,double y) /输入参数并计算double z; couta;coutx+y=zendl; coutb; Max=max(a,b); /调用 max()函数coutmax(a,b)=Maxendl;main() /定义 max()函数double a=0.5,b=1.0; float max(float x,float y) /max()返回值类型为浮点型/以不同参数形式调用函数 add() float z;coutadd(1.5,2.5)=add(1.5,2.5)y)?x:y;coutadd(a,b)=add(a,b)endl; return(z);coutadd(2*a,a+b)=add(2*a,a+b)endl; cout-endl;#include/以表达式方式调用函数 add() /定义 f() 函数double c
展开阅读全文