高等教育c

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机程序设计基础与Visual C++
第三章 基本程序设计
西南交通大学软件学院 计算机基础教研室
教学目标
1.掌握顺序、选择、循环三种基本控制结 构的程序实现方法;
2.了解基本程序调试技能。
教学内容
1.顺序结构的程序实现语句; 2.一路、两路、多路分支选择
结构的实现语句; 3.循环结构的实现语句; 4.循环控制语句的作用; 5.程序调试过程。
编程技巧

3.在输出一个浮点数时,系统会在科学记数法
序 和小数点法两种形式里按照一定的规则(通常在整
结 数部分超过6位时采用科学记数法)自动选择采用哪
构 程 序
种形式输出。若想规定不管什么样的浮点数均使用 小数点形式输出,可采用cout<<fixed;语句来实现
4.以小数点形式输出浮点数时,系统默认输出 的浮点数的整数和小数部分的总位数最多只有6位数
思路分析:

本程序要求的计算内容很简单,重点在输 出数据的位置控制上:要求前四行输出的两列
信息要对齐,且最后计算出的平均成绩的小数
部分只显示两位数字。
源程序清单:
#include "iostream"
#include "iomanip"
顺 using namespace std;
序 void main( )
设 计
cout<<setw(10)<<"英语"<<setw(12)<<score1<<endl; cout<<setw(10)<<"程序设计
"<<setw(12)<<score2<<endl;
Baidu Nhomakorabea
cout<<setw(10)<<"大学物理
"<<setw(12)<<score3<<endl;
cout<<fixed; cout.precision(2); cout<<"该生的平均成绩为:"<<average<<endl; }
结 要用到“一路分支选择结构”来实现,相应的
构 程 序 设 计
C++语句为“if语句”,其格式如下: if(条件) 语句;
(1)简单的条件通过包含关系运算符的 关系表达式来表示,C++语言的关系运算符见
表3.1。
关系运算符
选 择
运算符
运算
优先级
结 构 程
择 using namespace std;
结 void main( )
构 { float m; 程 cout<<"请输入任意一个数:";
序 cin>>m;
设 计
if(m<0)
m=-1*m; cout<<"你输入数据的绝对值为:"<<m<<endl;
}
编程技巧
选 择
1.在程序中,如果书写的某些语句只有 在特定的条件成立的情况下才会被执行时,需
[例] “鸡兔同笼问题”:在一个笼子里
养着鸡与兔,但不知其中鸡有多少只,
兔有多少只。只知道鸡和兔的总数是a,
顺 鸡与兔的总脚数是b,求鸡与兔各有多 序 少只。
结 构 程 序 设 计
思路分析:
假设有x只鸡和y只兔,则根据已知条件可列 出如下方程组:
x+y=a
2x+4y=b 对该方程组做进一步的转换可得:
对于0和正数而言,其绝对值就是该数 本身;对于负数而言,其绝对值为该数与-1 相乘的结果。

本题算法的实质就是判断什么情况下需
设 要执行“该数与-1相乘”这个操作,同时意
计 味者该操作对应的语句虽然书写在了程序中,
但在某种情况下是可能不会被执行的。
源程序清单
选 #include<iostream>
编程技巧
顺 1.对于输出的多列信息对齐的问题可以通过控制输出的
序 数据所占的位置宽度来实现。实现方法为:在输出该数
结 据前先通过setw(n)来设置该数据输出时所占的最少位置
构 程
宽度n。使用时需注意; (1)setw(n)所设置的位置宽度只对其后输出的一
个数据生效;

(2)使用setw(n)时需包含头文件iomanip;
结 构
{
float score1,score2,score3,average;
cout<<"请输入三门课程的考试成绩:"<<endl;
cin>>score1>>score2>>score3;
程 average=(score1+score2+score3)/3;

cout<<setw(10)<<"科目"<<setw(12)<<"成绩"<<endl;
cout<<"兔的数量为:"<<y<<endl;
}
编程技巧
顺 序
1.在顺序结构的程序设计中,主函数main的函数 体的执行顺序为语句的书写顺序。即写在前面
结 的语句先执行,写在后面的语句后执行,且每
构 条语句都会被执行一次;
程 2.组成顺序结构的常见语句有:
序 (1)说明语句,包括变量、常量定义;
设 2.该设置也可以通过cout.width(n);来实现。即语句

cout<<setw(10)<<"科目"<<setw(12)<<"成绩"<<endl; 可更换为:
cout.width(10); cout<<"科目";
cout.width(12); cout<<"成绩";
注意:此方法不再需要文件包含#include "iomanip"。
设 计
(2)表达式语句,由表达式(一般为赋值表达 式)加分号构成;
(3)输入/输出流语句;
(4)复合语句,由{ }括起来的多条语句组成;
(5)空语句,由独立的分号构成
[例] 输入一位同学的三门课程考试成
绩,计算该同学的平均成绩,要求输
顺 序 结 构 程 序 设
出数据的形式如下例:
科目 成绩 英语 67 程序设计 78.5 大学物理 89 该生的平均成绩为:78.17
设 字。若想规定输出的浮点数的小数部分的位数可通
计 过cout.precision(n);语句来实现。其中n代表小数部
分的位数(若数据的实际位数超过n,则按4舍5入规
则处理后输出;若数据的实际位数少于n,则其余位
数用0补齐)。
[例] 从键盘输入一个数,计算并 输出该数的绝对值
选 思路分析:
择 结 构 程
源程序清单:
#include<iostream>
using namespace std;
顺 void main( )
序 { int a,b,x,y;

cout<<"请输入鸡和兔的总数:";
构 程
cin>>a; cout<<"请输入鸡和兔的总脚数:";
序 设 计
cin>>b; x=(4*a-b)/2; y=(b-2*a)/2; cout<<"鸡的数量为:"<<x<<endl;
相关文档
最新文档