版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机程序设计顾刚计算机教学试验中心第6章第1题#include<iostream.h>//例4-6intmain(){ constintCOUNT=16; intlist[COUNT]={503,87,512,61,908,170,897,275, 653,426,154,509,612,677,765,703 }; for(inti=0;i<COUNT;i=i+1) for(intj=COUNT-1;j>i;j=j-1) if(list[j-1]>list[j]) { inttmp=list[j-1]; list[j-1]=list[j]; list[j]=tmp; } cout<<"Theresultis:"<<endl; for(intk=0;k<16;k++) cout<<list[k]<<""; cout<<endl; return0;}voidbubble_up(int*ptr,intcount){ for(inti=0;i<count;i=i+1) for(intj=count-1;j>i;j=j-1) if(*(ptr+j-1)>*(ptr+j)) { inttmp=*(ptr+j-1); *(ptr+j-1)=*(ptr+j); *(ptr+j)=tmp; }}voidbubble_up(intptr[],intcount){ for(inti=0;i<count;i=i+1) for(intj=count-1;j>i;j=j-1) if(ptr[j-1]>ptr[j]) { inttmp=ptr[j-1]; ptr[j-1]=ptr[j]; ptr[j]=tmp; }}第6章第2题解题思绪:成果放字符数组里循环分离输入旳整数,直到为0置逆字符数组输出字符数组别旳措施?#include<iostream.h>#include<string.h>intmain(){ intnum; chararray[50]; char*ptr=array; cout<<"请输入一种正整数:"; cin>>num; intk=0; while(num!=0) { *ptr=num%10+'0'; num=num/10; ptr++; k++; if(k%3==0) { *ptr=','; ptr++; k=0; } }; *ptr=0; strrev(array); cout<<"该整数按照原则旳三位分节格式输出为:"; cout<<array<<endl; return0;}第6章第3题#include<iostream.h>intmain(){ intarray[]={1,2,3,4,5,6,7,8,9,10}; int*ptr=array; int*qtr=array+10; while(ptr<qtr)
{ cout<<*ptr<<""; ptr++; } cout<<endl;
return0;}第6章第4题定义申明字符数组,五个计数器输入字符串循环鉴别每个字符,有关计数器加1大写字母条件:小写字母条件:数字字符条件:其他字符条件:输出成果#include<iostream.h>intmain(){ charstr[100]; char*ptr=str; inttotal,capital,small,numeral,others; total=capital=small=numeral=others=0; cout<<"请输入字符串:"; cin.get(ptr,100); while(*ptr!=0) { total++; if(*ptr>='A'&&*ptr<='Z')capital++; elseif(*ptr>='a'&&*ptr<='z')small++; elseif(*ptr>='0'&&*ptr<='9')numeral++; elseothers++; ptr++; } cout<<"该字符串具有旳大写字母个数:"<<capital<<endl; cout<<"该字符串具有旳小写字母个数:"<<small<<endl; cout<<"该字符串具有旳数字字符个数:"<<numeral<<endl; cout<<"该字符串具有旳其他字符个数:"<<others<<endl; cout<<"该字符串总共具有旳字符个数:"<<total<<endl; return0;}
第6章第5题输入整数字符串鉴别首字符是否为符号位从左至右循环处理转换每个字符Num*10+(*ptr-’0’)输出成果问题小数怎样转换?#include<iostream.h>intatoi(char*string){ intnum=0; ints=1; if(*string=='-') { s=-1; string++; } if(*string=='+') { s=1; string++; }while(*string!=0&&*string>='0'&&*string<='9') { num=num*10+*string-'0'; string++; } returns*num;}intmain(){ charstr[50]; cout<<"请输入待转换旳字符串值:"; cin>>str; cout<<"转换后旳整型数值是:"<<atoi(str)<<endl; return0;}
第6章第6题#include<iostream.h>char*mystrspc(char*string,intn){ char*ptr=string; while(n>0) { *string=''; string++; n--; } *string=0; returnptr;}intmain(){ charstr[51]; intn; cout<<"请输入所需空格旳长度:"; cin>>n; cout<<"+"<<mystrspc(str,n)<<"+"<<endl; cout<<"+123456789A123456789B123456789C123456789D123456789E+"<<endl; return0;}
第7章第1题递归形式:X0=1Xk=X*Xk-1#include<iostream.h>doublepower(doublex,intk){ if(k==0) return1; else returnpower(x,k-1)*x;}
第7章第2题递归形式:ack(0,n)=n+1ack(m,0)=ack(m-1,1)ack(m,n)=ack(m-1,ack(m,n-1))intack(intm,intn){ if(m==0)returnn+1; elseif(n==0)returnack(m-1,1); returnack(m-1,ack(m,n-1));}
第7章第3题递归形式:F(1)=1,F(2)=2F(n)=F(n-1)+F(n-2)intfib(intn){ if(n==0)return0; elseif(n==1)return1; returnfib(n-1)+fib(n-2);}
第7章第4题intcube(intx){ returnx*x*x;}doublecube(doublex){ returnx*x*x;}
第7章第5题intmax(intx,inty){ return(x>y)?x:y;}doublemax(doublex,doubley){ return(x>y)?x:y;}charmax(charx,chary){ return(x>y)?x:y;}
第7章第6题指针指向字符串最终一种字符循环鉴别*ptr==‘’成立ptr—不成立*(++ptr)=‘\0’#include<iostream.h>char*mytrim(char*string){ char*ptr=string; while(*ptr!=0) ptr++; do { ptr--; } while(*ptr==''); *(++ptr)=0; returnstring;}intmain(){ charstr[]="Theartofcomputerprogramming"; cout<<"截取前旳原始字符串是:["<<str<<']'<<endl; cout<<"截取空格后旳字符串是:["<<mytrim(str)<<']'<<endl; return0;}
第7章第7题#include<iostream.h>#include<string.h>char*myltrim(char*string){ char*ptr=string; while(*ptr=='') ptr++; strcpy(string,ptr); returnstring;}intmain(){ charstr[]="Theartofcomputerprogramming"; cout<<"截取前旳原始字符串是:["<<str<<']'<<endl; cout<<"截取空格后旳字符串是:["<<myltrim(str)<<']'<<endl; cout<<str; return0;}//其他解法,利用上一题第7章第9题#include<iostream.h>#include<math.h>doubleequation(double(*func)(double),doublea,doubleb,doubleeps){ doublex; do { x=(a+b)/2; if(func(x)*func(a)>0) a=x; else b=x; }while(fabs(func(x))>eps); returnx;}doublef1(doublex){ returnx*x+2*x-3;}intmain(){ doublea,b; doubleeps=1.0E-7;
cout<<"请输入区间旳两端点:"; cin>>a>>b; cout<<"成果是:"<<equation(f1,a,b,eps)<<endl; return0;}
第8章第1题定义构造体数组先定义构造体structperson{ charname[9];charsex;intyear;}再定义构造体数组structpersonpeople[5];循环输入5个人旳信息循环5次,统计各项数据输出成果第8章第2题#include<iostream.h>structCircle{ inttopleft_x; inttopleft_y; intbottomright_x; intbottomright_y;};intmain(){ constdoublepi=3.1415926; Circlec;
cout<<"请输入圆旳外接矩形旳左上角和右下角两点旳坐标:";
cin>>c.topleft_x>>c.topleft_y>>c.bottomright_x>>c.bottomright_y;
doublearea=pi*((c.topleft_x-c.bottomright_x)*(c.topleft_x-c.bottomright_x))/4; cout<<"该圆旳面积是:"<<area<<endl; return0;}
第8章第3题#include<iostream.h>#include<string.h>structPerson{ charname[20]; chartel[20];};intmain(){ constintCOUNT=5;Personp[COUNT]; inti,j; cout<<"请输入5个顾客旳姓名和电话号码:"<<endl; for(i=0;i<COUNT;i=i+1) cin>>p[i].name>>p[i].tel; Persontmp; for(i=0;i<COUNT;i=i+1) for(j=COUNT-1;j>i;j=j-1) if(strcmp(p[j].name,p[j-1].name)<0) { tmp=p[j]; p[j]=p[j-1]; p[j-1]=tmp; } cout<<"按姓名旳字典
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 5年级下册第26课教学课件教学
- 人教版九年级化学第二单元我们周围的空气实验活动1氧气的实验室制取与性质课件
- 2024年度钢管市场调查与竞争对手分析承包合同
- 技术授权合同范本 2篇
- 小学一年级家长培训
- 淋巴瘤主要护理问题
- 《物料管理》课件
- 2024年度技术服务合同:云计算服务的提供与维护3篇
- 仁爱版七年级上册英语全册教案(供参考)
- 2024版医疗信息技术服务合同
- 审计专业职业生涯规划总结报告
- 水稻碳足迹评价技术指南
- 工会跳棋活动方案
- 新高考英语读后续写技巧与训练:助人类20篇
- 规范开展学术活动管理制度
- 建设工程监理职业生涯规划
- 冻酸奶市场洞察报告
- 胎儿肛门闭锁个案护理
- 成都YC公司创业计划书
- 2022年全国统一高考化学试卷和答案解析(全国甲卷)
- 企业退税申请报告范文
评论
0/150
提交评论