📄 第16章 数组(一).htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0049)http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm --><HTML><HEAD><TITLE>教学--第十六章 数组(一)</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<STYLE type=text/css>P {
MARGIN: 1px 2px; LINE-HEIGHT: 150%
}
.节标题 {
FONT-WEIGHT: bold; FONT-SIZE: 12pt
}
TD {
FONT-SIZE: 9pt
}
.tdtitle {
FONT-SIZE: 20pt
}
.celltopline {
BORDER-TOP: #000000 1px solid
}
.menucell {
FONT-SIZE: 10pt
}
#glowtext {
FONT-SIZE: 10pt; FILTER: glow(color=red,strength=1); WIDTH: 100%
}
A:link {
FONT: 10pt 宋体; COLOR: blue; TEXT-DECORATION: none
}
A:visited {
FONT: 10pt 宋体; COLOR: purple; TEXT-DECORATION: none
}
A:active {
FONT: 10pt 宋体; COLOR: red; TEXT-DECORATION: underline
}
A:hover {
COLOR: blue; TEXT-DECORATION: underline
}
</STYLE>
<META content="MSHTML 6.00.2900.2769" name=GENERATOR></HEAD>
<BODY leftMargin=0 topMargin=3>
<CENTER>
<TABLE height=105 cellSpacing=4 cellPadding=4 width=760 border=0>
<TBODY>
<TR>
<TD
style="FONT-SIZE: 10pt; TEXT-INDENT: 20px; LINE-HEIGHT: 150%; FONT-FAMILY: 宋体"
width="100%" height=210>
<H2>第十六章 数组(一)</H2>
<P><A href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.1">16.1
引子 -- “小王”成绩管理系统</A></P>
<P><SPAN lang=en-us> </SPAN><A
href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.1.1">16.1.1
“小王成绩管理系统Ver1.0”</A> </P>
<P><SPAN lang=en-us> </SPAN><A
href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.1.2">16.1.2
“倒退的2.0”</A> </P>
<P><A href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.2">16.2
数组的定义及使用</A></P>
<P><SPAN lang=en-us> </SPAN><A
href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.2.1">16.2.1
实例演示</A></P>
<P><SPAN lang=en-us> </SPAN><A
href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.2.2">16.2.2
个数定义必须是常量</A></P>
<P><A href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.3">16.3
如何给数组中的元素赋值</A></P>
<P><SPAN lang=en-us> </SPAN><A
href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.3.1">16.3.1
在定义数组时初始化。</A></P>
<P><SPAN lang=en-us> </SPAN><A
href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.3.2">16.3.2
在定义之后为元素赋值</A></P>
<P><A href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.4">16.4
控制台下如何输入和输出数组</A></P>
<P><SPAN lang=en-us> </SPAN><A
href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.4.1">16.4.1
输入</A> </P>
<P><SPAN lang=en-us> </SPAN><A
href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.4.2">16.4.2
输出</A></P>
<P><SPAN lang=en-us> </SPAN><A
href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.4.3">16.4.3
数组输入输出练习</A></P>
<P><A href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.5">16.5
数组的尺寸</A></P>
<P><A href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.6">16.6
字符数组</A></P>
<P><SPAN lang=en-us> </SPAN><A
href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.6.1">16.6.1
字符数组通常用于显示</A></P>
<P><SPAN lang=en-us> </SPAN><A
href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.6.2">16.6.2
字符数组初始化</A></P>
<P><SPAN lang=en-us> <A
href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.6.3">
</A></SPAN><A
href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.6.3">16.6.3
字符数组的输入</A></P>
<P><SPAN lang=en-us> </SPAN><A
href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.4">16.6.4
字符数组的输出</A></P>
<P><A href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.7">16.7
数组应用实例</A></P>
<P><SPAN lang=en-us> </SPAN><A
href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.7.1">16.7.1
“小王成绩管理系统新版”</A></P>
<P><SPAN lang=en-us> </SPAN><A
href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.7.2">16.7.2
“!dnalroB evol I”</A></P>
<P><SPAN lang=en-us> </SPAN><A
href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.7.3">16.7.3
“数组中的玄机”</A></P>
<P><SPAN lang=en-us> </SPAN><A
href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.7.4">16.7.4
“猜奖Ver 1.0”</A></P>
<P><SPAN lang=en-us> </SPAN><A
href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.7.5">16.7.5
求最值</A></P>
<P><A href="http://www.d2school.com/bcyl/bhcpp/newls/ls16.htm#16.8">16.8
小结:我们又迈出了重要的一步</A><BR> </P>
<H3><A name=16.1>16.1</A> 引子 -- “小王”成绩管理系统</H3>
<P> </P>
<P>小王老师参加了“编程摇篮”的学习,这一天他的系主任请他写程序。</P>
<P>系主任提的第一个要求是:</P>
<P>用户输入6个班级的各自的学生英语成绩总分,要求程序输出成绩总分和平均分。</P>
<P> </P>
<P>“这简单了!”小王心想,“在前面的课程里,早就有过成绩统计的例子了嘛!改改就行。”</P>
<P> </P>
<H4><B><A name=16.1.1>16.1.1</A> “小王成绩管理系统Ver1.0”</B> </H4>
<P> </P>
<P><SPAN lang=zh-cn>功能:</SPAN>求六个班级的成绩总分及平均分
(为了方便起见,下面的所有成绩数据都使用整型,不考虑小数)</P>
<P>......</P>
<P>int cj,zcj=0,pjcj=0; //各班成绩,总成绩,平均成绩</P>
<P>for(int i=0; i<6;i++)</P>
<P>{</P>
<P> cout << "请输入第" << i+1 << "班的分数:";</P>
<P> cin >> cj;</P>
<P></P>
<P> zcj += cj; //累加总成绩</P>
<P>}</P>
<P> </P>
<P>//求平均:</P>
<P>pjcj = zcj / 6<SPAN lang=en-us>;</SPAN></P>
<P> </P>
<P>cout << "总成绩:" << zcj << endl;</P>
<P>cout << "平均成绩:" << pjcj << endl;</P>
<P>......</P>
<P> </P>
<P>小王迅速测试了一遍,没有问题,任务胜利完成!小王的形像立刻在系主任的眼里高大起来……不过,客户的需求总是在不断进步的!系主任立即提出第二个要求:</P>
<P>必须加入查询功能,比如说,用户输入1,则程序输出一班的成绩,输入2,则输出二班的成绩,以此类推。</P>
<P> </P>
<P>“这可不好办了!南郁老师没有教我这个啊……”小王心里很着急,“要让用户可以查询,那至少我得让程序把这6个成绩记下。”小王来回看了好几遍for循环,也没有想出如何在for循环里记下用户输入的成绩。他决定放弃了……等等!不就6个班级吗?我不用循环
总行吧,在讲循环流程的那一章里,不是举了一个最笨的办法吗?(见<A
href="http://www.d2school.com/bcyl/bhcpp/newls/ls10.php#10.4">10<SPAN
lang=en-us>.</SPAN>4</A> )</P>
<P>(尽管这样写程序,按南郁老师说只能得到“鸭蛋”,可以桌子那边传来系主任殷切的目光……)</P>
<P>一阵“噼噼叭叭”,小王删除了前面所有代码,可以实现查询的新代码如下:</P>
<P> </P>
<H4><B><A name=16.1.2>16.1.2</A> “倒退的2.0”</B> </H4>
<P> </P>
<P><SPAN lang=zh-cn>功能:</SPAN>求六个班级的成绩总分及平均分,并可实现对各班成绩查询<SPAN
lang=zh-cn>。</SPAN></P>
<P> </P>
<P>......</P>
<P>//定义六个变量,用于存储六个班级的成绩:</P>
<P>int cj1,cj2,cj3,cj4,classSocre5,cj6;</P>
<P> </P>
<P>//老师说下面的方法很“笨”,不过没办法了,只能这样...</P>
<P>//(反复用 Ctrl+C,Ctrl+V 还是很方便的)</P>
<P>cout << "请输入第1班的成绩:" << endl;</P>
<P>cin >> cj1;</P>
<P> </P>
<P>cout << "请输入第2班的成绩:" << endl;</P>
<P>cin >> cj2;</P>
<P> </P>
<P>cout << "请输入第3班的成绩:" << endl;</P>
<P>cin >> cj3;</P>
<P> </P>
<P>cout << "请输入第4班的成绩:" << endl;</P>
<P>cin >> cj4;</P>
<P> </P>
<P>cout << "请输入第5班的成绩:" << endl;</P>
<P>cin >> cj5;</P>
<P> </P>
<P>cout << "请输入第6班的成绩:" << endl;</P>
<P>cin >> cj6;</P>
<P> </P>
<P>//求总成绩和平均成绩:</P>
<P>int zcj = (cj1+cj2+cj3+cj4+cj5+cj6);</P>
<P>int pjcj = zcj / 6;</P>
<P> </P>
<P>cout << "总成绩:" << zcj << endl;</P>
<P>cout << "平均成绩:" << pjcj << endl;</P>
<P> </P>
<P>//下面是新功能:查询:</P>
<P> </P>
<P>char c;</P>
<P> </P>
<P>do</P>
<P>{</P>
<P> cout << "请输入要查询的班级次序(1~6,0:退出)" <<endl;</P>
<P> cin >> c;</P>
<P> </P>
<P> //用switch实现对用户输入的判断及分流:</P>
<P> switch(c)</P>
<P> {</P>
<P> case '1' : cout << cj1 <<
endl; break;</P>
<P> case '2' : cout << cj2 <<
endl; break;</P>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -