2012年(106)
分类: C/C++
2012-05-07 18:25:24
实验二 分支与循环程序设计
一.实验目的
1. 掌握switch分支结构程序的设计。
2. 掌握各种循环语句的程序设计。
二.实验环境
1. 硬件:PII以上计算机;
2. 软件:Windows、Visual C++ 6.0;
3. 其它:U盘等可移动的存储设备。
三.实验内容
练习1.编写程序,求函数 的值。要求输入x,程序即可输出y的值。
要求:将π值定义为符号常量,例如:# define PI 3.14
运行结果示例:
练习2.输入一字符,编程序判断输入字符的种类(字母、数字、其它)。
要求:利用if条件语句编程。
运行结果示例:
练习3.编写程序,实现下列分段函数的求值:
| x | x<5
y = 3x2-2x+1 5≤x<20
x /5 x≥20
要求:利用if条件语句(嵌套)编程。
练习4.编写程序,输入上网的时间计算上网费用,计算的方法如下:
25元 <10小时
费用 = 每小时2.5元 10~50小时
每小时2元 ≥50小时
同时,为了鼓励多上网,每月收费最多不超过130元。
要求:使用switch语句编程。
练习5.输出50-100之间所有奇数的累加和。(分别使用while和for语句)
(运行结果:1875 )
四.实验指导
Ø C/C++程序的上机步骤
1. 创建一个空工程(项目);
选择菜单“文件/新建”,在“新建”对话框的“工程”选项卡中选择“Win32 Console Application”,输入“工程名称”,并选择工程所在“位置”。
2. 创建一个C++源文件,输入源程序;
选择菜单“文件/新建”,在“新建”对话框的“文件”选项卡中选择“C++ Source File”,输入“文件名”。
3. 进行编译(Compile)、连接(Build,组建)、运行(BuildExecute,执行);
选择菜单“组建”中的“编译”、“组建”、“执行”,或在工具栏中单击“ ”、“ ”、“ ”工具按钮。
4. 程序的调试:语法错误、逻辑错误。
程序每次修改后都需要重新执行编译、连接、运行三个步骤。
Ø 练习1.表达式书写规则:
1. 乘号不能省略;
2. 括号必须成对出现,均适用圆括号;可以出现多个,但要配对;
3. 表达式从左到右要在同一基准上书写,无高低之分,必要使须使用函数。
循环补充练习
练习1.输入一个英文句子(以句号’.’结束),要求将句中的单词分行打印出来。
运行结果示例:
练习2.编写程序,要求读入一个任意的n值,求:
。
运行结果示例:
*练习3.编写程序,要求读入一个任意的n值,生成如下序列的前n项:
1,2,1,2,3,2,1,2,3,4,3,2,1,2,3,4,5,4,3,2,1,2,… …。
运行结果示例:
练习一
#include"iostream.h"
# define PI 3.14
#include"math.h"
void main()
{
double x,y;
cout<<"Input x:";
cin>>x;
y=log10(x*x+3)+PI/2*cos(2*PI/9.0);
cout<<"The resultis:"< } 练习二 #include"iostream.h" void main() { char x; cout<<"输入一个字符:"; cin>>x; if(x>='a'&&x<='z'||x>='A'&&x<='Z') cout< else if(x>='0'&&x<='9') cout< else cout< } 练习3 #include "iostream.h" #include "math.h" void main() { int x,y; cout<<"输入x:"; cin>>x; if(x<5) { y=fabs(x); cout<<"y="< } else if(x>=20) { y=x/5; cout<<"y="< } else { y=3*x*x-2*x+1; cout<<"y="< } } 练习四 #include"iostream.h" void main() { float x,y; cout<<"输入上网时间:"; cin>>x; while(x<0) { cout<<"输入有误,请重新输入"; cin>>x; } switch((int)(x/10)) { case 0:y=25;break; case1: case 2: case 3: case4:y=2.5*x;break; case5: case6:y=2*x;break; default:y=130;break; } if(x>=65&&x<=69) y=130; cout<<"上网费用为:"< } 练习五 #include"iostream.h" void main() { int x=51,y=0,n; for(n=1;n<=25;n++) {y=y+x; x=x+2; } cout<<"输出50-100之间所有奇数的累加和:"< } 练习5 While语句 #include"iostream.h" void main() { intx,sum; x=51;sum=0; while(x>=50&&x<=100&&x%2!=0) { sum=sum+x; x=x+2; } cout<<"Thesum is:"< } 循环补充练习 练习1 #include "iostream.h" #include "stdio.h" void main() { char a; printf("请输入一行英语:"); do { a=getchar(); printf("%c",a); if(a=='') printf("\n"); }while(a!='.'); printf("\n"); } 练习2. #include voidmain() { int i,n; float sum; cout<<"输入n值:"; cin>>n; cout<<"1"; sum=1; for(i=1;i { if(i%2==0) { cout<<"+"<
sum=sum+(i*1.0)/(i+1); } else { cout<<"-"<
sum=sum-(i*1.0)/(i+1); } } cout<<"="< 练习3 #include"iostream.h" voidmain() { int a,b,i,n; cout<<"输入n值:"; cin>>n; if(n==1) cout<<"1"; else { for(a=2;a<=n;a++) { for(i=1;i<=a;i++) { cout<<' '<
b=i; } while(b==a) {for(b=b-1;b>=2;b--) cout<<' '<
} } cout<<' '<<1; } }