版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
#include<ioslream.h>〃包含iostream.h头文件main()(〃声明变量,并初始化inta=010,b=10,c=0X10;〃以十进制形式显示数据cout«nDEC:M;cout«Ha=H«a;cout«Hb=M«b;coulv<"c=H«c«endl;〃以八进制形式显示数据cout«MOCT:M;cout«octI 〃指定八进制输出cout«Ha=H«a;cout«Hb=M«b;cout«nc=H«c«endl;〃以十六进制形式显示数据cout«nHEX:M;cout«hex; 〃指定十六进制输出cout«"a=H«a;cout«Hb=M«b;couiv<"c="«c«endl;〃ハ、卜和十六进制数混合运算并输出cout«Ha+b+c=H;cout«deci 〃恢复卜进制输出coul«a+b+c«endl;〃测试ハ、十和卜六进制输入cout«,,DEC:a=M;cin»a;cout«"OCT:b=H;cin»b;cout«MHEX:a=H;cin»c;cout«nDEC:M«dec«endlJ 〃指定十进制输出cout«,,a=,'«a«endl;coul«Mb="«b«endl;cout«',c=,,«c«endl;}cin»dx;cout«Hdy=M;cin»dy;cout«dx«,,+"«dy«'*=H«dx+dy«endl;cout<<dx«,,>,'«dy«M=,'«dx-dy«endl;coul<<dx«,'*,,«dy«"=',«dx*dy«endl;cout«dx«,7,'«dy«*,=,'«dx/dy«endl<<endl;//cout«fx«,'%M«fy«,,=H«fx%fy«endl;Error!〃测试float和double类型数据的有效位fx=10.0;fy=6.0;floatfz=fx/fy;dx=10.0;dy=6.0;doubledz=dx/dy;cout«,'fz=M;cout«setprecision(20)«fx«'7"«fy«H=,'«fz«endl;cout«Mdz=M;cout«setprecision(20)«dx«,7,'«dy«u=,,«dz«endl«endl;;//float型溢出floatx=3.5e14;cout«"x=,,«x«endl;cout«"x*x=,'«x*x«endl;cout«"x*x*x=H«x*x*x«endl;#include<iostream.h>main()(〃x,y为操作数,c为运算符intx,y,z;charcl;cin»x»cl»y;//cl〃多路选择语句选择不同表达式计算语句switch(cl){case'+':cout«x«,,+,,«y«,,=,,«x+y«endl;break;case,-':cout«x«,'-,,«y«',=,,«x-y«endl;break;case**,:cout«x«H*',«y«M=,,«x*y«endl;break;case'/,:cout«x«'7H«y«,,=,,«x/y«endl;break;case,%,:cout«x«',%,,«y«M=,,«x%y«endl;break;default:cout«"Wrong!"«endl;〃当不符合上述情况时执行本子句#include<iostream.h>floatx=365.5;〃声明全局变量main(){intx=l,y=2;doublew=x+y;(doublex=1.414,y=1.732,z=3.14;cout«Hinner:x=H«x«endl;cout«ninner:y=H«y«endl;cout<<"inner:z=M«z«endl;cout«"outer:w=M«w«endl;cout«H::x=H«::x«endl; 〃访问重名的全局变量)cout«,'outer:x=,,«x«endl;cout«"outer:y=,,«y«endl;cout«"outer:w=H«w«endl;〃coutv<"inner:z="v<zvvendl;无效cout«"::x=M«::x«endl; 〃访问重名的全局变量)#include<iostream.h>main(){〃显示!,2,3...10for(inti=l;i<=10;i++)cout«i«MH;cout«endl;〃显示!0,9,8...1for(intj=10;j>=1;j-)cout«j«Mcout«endl;〃显示!,3,5...9for(intk=l;kv=10;k=k+2)cout«k«"coul«endl;〃显示ABC...Zfor(charc='A';c<=Z,;c++)cout«c;cout«endl;〃显示.2...1.0for(floatx=0;x<=1.0;x=x+0.1)cout«x«HM;cout«endl;〃显示0.0.1,0.2...1.0for(floatx1=0;x1<=1.0+0.l/2;xl=x1+0.1)cout«xl«Mcout«endl;〃计算s=l+2+3...+100ints=0;for(intn=l;n<=100;n++)s=s+n;cout<<Ms=H«s«endl;)#include<iostream.h>main()(〃计算s=l+2+3...+100ints=0,n=l;while(n<=100){s=s+n;n++;)cout«,'s=H«s«endl;〃累加键盘输入的数据doublex,sum=0.0;cout«Hx=M;cin»x;while(x!=0)(sum+=x;cout«Mx=H;cin»x;)cout«nsum=H«sum«endl;)#include<iostream.h>main()(〃计算s=l+2+3...+100ints=0,n=0;do{n++;s+=n;)while(n<100);cout«Hs=**«s«endl;〃累加键盘输入的数据doublex,sum=0.0;do{cout«Hx=M;cin»x;sum+=x;}while(x!=0);cout«"sum=,,«sum«endl;)#include<iostream.h>main()(〃计算和打印打印乘法九九表for(inti=l;i<=9;i++){cout«i;for(intj=l;j<=9y++)cout«V«i«M*H«y«M="«i*j;cout«endl;#include<iostream.h>main()(intx,sum=0;〃定义标号LILI:cout«"x=H;cin»x;if(x==-l)gotoL2; 〃无条件转移语句,转至リL2语句处elsesum+=x;gotoL1; 〃无条件转移语句,转到L1语句处〃定义标号L2L2:cout«"sum="«sum«endl;#include<iostream.h>main()(〃累加键盘输入的数据doublex,sum=0.0;while(l){cout«Hx=M;cin»x;if(x<=0)break;sum+=x;cout«',sum=*,«sum«endl;}#include<iostream.h>main()(inti;for(i=l;i<=20;i++){if(i%3=0)〃能被3整除的整数,返回进行下次循环continue;cout«i«MH;)cout«endl;}#include<iostream.h>main()(〃声明数组和变量inta[5],i,sum;doubleavg;〃从键盘上循环为数组赋值for(i=0;i<5;i++){cout<<Ma[M«i«M]=M;cin»a[i];1〃直接显示数组元素cout«a[0]«a[1]«a[2]«a[3]«a[4]«endl;〃利用for循环显示数组各元素的值for(i=0;i<5;i++)cout«a[i]«Mcout«endl;〃计算数组元素之和,并显示计算结果sum=a[0]+a[1]+a[2]+a[3]+a[4];cout«,,sum=,,«sum«endl;〃利用循环计算数组的累加和for(sum=0j=0;i<5;i++)sum+=a[i];〃显示累加和及平均值cout«,,sum=,,«sum«endl;avg=sum/5.0;cout«"avg=H«avg«endl;}#include<iostream.h>main()(inti,max,index,a[5];〃从键盘上为数组赋值for(i=0;i<=4;i++)cout«Ma[M«i«H]=M;cin»a[i];)//利用循环遍历数组,找出最大值的元素及其下标max=a[〇];for(i=0;i<=4;i++)(if(max<a[i]){max=a[i];index=i;))cout«"\nMax=M«max«Hindex='*«index;)#include<iostream.h>#definesize5main()(〃声明变量inti,j;floatt,a[size];〃从键盘上为数组赋值for(i=O;i<size;i++)(cout«"a[,'«i«H]=M;cin»a[i];)〃对数组按从小到大顺序排序for(i=O;i<size-l;i++)for(j=i+l;j<size;j++)if(a[i]>aUl)(t=a[i];a[i]=a[j];aU]=t;)〃显示排序结果for(i=O;i<size;i++)cout«a[i]«MM;cout«endl;〃输入要查找的数据intvalue;intfound; 〃找到为!,否则为〇int low,high,mid;for(i=l;i<=3;i++){cout«Hvalue=H;cin»value;〃二分法查找数组afound=0;low=0;high=size-1;while(low<=high)mid=(high+low)/2;if(a[mid]==value)(found=1;break;}if(a[mid]<value)low=mid+1;elsehigh=mid-1;)if(found)cout«MThe valu foundat:a[H«mid«M]=,,«a[mid]«endl;elsecoul«"The"«value«Misnotfound!"«endl;}}#include<iostream.h>main()(〃声明变量inti,j;floatl,a[5];〃从键盘上为数组赋值for(i=0;i<=4;i++)(cout«na[M«i«H]=M;cin»a[i];)〃对数组按从大到小顺序排序for(i=0;i<=3;i++)for(j=i+l;j<=4;j++)if(a[i]<=aUl)(t=a[i];a[i]=aU];aU]=t;〃显示排序结果for(i=0;i<=4;i++)cout«a[i]«HM;)#include<iostream.h>main(){〃声明二维数组及变量inta⑵⑶,iよ〃从键盘上为数组a赋值for(i=0;i<2;i++)for(j=O;j<3;j++)cout«Ha[,(«i«H][,,«j«,,]=H;cin»a[i][j];〃显示数组afor(i=0;i<2;i++){for(j=O;j<3y++){cout«a[i][j]«M)cout«endl;}〃找出该数组的最大元素及其下标inthJ,Max=a[0][0];for(i=0;i<2;i++){for(j=O;j<3j++)(if(Max<a[i]0]){Max=a[i][j];h=i;目;cout«,,Max:"«"a[,'«h«,(][M«l«H]=H«a[h][l]«endl;)#include<iostream.h>main()(〃声明字符数组和变量charstr[6];inti;〃从键盘上输入字符串cout<v"str=";cin»str;cout«str«endl;〃按数组和下标变量两种方式显示字符数组cout«str«endl;for(i=0;i<6;i++)cout«str[i];cout«endl;〃字符串反向输出for(i=5;i>=0;i)cout«str[i];cout«endl;〃将字符数组变成大写字母后输出for(i=0;i<=5;i++)str[i]-=32; 〃小写字母转换成大写字母cout«str«endl; 〃显示字符串)#include<iostream.h>main(){〃声明变最和指针变量inta,b,c,*ip;〃指针变量ip指向变量aa=100;ip=&ai 〃使指针变量ip指向变量acout«Ha=M«a«endl;cout«H*ip=H«*ip«endl;coul«Hip="«ip«endl;〃指针变量ip指向变量bip=&b;〃使指针变量ip指向变量bb=200;cout«'*b="«b«endl;cout«H*ip="«*ip«endl;cout«Hip="«ip«endI;〃指针变量ip指向变量cip=&c; 〃使指针变量ip指向变量b*ip=a+b;cout«Hc=H«c«endl;cout«H*ip="«*ip«endl:cout«,,ip=,,«ip«endl;}#include<iostream.h>main()(〃声明数组、变量和指针变量inta[2][3],ij;int*ip;〃从键盘上为数组a赋值for(i=0;i<2;i++)〃为数组a赋值for(j=O;j<3;j++)(cout«Ma[°«i«M][*,<<j«M]=M;cin»a[i][j];)〃利用下标变量显示数组afor(i=0;i<2;i++){for(j=O;j<3;j++)(cout<va[i][j]vv"";)cout«endl;)〃利用指针变量显示数组aip=&a[0][0|;for(i=0;i<2;i++){for(j=0;j<3;j++)(cout«,,a[,,«i«,,][M<<j«M]=tt;cout«ip«',coul«*ip«endl;ip++;#include<iostream.h>main()〃声明数组、变量和指针变量int叫={1,2,3,4,5,6};int*ipl,*ip2;〃测试指针的赋值运算ipl=a;ip2=ipl;cout«H*ipl='«(*ipl)«endl;cout«',*ip2=,,«(*ip2)«endl;〃测试指针的自增门减运算和组合运算ipl++;ip2+=4;cout«M*ipl=M«(*ipl)«endl;cout«*,*ip2='«(*ip2)«endl;〃测试指针变最之间的关系运算intn=ip2>ipl;cout«"ip2>ip1=M«n«endl;cout«"ip2!=NULL=M«(ip2!=NULL)«endl;〃指针变量之间的减法n=ip2-ip1;cout«"ip2-ip1=M«n«endl;1#include<iostream.h>main()(〃声明字符型数组和指针变量charstr[10];char*strip=str;〃输入输出cout«Mstr=M;cin»str; 〃用字符数组输入字符串cout«,'str=,'«str«endl;cout«"strip="«strip«endl;cout«"strip=,';cin»strip; 〃用字符指针变量输入字符串cout«Mstr=M«str«endl;cout«"strip="«strip«endl;〃利用指针变量改变其指向字符串的内容*(strip+2)=,r;cout«,,str=M«str«endi;cout«"strip=n«strip«endl;〃动态为字符型指针变量分配内存strip=newchar(lOO);cout«"strip=H;cin»strip;〃用字符指针变量输入字符串cout«,'str=,'«str«endl;cout«"strip="«strip«endl;1#include<iostream.h>main()(/Z声明用于存放运动员号码的数组〃从键盘上为结构数组输入值〃从键盘上为结构数组输入值inth[]={1001,1002,1003,1004);/Z声明用于存放运动员成绩的数组floatx[]={12.3,13.1,11.9,12.1);〃声明用于存放运动姓名的字符型指针数组char*p[]={"Wanghuan,"Zhangjian",HLiweiH,MHuaming");//i,j,it是用做循环控制变量和临时变量inti,j,it;//ft用做暂存变量floatft;//pt为字符型指针变量用做暂存指针变量char*pt;〃用选择法对数组x进行排序,并相应调整数组h和p中的数据for(i=0;i<=3;i++)for(j=i+l;j<=3;j++)if(x[i]>=xU]){ft=x[i],x[i]=x[j],x[j]=ft;it=h[i],h[i]=h[j],h[j]=it;pt=p[iLp[i]=pU],pU]=pt;)〃以下打印排序结果for(i=0;i<=3;i++)cout«h[i]«H,,'«p[i]«M,H«x[i]«endl;)#include<iostream.h>main()[〃声明指针数组char.colorsロ={“Red”JBlue”JYellow”,“Green”);〃指向指针的指针变量char**pt;〃通过指向指针的变量访问其指向的内容pt=colors;for(inti=0;i<=3;i++){cout<<Hpt=H«pt«endl;cout«,'*pt="«*pt«endl;cout«M**pt=*'«**pt«endl;pt++;}}#include<iostream.h>main()(〃定义结构类型structbookschartitle[20];charauthor(15];intpages;floatprice;};〃声明结构变量structbooksZbk={HVC++"/'Zhang",295,35.5);booksWbk;〃对结构变量的输出cout«"Zbk:"«endl;cout«Zbk.title«endl;cout«Zbk.author«endl;cout«Zbk.pages«endl;cout«Zbk.price«endl;cout«" "«endl;〃对结构成员的运算Zbk.pages+=10;Zbk.price+=0.5;cout«"Zbk.pages="«Zbk.pages«endl;cout«"Zbk.price="«Zbk.price«endl;cout«" "«endl;〃对结构变量的输入输出cout«"Wbk.title=M;cin»Wbk.title;cout«"Wbk.author=";cin»Wbk.author;cout«"Wbk.pages=";cin»Wbk.pages;cout«"Wbk.price=";cin»Wbk.price;cout«"Wbk:"«endl;cout«Wbk.title«endl;cout«Wbk.author«endl;cout«Wbk.pages«endl;cout«Wbk.price«endl;cout«" "«endl;〃结构变量之间的相互赋值bookstemp;temp=Wbk;cout«"temp:"«endl;cout«temp.title«endl;cout«temp.author«endl;cout«temp.pages«endl;cout«temp.price«endl;}#include<iostream.h>main()(inti;〃定义结构类型structstudent{intnum;charname[10];floatmaths;floatphysics;floatchemistry;doubletotal;);〃声明结构数组ststudentst[3];cout«MnumnamemathsphysicschemistryH«endl;for(i=0;i<3;i++)(cout«i+l«nM;cin»st[i].num;cin»st[i].name;cin»st[i].maths;cin»st[i].physics;cin»st[i].chemistry;}〃计算每个学生的总成绩for(i=0;i<3;i++)st[i].total=st[i].maths+st(i].physics+st[i].chemistry;〃输出结构数组各元素的值for(i=0;i<3;i++)(cout«Mst[,,«i«M]:";cout«st[i].num«V;cout«st[i].name«,\t,:cout«st[i].maths«'\t';cout«st[i].physics«'\t,;cout«st[i].chemistry«'\t';cout«st[i].total«endl;})#include<iostream.h>main()(〃定义结构类型structhuman{charname[10];intsex;intage;1;〃声明结构变量和结构指针变量,并初始化structhumanx={MWangPing",1,30),*p=NULL;//结构指针变量指向对象p=&x;〃显示结构变最的值cout«H=,,««endl;cout«,,x.sex=,,«x.sex«endl;cout«,,x.age=,,«x.age«endl;//利用结构指针显示结构对象中的数据cout«,,(*p).name=,,«(*p).name«endl;cout«,,(*p).sex=',«(*p).sex«endl;cout«n(*p).age=H«(*p).age«endl;cout«,,p->name="«p->name«endl;cout«',p->sex=,,«p->sex«endl;cout«,,p->age=,'«p->age«endl;〃通过结构指针为结构対象输入数据cout«nname:M;cin»(*p).name;cout«"sex:M;cin»(*p).sex;cout«"age:M;cin»(*p).age;〃显示结构变最的值cout«"="««endl;cout«',x.sex=,,«x.sex«endl;cout«"x.age=,,«x.age«endl;)include<iostream.h>main()(〃定义结构类型structhuman{charname[10];intsex;intage;};〃声明结构变量和结构指针,并初始化structhumanx={*'WangPing",1,30),*p=&x;〃利用结构指针显示结构中的数据cout«"(*p).name=M«(*p).name«endl;cout«"(*p).sex="«(*p).sex«endl;cout«"(*p).age=,,«(*p).age«endl;cout«H H«endl;〃利用new运算符为p分配内存p=newhuman;〃从键盘上为p指向的结构对象赋值cout«,'p->name=";cin»p->name;cout«Mp->sex=M;cin»p->sex;cout«"p->age=H;cin»p->age;cout«H H«endl;〃显示p所指结构対象的值cout«,'p->name="«p->name«endl;cout<<"p->sex=M«p->sex«endl;cout«"p->age=H<<p->age«endl;cout«H H«endl;〃显示结构变量的值cout«H=M««endl;cout«"x.sex=M<<x.sex«endl;cout<<"x.age=H«x.age«endl;〃释放p指向的内存deletep;)#include<iostream.h>main()〃定义结构类型structhuman{charname[10];intsex;intage;};//声明结构数组和结构指针变量,并初始化humanx[]={{"WeiPing”,1,30},{"LiHua”,l,25},{"LiuMin”,O,23}},*p=NULL;〃用下标变量的输出结构数组的元素for(inti=0;i<3;i++)cout«x[i].name«,\t,;cout«x[i].sex«*\t';cout«x[i].age«endl;)cout«H M«endl;〃用结构指针输出结构数组的元素for(p=x;p<=&x[2];p++)cout«p->name«'\t';cout«p->sex«'\t*;cout«p->age«endl;}}#include<iostream.h>main()(〃定义ー个包含指针成员的结构类型structtest(char*str;int*ip;}x;〃使用结构变量x中的整型指针ipx.ip=newint;〃分配1个单元*(x.ip)=100;cout«,,x.ip:"«x.ip«,\t'«*(x.ip)«endl;cout«H H«endl;deletex.ip;x.ip=newint[5]; 〃分配5个单元for(inti=0;i<5;i++)*(x.ip+i)=100+i;cout«Hx.ip:M«endl;for(i=0;i<5;i++)cout«x.ip+i«,\t'«(*(x.ip+i))«endl;deletex.ip;coutvc" H«endl;〃使用结构变量x中的字符型指针strx.str=newchar('A');〃分配1个单元couKc^x.str:"«(*x.str)«endl;coutvv” H«endl;deletex.str;x.str=newchar[5]J 〃分配多个单元*x.str='G';*(x.str+l)=’〇';*(x.str+2)=’〇';*(x.str+3)-d';*(x.str+4)='、〇';cout«"x.str:n«x.str«endl;deletex.str;cout«" "vvendl;〃在声明结构变量时初始化testy二ドVeryGood!",NULL);cout«"y.str:M«y.str«endl;cout«"y.ip:M«y.ip«endl;1#include<iostream.h>main()(〃定义date结构structdate(intyear;intmonth;intday;};〃定义baby结构structbaby{intnum;floatweight;datebirthday;〃date为结构类型};〃声明baby结构变量并初始化babybl={10001,10,(2002,12,25));〃下列是baby结构变量bl的引用。cout«"bl.num="«bl.num«endl;cout«"bl.weight="«b1.weight«endl;cout«"b1.birthday.year="«b1.birthday.year«endl;cout«"bl.birthday.month="«bl.birthday.month«endl;cout«"bl.birthday.day="«bl.birthday.day«endl;cout«" "«endl;〃声明baby结构变量temp,并进行赋值运算babytemp;temp=bl;cout«"temp.num="«temp.num«endl;cout«"temp.weight="«temp.weight«endl;cout«"temp.birthday.year="«temp.birthday.year«endl;cout«"temp.birthday.month=,,«temp.birthday.month«endl;cout«"temp.birthday.day="«temp.birthday.day«endl;}#include<iostream.h>main()(〃定义名为!ist的递归结构structlist{char name[10];int sex;int age;list *next; 〃成员next为指向其自身结构的指针1;〃使用递归结构变量listLl={"WeiPing”,1,355NULL};cout«ML1:M«endl;cout«"name\tM«LLname«endl;coutv<"sex\t"v<Ll.sex«endl;coutv<"age\t"v<Ll.age«endl;cout«,,next\t,,«Ll.next«endl;}#include<iostream.h>main()(inti;〃定义名为student的递归结构structstudent{charname[10];intmath;intcomputer;floatsum;student*next;//next成员是指向自身的结构指针);〃用student声明3个结构指针变量structstudent*head,*tail,*temp;〃申请第1块数据,并设置各结构指针的初值temp=newstructstudent;〃中请内存head=temp;/Z头指针tail=head;/Z尾指针〃循环为链表输入数据cout«n\tnameMathComputer"«endl;for(i=l;;i++){cout«i«,,\t,';cin»temp->name;if(temp->name[0]!='*'){cin»temp->math»temp->computer;temp->sum=temp->math+temp->computer;temp->next=NULL;tail=temp; 〃设置链表尾指针)else//以下是输入结束处理deletetemp;tail->next=NULL;break;〃为下ー个学生申请内存temp->next=newstructstudent;temp=temp->next;/Z使处理指针temp指向新内存〃将链表数据从头到尾打印出来cout«M H«endl;temp=head;while(temp!=NULL){cout«temp->name«M,"«temp->math«",H;cout«temp->computer«,,,,,«temp->sum«endl;temp=temp->next;}1#include<iostream.h>main()(inti;〃定义名为student的递归结构structstudent{charname110];intmath;intcomputer;floatsum;student*forw; 〃forw成员是前指针student*next; 〃next成员是后指针!;〃用student声明3个结构指针变量structstudent*head,*tail,*temp;〃申请第1块数据,并设置各结构指针的初值temp=newstructstudent; 〃中请内存head=temp;/Z头指针tail=head;/Z尾指针head->forw=NULL;〃循环为链表记录输入数据cout«"\tnameMathComputerH«endl;for(i=l;;i++){cout«i«M\tM;cin»temp->name;if(temp->name[0]!=*')cin»temp->math»temp->computer;temp->sum=temp->math+temp->computer;temp->next=NULL;tail=temp; 〃设置链表尾指针}else(//以下是输入结束处理deletetemp;tail->next=NULL;break;)〃为下ー个学生申请内存temp->next=newstructstudent;temp->next->forw=temp; 〃设置前指针temp=temp->next; 〃使处理指针temp指向新内存块/Z将链表数据从头到尾打印出来cout«"head >tail:H«endl;temp=head;while(temp!=NULL){cout«temp->name«,',H«temp->math«H;cout<<temp->computer«,,/,«temp->sum«endl;temp=temp->nexl;)/Z将链表数据从尾到头打印出来coul«Mlail >head:'*«endl;temp=tail;while(temp!=NULL){cout«temp->name«,',H«temp->math«,\H;cout<<temp->computer«,,/'«temp->sum«endl;temp=temp->fbrw;()#include<iostream.h>main()[inti;〃定义联合类型unionutag{char c;int k;floatx;1;〃声明联合变量unionutagu;//使用联合变量中的字符型成员u.c=**;cout«nu.c=M«u.c«end1;//使用联合变量中的整型成员u.k=1000;cout«,,u.k=',«u.k«endl;//使用联合变量中的浮点型成员u.x=3.1416;cout«'*u.x=',«u.x«endl;〃声明联合变量时初始化utagul={'A,);〃同时引用联合变量的各成员cout«"ul.c='«ul.c«endl;cout«"u1.k=**«ul.k«endl;cout«"u1.x=H«ul.x«endl;)#include<iostream.h>main()(〃定义结构类型,并为声明的结构变量赋初值structs_tag{shorti;floatx;)sx=(100,3.1416};〃定义联合类型,并为声明的联合变量赋初值unionu_tag{shorti;floatx;)ux={1000};〃输出结构类型和结构变量的有美信息cout«"sizeof(structs_tag)=*,«sizeof(structs_tag)«endl;cout«Hsx.i=M«sx.i«endl;cout«',sx.x=,'«sx.x«endl;cout«"sizeof(sx)="«sizeof(sx)«endl;cout«M H«endl;/獭出联合类型和联合变量的有关信息cout«"sizeof(unionu_tag)=H«sizeof(unionu_tag)«endl;ux.i=200;cout<<Hux.i=M«ux.i«endl;〃输出联合变量ux的i成员ux.x=123.456;cout«"ux.x=M«ux.x<<endl;〃输出联合变量ux的x成员cout«"sizeof(ux)=,,«sizeof(ux)«endl;1#include<iostream.h>main()(〃自定义类型typedefintARRAYJNT[50];inti;ARRAY」NTa;〃用自定义类型声明数组变量a〃以下为数组a赋值,并打印for(i=0;i<50;i++){if(i%10==0)〃每10个数换ー次行cout«endl;a[i]=i;cout«a[i]«,'\tM;)cout«endl;)#include<iostream.h>〃定义结构类型structstudent(intnum;charname[20];floatgrade;);voidmain(void)(〃声明数组inti,size;charstrロゴThisisastring.";intint_values[]={51,23,2,44,45,0,11);floatfloat_values[]={15.1,13.3,22.2,10.4,1.5};studentst_arr[]={101,"WangLin",92,102,,,LiPing,t,85,103,"ZhaoMin",88};〃显示char类型数组元素及其大小size=sizeof(str)/sizeof(char);cout«"Numberofelementsinstr:cout«size«endl;for(i=0:i<size;i++){cout«str[i];)cout«endl;〃显示int类型数组元素及其大小size=sizeof(int_values)/sizeof(int);cout«'*Numberofelementsinint_values:M;cout«size«endl;for(i=0;i<size;i++){cout«int_values[i]«MM;)cout«endl;〃显示float类型数组元素及其大小size=sizeof(float_values)/sizeof(float);cout«nNumberofelementsinfloat_values:cout«size«endl;for(i=0;i<size;i++){cout«float_values[i]«H)cout«endl;〃显示student类型数组元素及其大小size=sizeof(st_arr)/sizeof(student);cout«nNumberofelementsinst_arr:M;cout«size«endl;for(i=0:i<size;i++)(cout<vst_arr[i].numvv"cout«st_arr[i].name«MM;cout«st_arr[i].grade«endl;))#include<iostream.h>〃add()函数的定义,其有返回值doubleadd(doublex,doubley)(doublez;z=x+y;cout«x«"+,,<<y«,,=,,«z«endl;retum(z);}main()(doublea=0.5,b=1.0;〃以不同参数形式调用函数add()cout«nadd(1.5,2.5)=H«add(1.5,2.5)«endl;cout«,,add(a,b)=H«add(a,b)«endl;cout«nadd(2*a,a+b)=,'«add(2*a,a+b)«endl;cout«H "vvendl;〃以表达式方式调用函数add()doublec=2*add(a,b);cout«Hc='*«c«endl;cout«H M«endl;〃以语句式方式调用函数add()add(2*a,b);cout«H "vvendl;〃用其他类型参数调用函数add()intn=l,m=2;cout«"add(,,«n«,',H«m«M)=H«add(n,m)«endl;1#include<iostream.h>〃定义符号函数sgn(),其返回值为int类型intsgn(doublex)(if(x>0)retum(1)i〃返回出口1if(x<O)retum(-l);〃返回出口2retum(O)i 〃返回出口31〃main()函数定义main()(doublex;inti;for(i=0;i<=2;i++){cout«Hx=M;cin»x;cout«**sgn(,,«x«,,)="«sgn(x)«endl;))#include<iostream.h>〃函数原型语句可以在这里〃定义main。函数main()(〃max()函数原型声明语句floatmax(float,float);〃变量声明语句floata,b,Max;〃输入参数并计算cout«'*a=H;cin»a;cout«"b=H;cin»b;Max二max(a,b); 〃调用max()函数cout«"max("«a«,\,,«b«,,)=,,«Max«endl;)〃定义max()函数floatmax(floatx,floaty) 〃max()返回值类型为浮点型(floatz;z=(x>y)?x:y;retum(z);1#include<iostream.h>〃定义f()函数f(intx,inty) 〃f()的参数以值方式传递++X;一y;cout«,'x=,,«x«,',y=H«y«endl;}main(){inta,b;〃设置实际参数的值a=b=10;〃以变量为参数调用f()函数f(a,b);〃验证实际参数的值cout«,,a=,,«a«,,,b=*'«b«endl;〃以表达式参数形式调用f()函数f(2*a,a+b);}#include<iostream.h>〃定义公共结构类型structstudent{intnum;charname[10];floatmaths;floatphysics;floatchemistry;doubletotal;};〃定义结构输入函数input_Rec(structstudent*p)〃参数为student类型的结构指针变量(cin»p->num;cin»p->name;cin»p->maths;cin»p->physics;cin»p->chemistry;}〃定义结构数据交换函数swap_Rec(structstudent*pl,structstudent*p2){structstudentx;〃交换两个记录的数据x=*pl;*pl=*p2;*p2=x;)〃输出结构的值put_Rec(structstudent*p)(cout«p->num«,\t';cout«p->name«,\t,;cout«p->maths«*\t,;cout«p->physics«,\t,;cout«p->chemistry«,\t,;cout«p->total«endl;)〃定义main。函数main(){intij;//声明结构指针变量和结构数组structstudent*pl,a[3];〃输入3个学生的数据并计算总成绩cout«,'num\tname\tmaths\tphysics\tchemistry"«endl;for(pl=a;pl<=a+2;pl++){input_Rec(pl);p1->total=p1->maths+pl->physics+p1->chemistry;}〃对3个学生的数据排序for(i=0;i<=2;i++)for(j=i+l;j<=2;j++)if(a[i].total<a[j].total)swap_Rec(&a[i],&a[j]);〃交换两个结构变量中的数据cout«H H«endl; 〃输出一分界线〃输出排序后的结构数组cout«,'num\tname\tmaths\tphysics\tchemistry\ttotal"«endl;for(p1=a;p1<=a+2;p1++)put_Rec(pl);)#include<iostream.h>〃定义结构structstudent{charname[10];floatgrade;};〃交换student类型的数据voidswap(student&x,student&y) 〃swap的参数为引用传递方式(studenttemp;temp=x;x=y;y=temp;)〃返回student类型的引用,求优者student&max(student&x,student&y) //swap的参数为弓I用传递方式(return(x.grade>y.grade?x:y);1〃显示student类型的数据voidshow(student&x)//show的参数为引用传递方式cout««M,,«x.grade«endl;)voidmain()(studenta={"ZhangHua”,351.5},b={“WangJun”,385};〃显示a和b的数据cout«Ha:H;show(a);cout«"b:H;show(b);cout«H M«endl;〃交换a和b的数据,并显示swap(a,b);cout«Ha:H;show(a);cout«nb:H;show(b);cout«H M«endl;〃计算和显示成绩高者studentt=max(a,b);cout«MMax:w;show(t);)#include<iostream.h>〃参数带有默认值的函数disp(intx=l,inty=l,intz=l){coutvc"参数1:H«x«endl;coutvv”参数2:,'«y«endl;coutv〈”参数3:H«z«endl;cout«H "vvendl;//main。函数中测试参数带有默认值的函数disp()voidmain()(disp();disp(10);disp(10,20);disp(10,20,30);inta=l,b=2,c=3;disp(a,b,c);}#include<iostream.h>〃计算字符串长度的函数intstr_len(constchar*string){//char*temp=string:编译报错!//"string士ズ; 编译报错!inti=0;while(*(string+i)!=NULL)i++;returni;}//main。函数中测试str_len()voidmain()(chara[]="ABCDE”;cout<vav<"V"v<str_len(a)vvendl;char*str=HHello!M;cout«str«H\t"«str_len(str)«endl;cout«"Thisisa test.H«',\t',«strJen("This isatest.")«endl;)#include<iostream.h>voiddisp(void);〃这个函数声明语句不能少〃定义main()函数的参数和返回值类型是void类型voidmain(void)(〃调用void类型函数disp();1〃以下定义disp()函数voiddisp(void){cout«"Youarewelcome."«endl;1#include<iostream.h>〃函数原型语句intabs(intx);longabs(longx);floatabs(floatx);//main。函数的定义voidmain(void)(〃声明变量intil=32767,i2=-32767;long11=456789,12=-456789;floatxl=l.l234,x2=-1.1234;〃直接在cout输出中调用函数cout«abs(i1)<<","«abs(i2)«endl;cout«abs(l1)<<",H«abs(12)«endl;cout«abs(x1)<<","<<abs(x2)«endl;}〃定义int型的abs()函数intabs(intx){if(x<0)retum(-x);elseretum(x);}〃定义long型的abs()函数longabs(longx){if(x<0)retum(-x);elseretum(x);}〃定义float型abs函数floatabs(floatx){if(x<0.0)retum(-x);elseretum(x);}#include<iostream.h>〃max()为内联函数inlineintmax(intx,inty)〃注意inline关键字(returnx>y?x:y;}〃定义main。函数main()(inta=3,b=5,c;c=max(a,b);cout«,,max(,,«a<<M,,,«b«',)=',«c«endl;coutv<”max("v<15v<","v<llvv")=”《max(15,ll)v<endl;}#include<iostream.h>main()(〃函数原型声明intfact(intx);intn,sn;〃依次从键盘上输入3个正整型数据计算它们的阶乘for(inti=l;i<=3;i++)(cout«i«Mn=";cin»n;sn=fact(n);cout«n«H!="«sn«endl;〃以下是采用递归方法定义的fact。函数intfact(intx)(if(x==0)retum(l);retum(x*fact(x-l));〃此处又调用了它自身)#include<iostream.h>〃带参数的main。函数intmain(intargc,char*argv[]){inti;fbr(i=O;i<argc;i++)cout«i«M:M«argv[i]«endl;return0;}#include<iostream.h>〃用函数原型声明要使用的函数voidshow_array1(int*,int);voidshow_array2(inta[],int);voidsort(int*,int);main()〃声明数组并初始化int明={246,1,3,5};intb[3][3]={{2A6),{l,3,5),{0,l,2)};〃显示数组的值cout«"show_arrayl(int*,int):M«endl;show_arrayl(a,6);show_arrayl(&b[O][O],3*3);〃用sortl排序并显示cout«"sort(int*,int)andshow_arrayl(int*,int):H«endl;sort(a,6);show_arrayl(a,6);sort(&b[0][0],3*3);show_array1(&b[0][0],9);〃显示数组的值cout«Hshow_array2(inta[],int):M«endl;show_array2(a,6);show_array2(&b[0][0],3*3);1〃显示数组,用指针当参数voidshow_arrayl(int*p,intsize){for(inti=0;i<size;i++)cout«*(p+i)«HM;cout«endl;)〃显示数组,用数组当参数voidshow_array2(inta[],intsize){for(inti=0;i<size;i++)cout«a[i]«Mcout«endl;)〃对数组按从大到小顺序排序voidsort(int*p,intsize){intt;for(inti=0;i<size-l;i++)fbr(intj=i+1;j<size;j++)if(*(p+i)<=*(p+j))(t=*(p+i);*(p+i)=*(p+j);*(P+j)=t;))#include<iostream.h>〃定义结构structstudent{charname[10];floatgrade;};〃更改student数据的grade成员,参数形式为引用voidchange(student&x,floatgrade)x.grade=grade;)〃更改studen!数据的grade成员,参数形式为指针voidchangel(student*p,floatgrade)(p->grade=grade;}〃更改student类型的数据,普通参数形式voidchange2(studentx,floatgrade)(x.grade=grade;}〃显示student类型的数据,参数形式为引用voidshow(student&x)(cout««"*'«x.grade«endl;)〃在main。函数屮,测试对结构的处理函数voidmain()(studenta={"ZhangHuaH,351.5};〃显示a的数据show(a);〃用change修改分数,并显示cout«Hchange(student&x,floatgrade):*'«endl;change(a,360);show(a);〃用change!修改分数,并显示cout«**change1(student*p,floatgrade):H«endl;changel(&a,375);show(a);〃用change2修改分数,并显示cout«Hchange2(studentx,floatgrade):H«endl;change2(a,380.5);show(a);)#include<iostream.h>〃定义函数计算数组的和和平均值voidcalculate(inta[],intsize,int&sum,float&average)(sum=0;for(inti=0;i<size;i++){sum+=a[i];}average=sum/size;}〃定义显示数组的函数voidput_arr(inta[]Jntsize)(fbr(inti=0;i<size;i++)cout«a[i]«MH;cout«endl;}main()(〃声明数组并初始化intasize,bsize;inta[]={2,4,6,1,3,5};intb[]={1,3,5,7,9,11,13,15};〃显示数组的值asize=sizeof(a)/sizeof(int);cout«,,put_arr(a,asize):M«endl;put_arr(a,asize);bsize=sizeof(b)/sizeof(int);cout«,,put_arr(b,bsize):,'«endl;put_arr(b,bsize);〃计算数组的和和平均值floata_ave,b_ave;inta_sum,b_sum;cout«,,calculate(a,asize,a_sum,a_ave):H«endl;calculate(a,asize,a_sum,a_ave);cout«Ha_sum=M«a_sum;cout«Ha_ave=H«a_ave«endl;cout«ncalculate(b,bsize,b_sum,b_ave):,,«endl;calculate(b,bsize,b_sum,b_ave);cout«Mb_sum="«b_sum;cout«"b_ave=*'«b_ave«end1;1#include<iostream.h>〃参数为函数指针的函数intget_result(inta,intb,int(*sub)(int,int)){intr;r=sub(a,b);returnr;1〃计算最大值intmax(b){cout«"Inmax"«endl;retum((a>b)?a:b);)〃计算最小值intmin(inta,intb){cout«"Inmin"«endl;retum((a<b)?a:b);)〃求和intsum(b)(cout«"Insum"«endl;retum(a+b);)1voidmain(void)〃测试指向函数的指针(voidmain(void)〃声明变量和结构数组(inti;inta,b,result;charstr[2O];bookbkfsize];〃测试3次for(inti=l;i<=3;i++){〃输入结构数组cout«"Inputaandbfor(i=0;i<size;i++){cin»a»b;sprintf(str/bk[%d]M,i+1);input_book(bk(i],str);cout«i«H\tget_result("«a«H,H«b«M,)&max):M«endl;result=get_result(a,b,&max);〃显示结构数组cout«HMaxof”<vavv"and”<vb<<"isfor(i=0;i<size;i++){H«result«endl;sprintf(str,Hbk[%d]M,i+l);output_book(bk[i],str);result=get_result(a,b,&min);}cout«*'Minof,,«a«,'and"<<b«"is)H«result«endl;#include<iostream.h>〃声明全局变量并初始化result=get_result(a,b,&sum);externinta[]={1,2,3};cout«*'SumofH«a«HandH«b«Hisexternfloatp=3.14;H«result«endl;!〃在show。函数中使用外部变量}show(){#include<iostream.h>inti;#include<stdio.h>cout«MInshow():"«endl;#definesize3cout«,,p=M«p«endl;〃定义book结构类型cout«Ma[]:H;structbookfor(i=0;i<=2;i++)(cout«a[i]«MM;chartitle[2O];cout«endl;charauthor[15];//cout«,,y=,,«y«endl;编译出错!intpages;}floatprice;};〃声明外部变量并初始化//book结构的输入函数inty=5678;input_book(book&bk,char*name)(〃在main。函数中使用外部变量cout«name«n:"<vendl;main()cout«Htitle:M;(cin»bk.title;〃声明局部变量cout«nauthor:M;inti,p=100;cin»bk.author;cout«npages:H;〃显示重名变量cin»bk.pages;cout«"lnmain():"vvendl;cout«,,price:H;cout«Hp=M«p«endl;cin»bk.price;)〃显示全局变量//book结构的输出函数cout«"::p="«::p«endl;output_book(book&bk,char*name)cout«Ha[]:**;(for(i=0;i<=2;i++)cout«name«H:cout«a[i]«MM;cout«bk.title«HM;cout«endl;cout«bk.author«MH;cout«,,y=,,«y«endl; 〃编译正确cout«bk.pages«HM;cout«bk.price«endl;show();〃调用函数charstr[80];#include<iostream.h>〃使用静态变量的计数器函数count1()[〃声明静态变量i,并置初值为〇。i在count。屮局部可见staticinti=0;retum(++i);}〃使用局部变量的计数器函数count2()(inti=0;retum(++i);)〃在main。函数中调用count。函数main。{inti;〃调用countl()10次coutv<"countl():“v<endl;for(i=l;i<=12;i++)cout«count1()«*'cout«endl;〃调用count2()10次cout«,,count2():,*«endl;for(i=l;i<=12;i++)cout«count2()«Mcout«endl;}//pl-851.cpp为main。函数文件#include<iostream.h>main。(inti,s=0;externintfact(intx);for(i=2;i<=6;i=i+2)s+=fact(i);cout«,'s=M«s«endl;)〃pl-852.cpp为计算阶乘函数文件〃定义fact。函数为外部(extern)函数externintfact(intx)(inti,t=l;if(x=0)retum(1);fbr(i=l;i<=x;i++)t*=i;return(t);)#include<iostream.h>#include<stdio.h>#include<string.h>#include<process.h>main。{〃声明变量FILE*fpl;〃从键盘上任意输入一个字符串cout«"Inuptastring:',;cin.getline(str,80);〃以写入方式打开d.dat文件if((fpl=fopen("d.dat*\Hw**))=NULL){cout«*'\nCouldnotopenthefile.*'«endl;cout«*'Exitingprogram."«endl;exit(l); 〃结束程序执行)/Z写“流"文件fputs(str,fpl);fputs(*'\n",fpl);fclose(fpl); 〃关闭文件/Z以读方式打开d.dat文件if((fpl=fopen(,,d.dat*;**rH))=NULL)(cout«*'\nCouldnotopenthefile.*'«endl;cout«**Exitingprogram."«endl;exit(l); 〃结束程序执行}/Z循环从“流”文件读取字符,并显示charch;while((ch=fgetc(fpl))!=EOF)cout«ch;cout«endl;fclose(fp1);〃关闭文件)#include<iostream.h>#include<process.h>#include<stdio.h>#include<conio.h>voidmain(void){〃变量声明charch;FILE*fpl;〃以写入方式打开d.dat文件if((fpl=fopen("d.dat*\**w**))=NULL){cout«"\nCouldnotopenthefile.**«endl;cout«**Exitingprogram."«endl;exit(l); 〃结束程序执行}〃循环从键盘上读取字符,写入“流”文件cout«*'char:*'«endl;cin»ch;while(ch!=***){fputc(ch,fpl); 〃将字符写到fp!指向的”流”文件中cin»ch;〃无条件循环〃从键盘上输入数据〃无条件循环〃从键盘上输入数据〃如果输入的字符串为end,〃写入文件操作〃退出循环〃关闭文件fclose(fpl);fclose(fpl);〃关闭文件/Z以读方式打开d.dat文件if((fpl=fopen("d.dat";*rH))=NULL)(cout«H\nCouldnotopenthefile."«endl;cout«"Exitingprogram.'*«endl;exit(l)J 〃结束程序执行/Z循环从“流”文件读取字符,并显示while((ch=fgetc(fpl))!=EOF)cout«ch«Hco
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年中国急救输液泵行业市场占有率及投资前景预测分析报告
- 2025河北省石家庄市深泽县招聘社区工作者13名笔试考试参考题库及答案解析
- 2025天津和平投资发展集团有限公司招聘7人笔试考试备考题库及答案解析
- 2025广东珠海市教育局秋季招聘所属事业单位编制教师192人考试笔试参考题库附答案解析
- 2025年抖音平台运营维护合同协议
- 2025年漫展活动现场医疗救护合同
- 骨科膝关节置换术后护理指导
- 儿科上呼吸道感染康复护理细则
- 2026年贵州电子信息职业技术学院单招职业倾向性测试必刷测试卷新版
- 2026年阿勒泰职业技术学院单招职业适应性考试必刷测试卷及答案1套
- 飞行体验游旅行合同
- 《急性心力衰竭急救》课件
- 《结直肠癌外科学》课件
- 《智能设备故障诊断》课件
- 2025年江苏南京鼓楼城市管养集团有限公司招聘笔试参考题库含答案解析
- 消毒供应质量控制指标(2024年版)
- 2025年四川省自然资源投资集团有限责任公司招聘笔试参考题库附带答案详解
- 施工自检报告范文
- 展会活动疫情防控措施及应急预案
- 露天采石场安全风险分级管控资料
- 南京市2024-2025学年高二上学期期中学情调研测试语文试卷及答案
评论
0/150
提交评论