大二计算机作业多吗,大二计算机作业、

选择结构又称为分支结构。 在选择结构程序设计中,根据条件的判断情况需要选择不同的语句组执行。 选择结构类型: (1)条件选择结构:根据给定的条件表达式进行判断,决定执行某个分支中的程序段。由if语句来实现。 (2)开关选择结构:根据给定的整型表达式的值进行判断,然后决定执行多个分支中的某一个分支。由switch语句来实现。,4.1 程序的流程图,4.3 多分支选择语句,4.4 程序综合举例,4.2 IF语句,4.1 程序的流程图,传统流程图符号:,4.1 程序的流程图,N-S流程图符号:,4.1 程序的流程图,【例4.1】求10!的程序。 解题思路: 由于n!=n*(n-1)! 即10!=10*9! 9!=9*8! …… 2!=2*1! 1!=1,4.2 if 语句,4.2.1 if语句的三种格式,,1.单分支选择结构 一般形式为:,,if(表达式) { 语句; },执行过程:先求解表达式的值,如果表达式的值为真(非0),就执行语句;否则直接执行if语句后面的语句。执行过程如图4.4所示。,4.2 if 语句,【例4.2】求所输入数值的绝对值。,输入数据,解题思路: 首先判断输入数值是否为负数,若为负数,则将取其相反数;否则,正数和零的绝对值是其本身,不予处理。,,判断输入数据,,0,取相反数,,,,,≥0,输出结果,4.2 if 语句,【例4.2】求所输入数值的绝对值。,程序为: #include “stdio.h” main() { float score; printf(“Please input a score:\n”); scanf(“%f”, },运行结果如下: Please input a score: -0.01↙ The result is: 0.01 Please input a score: 5.0↙ The result is: 5.00,4.2 if 语句,【例4.3】比较所输入的三个数值的大小,按升序输出。 解题思路: 只须让三个数值两两比较三次,在每次比较的过程中,若第一个数值大于第二个数值,则交换彼此的数值,三次比较完成后,三个数值即符合升序要求。,4.2 if 语句,程序代码如下: #include “stdio.h” Void main() { float x,y,z,temp; printf(“Please input three number:\n”); scanf(“%f,%f,%f”, },运行结果如下: Please input three number: 60.1,60,59.9↙ The sequence is: 59.9,60.0,60.1,4.2 if 语句,2.双分支选择结构 一般形式为: if(表达式) { 语句1;} else { 语句2;},执行过程是:先求解表达式的值,如果表达式的值为真(非0)执行语句1;否则若表达式的值为假(值为0),就执行语句2。执行过程如图4.5所示。,4.2 if 语句,【例4.4】 判断所输入的学生成绩是否及格。 解题思路: 只需要将输入的学生成绩和60作一次比较就可以得出结论:该成绩大于等于60为及格,否则该成绩不及格。,4.2 if 语句,4.2 if 语句,3.多重选择结构 多重选择结构用于有多种情况需要选择的程序。 一般形式为: if(表达式1) {语句1;} else if (表达式2) {语句2;} else if (表达式3) {语句3;} … else if (表达式n) {语句n;} else {语句 n+1;},4.2 if 语句,3.多重选择结构,4.2 if 语句,【例4.5】 判断所输入的学生成绩的等级,其具体要求如下表:,解题思路: 对于输入的学生成绩,可按照上表分为五个等级判断即可。,4.2 if 语句,4.2 if 语句,4.2.2 if语句的嵌套,if语句中的子语句1或子语句2还可以是if语句,这称为if语句的嵌套。 注意:else总是与前面最近的if配对。 一般形式如下: if(表达式1) if(表达式11) 语句11; else 语句12; else if(表达式2) 语句21; else 语句22;,4.2 if 语句,注意区别以下两种if语句结构: (1) if(表达式1) (2) if(表达式1) if(表达式11) {if(表达式11) 语句11; 语句11;} else 语句12; else 语句12;,关键是弄清楚else与if的配对情况 问:第(1)种情况else与哪个if配对? 第(2)种情况else与哪个if配对?,答:第(1)种情况else与第2个if配对 第(2)种情况else与第1个if配对,4.2 if 语句,【例4.6】按表输入三个整数a、b、c,分析运行结果。,#include “stdio.h” void main() { int a,b,c; int result11=0,result12=0, result21=0,result22=0; scanf(“%d,%d,%d”, },4.2 if 语句,分析一下输入、输出数据的特点。,2,6,8 a=2;b=6;c=8 0 0 0 16,2,8,6 a=2;b=8;c=6 0 0 0 16,8,2,6 a=8;b=2;c=6 0 16 0 0,6,2,8 a=6;b=2;c=8 0 16 0 0,6,8,2 a=6;b=8;c=2 0 0 0 16,8,6,2 a=8;b=6;c=2 96 0 96 0,本程序的执行结果数据如下所示:,4.3 多分支选择语句(switch语句),switch语句的一般形式: switch(表达式) { case 常量表达式1: 语句组1;break; case 常量表达式2: 语句组2;break; ┇ ┇ case 常量表达式n: 语句组n; break; [default: 语句组n+1;] },4.3 多分支选择语句(switch语句),执行过程:先求解表达式的值,然后与与后面各常量表达式比较,若与表达式i的值相同,则执行相应语句组i(i为1……n)。[若与常量表达式的值都不相同时,执行default后的语句组n+1]。动画演示如下:,4.3 多分支选择语句(switch语句),【例4.7】 根据输入的成绩等级A,B,C,D来对应输出相应的说明:“superexcellence(优秀)”,“excellence(良好)”,“middling(中等)”和“pass(及格)”,其它输入都为“failure(不及格)”。,4.3 多分支选择语句(switch语句),4.3 多分支选择语句(switch语句),相关说明: (1) case后面所有的常量表达式与switch后面表达式的值类型相同。 (2) 语句组可以是多个语句组成的,但不需要用大括号括起来。 (3) 如果case后面没有break语句,程序会继续执行后面case后语句组。 (4) 注意case和常量表达式之间要有空格。 (5) Default子句可以省略,case和default子句的出现次序是任意的。,4.3 多分支选择语句(switch语句),【例4.8】 对于输入的成绩等级A和B,相应输出为“良好”,C和D 对应着“及格”,其它输入都为“不及格”。 程序代码如下: #include “stdio.h” void main() { char grade; printf(“Please input the grade of score:\n”); scanf(“%c”, /*其它为“不及格”*/ } },4.3 多分支选择语句(switch语句),【例4.9】 将下列程序与4.8对比分析,什么情况下会出现相同与不同的情况。 程序代码如下: #include “stdio.h” void main() { char grade; printf(“Please input the grade of score:\n”); scanf(“%c”, } },注意:从例4.8和例4.9的区别和联系,重点关注break的用法和作用。,4.4 程序综合举例,【例4.11】判断输入的某一年是否是闰年,将结果输出。 提示:符合下列任一条件的年份为闰年,其它年份都不是闰年。 (1)该年份能被4整除,但不能被100整除; (2)该年份能被400整除。 解题思路:判断所输入的年份是否为闰年,只要满足(1)或(2)中的任意一条,该年份便为闰年,否则该年份不是闰年。仔细分析这两个条件,实际上就是三个数的整除问题,即是否能够被4、100、400整除,程序分别用flag1、flag2和flag3来表示。,4.4 程序综合举例,程序代码如下: #include “stdio.h” void main() { int year; int flag1, flag 2, flag 3; printf(“Please input a year:\n “); scanf(“%d”, },4.4 程序综合举例,运行结果如下: Please input a year: 1600↙ 1600 year is a leap year! Please input a year: 1902↙ 1902 year is not a leap year!,4.4 程序综合举例,【例4.12】输入一个无符号短整数和进制代号(d—十进制、0—八进制、x—十六进制),然后将数进制代号要求输出。 程序代码如下: #include “stdio.h” void main() { unsigned short x; char c; scanf(“%d,%c”, /*进制代号错误提示*/ } },4.4 程序综合举例,运行结果如下: 6,d↙ 6 6,o↙ 6 6,x↙ 6 6,c↙ Input error! 26,d↙ 26 26,o↙ 32 26,x↙ 1a,4.4 程序综合举例,【例4.13】对于输入的三个数值:x,y和z,判断它们可否构成一个三角形,若它们可以构成一个三角形,则输出该三角形的周长和面积。 解题思路:三角形三条边的边长之间的关系是:“两边之和大于第三边,两边之差小于第三边”可构成三角形。 边长分别为x,y,z的三角形面积:,,,其中:,演示该程序执行的过程,4.4 程序综合举例,【例4.14】一元二次方程ax2+bx+c=0的求解问题。,解题思路:根据一元二次方程ax2+bx+c=0的性质,可知:,(1)当b2-tac=0,该方程有两个相等的实数根,(2)当b2-tac0,该方程有两个不等的实数根,(3)当 b2-tac0, 该方程有两个共轭复根,(4) 若a=0,则该方程不是二元一次方程。,演示该程序执行的过程,4.4 程序综合举例,【例4.15】编写能实现下列分段函数的程序,要求:输入x,计算并输出函数y的值(保留2位小数):,,4.4 程序综合举例,程序代码如下: #include “stdio.h” void main() { float x,y; printf(“Please input x:”); scanf(“%f”, },

展开阅读全文

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
东南亚位于我国倡导推进的“一带一路”海陆交汇地带,作为当今全球发展最为迅速的地区之一,近年来区域内生产总值实现了显著且稳定的增长。根据东盟主要经济体公布的最新数据,印度尼西亚2023年国内生产总值(GDP)增长5.05%;越南2023年经济增长5.05%;马来西亚2023年经济增速为3.7%;泰国2023年经济增长1.9%;新加坡2023年经济增长1.1%;柬埔寨2023年经济增速预计为5.6%。 东盟国家在“一带一路”沿线国家中的总体GDP经济规模、贸易总额与国外直接投资均为最大,因此有着举足轻重的地位和作用。当前,东盟与中国已互相成为双方最大的交易伙伴。中国-东盟贸易总额已从2013年的443亿元增长至 2023年合计超逾6.4万亿元,占中国外贸总值的15.4%。在过去20余年中,东盟国家不断在全球多变的格局里面临挑战并寻求机遇。2023东盟国家主要经济体受到国内消费、国外投资、货币政策、旅游业复苏、和大宗商品出口价企稳等方面的提振,经济显现出稳步增长态势和强韧性的潜能。 本调研报告旨在深度挖掘东南亚市场的增长潜力与发展机会,分析东南亚市场竞争态势、销售模式、客户偏好、整体市场营商环境,为国内企业出海开展业务提供客观参考意见。 本文核心内容: 市场空间:全球行业市场空间、东南亚市场发展空间。 竞争态势:全球份额,东南亚市场企业份额。 销售模式:东南亚市场销售模式、本地代理商 客户情况:东南亚本地客户及偏好分析 营商环境:东南亚营商环境分析 本文纳入的企业包括国外及印尼本土企业,以及相关上下游企业等,部分名单 QYResearch是全球知名的大型咨询公司,行业涵盖各高科技行业产业链细分市场,横跨如半导体产业链(半导体设备及零部件、半导体材料、集成电路、制造、封测、分立器件、传感器、光电器件)、光伏产业链(设备、硅料/硅片、电池片、组件、辅料支架、逆变器、电站终端)、新能源汽车产业链(动力电池及材料、电驱电控、汽车半导体/电子、整车、充电桩)、通信产业链(通信系统设备、终端设备、电子元器件、射频前端、光模块、4G/5G/6G、宽带、IoT、数字经济、AI)、先进材料产业链(金属材料、高分子材料、陶瓷材料、纳米材料等)、机械制造产业链(数控机床、工程机械、电气机械、3C自动化、工业机器人、激光、工控、无人机)、食品药品、医疗器械、农业等。邮箱:market@qyresearch.com

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值