源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx

上传人:b****3 文档编号:7113945 上传时间:2023-05-07 格式:DOCX 页数:143 大小:793.40KB
下载 相关 举报
源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx_第1页
第1页 / 共143页
源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx_第2页
第2页 / 共143页
源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx_第3页
第3页 / 共143页
源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx_第4页
第4页 / 共143页
源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx_第5页
第5页 / 共143页
源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx_第6页
第6页 / 共143页
源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx_第7页
第7页 / 共143页
源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx_第8页
第8页 / 共143页
源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx_第9页
第9页 / 共143页
源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx_第10页
第10页 / 共143页
源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx_第11页
第11页 / 共143页
源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx_第12页
第12页 / 共143页
源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx_第13页
第13页 / 共143页
源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx_第14页
第14页 / 共143页
源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx_第15页
第15页 / 共143页
源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx_第16页
第16页 / 共143页
源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx_第17页
第17页 / 共143页
源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx_第18页
第18页 / 共143页
源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx_第19页
第19页 / 共143页
源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx_第20页
第20页 / 共143页
亲,该文档总共143页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx

《源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx》由会员分享,可在线阅读,更多相关《源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx(143页珍藏版)》请在冰点文库上搜索。

源代码C++程序设计基础案例教程吴艳清华大学出版社Word下载.docx

格式输出控制符的验证。

inta,b,c,d,e;

pleaseinputfivenumbers(a-dec,b-oct,c-hex,d-hex,e-dec):

a;

oct>

hex>

c;

d;

dec>

e;

hex:

a="

hex<

a<

dec:

b="

dec<

b<

c="

c<

oct:

d="

oct<

d<

e="

e<

程序运行时,输入:

1217a2ff10

 

第3章程序设计结构

【例3-1】顺序结构的应用案例1。

要求用户通过键盘输入一直角三角形的底长和高,然后计算出此直角三角形的面积。

floatx,h,area;

”pleaseinputtwonumbers:

”<

h;

”x=”<

x<

”,h=”<

h<

area=1.0/2*x*h;

”area=”<

【例3-2】顺序结构应用案例2。

通过程序设计实现求任意两个实型数据的和。

floatx,y,add;

”,y=”<

y<

add=x+y;

”+”<

”=”<

add<

【例3-3】单分支结构应用案例1。

通过键盘输入任意两个整数,输出较大的数。

inta,b,max;

cout<

”请输入两个数字:

”;

cin>

if(a>

b)

max=a;

if(a<

=b)

max=b;

”两个数中较大的是:

max<

【例3-4】单分支结构应用案例2。

通过键盘输入任意两个整数,要求第一个数中放大数,第二个数中放小数。

inta,b,t;

”交换前的结果:

”,”<

{

t=a;

a=b;

b=t;

”交换后的结果:

”<

【例3-5】双分支结构应用案例1。

利用双分支结构改写【例3-3】,实现两个数中输出较大数。

max=a;

else

【例3-6】双分支结构应用案例2。

通过键盘输入任意一个年份,判断该年份是否为闰年。

(闰年的条件是:

年份可以被4整除但是不能被100整除,或者年份可以被400整除)。

{

intyear;

”请输入一个年份(四位):

year;

if((year%4==0&

&

year%100!

=0)||(year%400==0))

year<

”是闰年!

else

”不是闰年!

运行结果为:

【例3-7】多分支结构的应用案例1。

将键盘输入的百分制成绩转换成五级计分制的成绩输出。

五级计分制成绩确定规则:

’A’(90~100)、’B’(80~89)、’C’(70~79)、’D’(60~69)、’E’(60分以下,不包括60)

{intscore;

chargrade;

”请输入一个分数值(0~100):

score;

if(score>

=90&

score<

=100)

grade=’A’;

elseif(score>

=80&

=89)

grade=’B’;

=70&

=79)

grade=’C’;

=60&

=69)

grade=’D’;

else

grade=’E’;

score<

”分所处的等级为:

grade<

【例3-8】多分支结构的应用案例2。

用户通过键盘输入任意一个年份与月份,自动显示该年的当月所包含的天数。

intyear,month,day;

”请输入一个月份:

month;

if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)

day=31;

elseif(month==4||month==6||month==9||month==11)

day=30;

if(year%4==0&

year%100!

=0)

day=29;

else

day=28;

”年”<

month<

”月有”<

day<

”天”<

【例3-9】多分支结构应用案例3。

修改例3-7,利用开关语句实现成绩的等级。

chargrade;

”pleaseinputascore:

switch(score/10)

case10:

case9:

grade=’A’;

break;

//若score/10结果为10,则执行case9后的语句序列

case8:

grade=’B’;

case7:

grade=’C’;

case6:

grade=’D’;

default:

grade=’E’;

”thegradeofscoreis:

【例3-10】多分支结构应用案例4。

设计一个小型计算器,能够实现加、减、乘、除和乘方的运算。

math.h>

floatx1,x2;

charop;

”请输入两个数值:

x1>

x2;

”请输入一个运算符:

op;

switch(op)//字符类型表达式

case'

+'

:

x1+x2<

-'

x1-x2<

*'

x1*x2<

/'

x1/x2<

^'

pow(x1,x2)<

theerrorofoperator!

【例3-11】多分支结构应用案例5。

应用枚举类型值进行输入值的判断,通过输入0显示“male”,输入1显示

“female”。

enumsex{male,female}s;

intn;

”请输入一个整数(0—male,1—female):

n;

switch(n)

case0:

s=male;

//0对应的male,1对应的female

case1:

s=female;

”您的输入错误!

\n”;

switch(s)

casemale:

”male\n”;

//注意break语句的使用

casefemale:

”female\n”;

例3-12】循环结构应用案例1。

用for循环实现就1~100之间所有偶数的和。

inti=0,sum=0;

for(;

i<

=100;

)//表达式1和表达式3省略

sum+=i;

i=i+2;

”sum=”<

sum<

}

【例3-13】循环结构应用案例2。

输出所有的“水仙花数”。

所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。

(例如,13+53+33=153,153是水仙花数)

inti,j,k,n;

”水仙花数有:

for(n=100;

n<

1000;

n++)

i=n/100;

j=n/10-i*10;

k=n%10;

if(n==i*i*i+j*j*j+k*k*k)

”“;

【例3-14】循环结构应用案例3。

用while循环实现就1~100之间所有偶数的和。

while(i<

i=i+2;

【例3-15】循环结构应用案例4。

编写程序,实现求任意两个正整数的最大公约数和最小公倍数。

intm,n,r,temp,p;

m>

if(m<

n)

temp=m;

m=n;

n=temp;

p=m*n;

while(n!

r=m%n;

n=r;

”最大公约数是:

m<

”最小公倍数是:

p/m<

【例3-16】循环结构应用案例5。

用do……while循环结构实现1~100之间所有偶数的和。

do

sum+=i;

}while(i<

=100);

【例3-17】循环结构应用案例6。

制作一个小游戏,要求:

系统自动生成0~50之间的随机数x,用户去猜其具体的数值。

要求:

(1)若用户猜的数值大于该数,则提示大于该数。

(2)若用户猜的数值小于该数,则提示小于该数。

stdlib.h>

intmin=0,max=50;

intx,y;

x=rand()%50;

系统已经生成随机数(0~50),请您输入您猜测的数据:

;

if(y>

x)

{

max=y;

当前数值范围为:

min<

--"

elseif(y<

min=y;

您猜对了,您非常棒!

}while(true);

【例3-18】break语句的应用案例。

编程实现模拟ATM机的执行流程。

vector>

intpassword,Id;

****************进入自动提款系统****************"

\n请输入密码:

password;

if(password==142536)

\n欢迎您使用ATM系统,请按键选择您所需要的服务"

\n您的密码错误,请重新输入"

exit

(1);

\n1:

查询"

\n2:

取款"

\n3:

存款"

\n4:

退出"

\n请输入您的选择:

Id;

switch(Id)

进行查询操作中......"

case2:

进行取款操作中......"

case3:

进行存款操作中......"

case4:

exit

(1);

您的输入有误!

【例3-19】continue语句的应用案例。

continue语句应用在循环语句中,验证continue语句的功能。

intx=1,n=10;

while(n-->

if(x>

4)

continue;

//若x>

4成立则结束本次循环做一下循环

x++<

"

}

x="

n="

//注意n的值

【例3-20】goto语句的应用案例。

利用goto语句实现求1~100之内偶数的和。

inti,sum=0;

i=0;

a:

i=i+2;

if(i<

100)

gotoa;

sum="

【例3-21】结构嵌套的应用案例1。

若一个数恰好等于它的因子之和,则这个数称为完数。

编写程序输出100以内的所有完数。

(如,1+2+3=6,而1、2、3是6的因子,所以说6是完数)。

inti,j,s;

for(i=2;

i++)

s=0;

for(j=1;

j<

i;

j++)

if(i%j==0)

s+=j;

if(s==i)

”是完数。

【例3-22】结构嵌套的应用案例2。

求15个学生英语课程的平均分。

inti;

floatsum=0,ave,score[15];

”请输入15个学生的高数成绩:

for(i=0;

15;

score[i];

for(i=0;

sum+=score[i];

ave=sum/15;

”这15个学生高数课程的平均分为:

ave<

【例3-23】结构嵌套的应用案例3。

结构嵌套中break和continue语句的应用。

inti,x=1,y=0;

10;

x+=3;

5)

**x="

y="

y=x+5;

x="

y="

若将上例中的continue语句改成break语句,则运行结果为:

【例3-24】结构嵌套的应用案例4。

有n个数,已按由小到大顺序排列好,要求输入一个数,把它插入到原有数列中,而且仍然保持有序,同时输出新的数列。

分析:

通常插入算法应包含四个主要步骤:

(1)确定插入位置。

(2)把从最后一个元素到插入位置的每一个元素中的值,依次向后移动一个位置,即把a[n]中的值放入a[n+1]中,把a[n-1]中的值放入a[n]中,依此类推,直到把a[i]中的值放入a[i+1]中。

(3)在确定的插入位置上放入x的值。

(4)元素的个数增1。

#include<

inti,n,j;

inta[11]={12,27,35,41,53,67,74,80,96,100};

原数列为:

a[i]<

'

\t'

输入插入数:

j=9;

while(j>

=0&

a[j])

a[j+1]=a[j];

j--;

a[j+1]=n;

插入后的数组:

11;

第4章函数

【例4-1】函数调用应用案例1。

已知一数组(含有10个元素)中前两个元素的值,后面元素的值分别是前两个元素之和,利用函数求出该数组所有元素的值。

iomanip.h>

voidfun(intarray[],intn);

inta[10]={5,8},i;

fun(a,10);

setw(4)<

a[i];

voidfun(intarray[],intn)

intj;

for(j=2;

array[j]=array[j-1]+array[j-2];

【例4-2】函数调用应用案例2。

编写函数将化氏温度转换为摄氏温度,公式为C=(F-32)*5/9;

并在主函数中调用。

floatfun(floatf)

{floatc;

c=5.0/9*(f-32);

//注意这里是5.0/9,不能写成5/9

returnc;

{floatx;

请输入一个温度值:

x;

输入的温度值为:

转换后,值为:

fun(x)<

【例4-3】函数调用应用案例3。

编写函数利用数组名作参数计算二维数组arr[3][4]中所有元素的和。

iostr

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 外语学习 > 法语学习

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2