已阅读5页,还剩467页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录第一章概述第二章基本数据类型第三章基本结构程序设计第六章结构体与共用体,1,PPT学习交流,基础知识(有关概念)一、计算机系统由硬件系统和软件系统组成,它们是相辅相成,缺一不可的。没有软件控制,硬件系统是一堆费铁,而没有硬件平台支撑的软件,则一事无成。,2,PPT学习交流,二、程序和程序设计程序是为完成某一特定功能,由编程人员指定的、控制计算机按顺序执行一系列动作的、计算机能够识别的指令集合体。程序设计就是为计算机编制程序的过程,它涉及程序设计方法和程序设计语言等内容。,3,PPT学习交流,三、软件软件是与计算机系统的操作有关的计算机程序、规程、规则,以及可能有的文件、文档及数据。(不能认为软件就是程序,程序只是完整软件产品的一部分),4,PPT学习交流,四、程序设计语言用于书写计算机程序所使用的语言称为程序设计语言。它是由人工设计的语言,是人与计算机之间交互的工具。程序设计语言按照书写形式以及思维方式的不同,一般分为低级语言和高级语言两大类,低级语言包括机器语言和汇编语言。,5,PPT学习交流,1、机器语言是以二进制代码形式(0和1)表示的机器基本指令的集合,是计算机系统唯一不需要翻译可以直接识别和执行的程序设计语言。特点:运算速度快缺点:机器语言随计算机机型的不同而不同,难阅读、难查错、难修改。,6,PPT学习交流,2、汇编语言用一组字母、数字或字符来代替机器指令的语言称为汇编语言。与机器语言相比,使用汇编语言编写程序可以用助记符来表示指令的操作码和操作对象,也可以用标号和符号来代替地址。特点与缺点:,7,PPT学习交流,特点:便于识别和记忆,执行效率较高。缺点:(1)计算机不能直接执行,必须通过“翻译”程序“汇编程序”的帮助,才能转换成相应的机器代码,才能被执行。(2)不同CPU的指令系统其相应的汇编语言不同从而形成了对机器有依赖性。,8,PPT学习交流,3、高级语言是一种接近人们熟悉、习惯的自然语言和数学语言描述的程序设计语言。程序中可以采用具有一定含义的数据命名和容易理解的执行语句。这些语句易学、易用、易维护,且在一定程度上与机器无关,给编程带来了极大的方便。特点与缺点:,9,PPT学习交流,特点:程序易设计、理解与维护,容易保证程序正确性。缺点:执行速度没有低级语言高,因为计算机硬件不能直接识别高级语言中的语句,需要先“翻译”,再执行。,10,PPT学习交流,五、程序设计步骤1、明确问题(弄清楚做什么)2、系统设计(怎么做:抽象出数据结构设计对数据的操作)3、用计算机语言编制程序4、调试程序,11,PPT学习交流,六、机器数及表示方法计算机中的数是用二进制来表示和存储的,数的符号也是用二进制来表示的(1代表负数;0代表正数)。机器数:把一个数连同其符号在内在机器中的表示加以数值化,这样的数称为机器数。,12,PPT学习交流,机器数的表示方法:计算机中通常使用二进制补码的形式来表示一个数。(因为补码运算可以连同符号位一起参与运算,这便于运算器的设计与实现),13,PPT学习交流,七、字符表示法计算机系统可以识别及处理的字符在机器中用二进制数来表示。常采用ASCII码(美国信息交换标准代码)来表示。这种代码用一个字节(8位二进制码)来表示一个字符,其中低7位为字符的ASCII码值,最高位一般用作校验位。,14,PPT学习交流,第1章概述1.1C语言简介C语言是一种流行的计算机高级程序设计语言,它设计精巧,功能齐全,不仅是开发系统软件的理想工具,也是开发应用软件的理想程序设计语言。C语言能够在多种操作系统下运行。,15,PPT学习交流,1.2C语言的特点C语言之所以能成为应用很广的计算机高级程序设计语言之一,是因为它有以下特点:1、语言短小精悍,基本组成部分紧凑、简洁。C语言只有32个标准关键字、42个标准运算符和9种控制语句,语言的组成精练、简洁,而且使用方便灵活。,16,PPT学习交流,2、运算符丰富,表达能力强。C语言具有“高级语言”和“低级语言”的双重特点,其运算符包含的内容广泛,所生成的表达式简练、灵活,有利于提高编译效率和目标代码的质量。,17,PPT学习交流,3、数据类型丰富,结构化好。C语言提供了编写结构化程序所需要的各种数据类型和控制结构,这些丰富的数据类型和控制结构以及以函数调用为主的程序设计风格,保证了利用C语言所编写的程序能够具有良好的结构化。,18,PPT学习交流,4、提供了某些接近汇编语言的功能,有利于编写系统软件。这些功能包括:可以直接访问物理地址,并能进行二进制位运算等。,19,PPT学习交流,5、C程序所生成的目标代码质量高C程序所生成的目标代码的效率仅比用汇编语言描述同一个问题低20%左右,C语言描述问题直观、快捷、工作量小、可读性好、易于调试、修改和移植。因此,C语言编写的程序执行效率高。,20,PPT学习交流,6、C程序的可移植性好在C语言提供的语句中,没有直接依赖与硬件的语句和与硬件有关的操作。因此,用C程序编写的程序能够很容易地从一种计算机环境移植到另一种计算机环境中。,21,PPT学习交流,弱点:1、运算符的优先级太多不易记忆,且与日常习惯不完全一致。2、由于语言的语法限制不太严格,在增加了程序设计灵活性的同时,在一定程度上也降低了某些安全性。(这对程序设计人员提出了更高的要求)3、类型检查机制弱,导致有些错误不能在编译时发现。,22,PPT学习交流,1.3C程序结构和书写风格用C语言编写的程序,称为C语言源程序,简称C程序。任何一种计算机语言,与人类自然语言一样,都有特定的语法规则和特定的表现形式。用一种计算机语言所编写的程序,其书写格式和程序结构的构成规则,就是该种语言特点的具体体现。,23,PPT学习交流,1.3.1简单C程序介绍程序1:编写一个C程序,程序功能为在标准输出设备(显示器)上显示指定字符串:“welcometouseC”。源程序为:#includemain()printf(“welcometouseCn”);程序运行结果为:welcometouseC,24,PPT学习交流,程序2:计算两个整数之和并显示其结果#includemain()intx,y,sum;x=32;y=67;sum=x+y;printf(“%d+%d=%dn”,x,y,sum);显示结果格式为:32+67=99,25,PPT学习交流,程序3:用函数调用法求任意两个整数中的较大者。#includemain()inta,b,c;scanf(“%d,%d”,26,PPT学习交流,1.3.2C程序结构从前述例子,可总结C程序结构的特点:(1)C程序可以由一个或多个函数构成,但任何一个完整的C程序都必须包含一个且只能包含一个主函数(main函数)。在程序中,无论main函数在何位置,执行程序时总是从main函数开始执行,且在主函数中结束整个程序的执行,即主函数的结束就是整个程序的结束。,27,PPT学习交流,(2)函数是程序的基本单位,一个程序功能的实现需通过各个函数的功能来实现,而函数的功能是通过函数之间的相互调用来实现。程序中所使用的函数可以是系统提供的标准库函数,也可以是用户根据需要自定义的函数。,28,PPT学习交流,(3)一个函数是由函数首部和函数体构成,函数首部包括函数名、函数类型和函数参数等。函数体是用左右花括号括起来的部分,它包括局部变量的定义和一组执行语句。函数的功能就是由函数体中的语句完成的。C程序中用到的所有变量都必须遵循“先定义后使用”的原则,每一个执行语句必须由“;”(分号)结束。,29,PPT学习交流,(4)在函数之外还可以包含一个说明部分,称为外部说明,它可以包括预编译命令、外部变量的说明等。(5)在程序中可以加入注释,格式为:/*注释内容*/,注释为非执行语句,它对程序的编译和执行结果无任何影响,使用的目的是增强程序的可读性。,30,PPT学习交流,1.3.3C程序的书写风格(1)为了提高程序的可读性,在书写程序时建议使用“锯齿形”的书写方式,即根据语句的从属关系,以缩进书写的形式来体现语句的层次关系。即在语句之前加上适当的空格字符,使处于同一层次的语句从同一列开始书写;,31,PPT学习交流,(2)建议一行只写一个语句(C允许在一行内写多个语句);(3)用小写字母书写程序,大写字母一般用作符号常量或其它用途;(4)标识符(变量名、函数名等)的定义应尽量做到“见名知意”;(5)适当地使用输入/输出时的提示信息,以增强程序的可读性和方便程序的调试。,32,PPT学习交流,1.4C程序的编辑、编译和运行从编写一个源程序到在计算机上得到运行结果,基本步骤有编辑、编译、连接和运行,每一步的大致含义是:,33,PPT学习交流,(1)编辑(输入/修改源程序的过程)用某种编辑软件,将C语言源程序输入到计算机,并以文件的形式存入到磁盘(外存)中。经过编辑后得到的文件以.C或.CPP为文件类型名,称为C或C+源文件。(ASCII码组成的文件,其中的代码机器不能识别),34,PPT学习交流,(2)编译(检查程序中语法错误并生成目标代码的过程)对编辑的源文件进行编译(翻译)以产生目标代码文件(将高级语言源程序翻译成机器代码)。编译的过程同时也是检查源程序中各语句是否存在语法错误的过程,当排除了源程序中的所有的语法错误后,可得到相应的目标文件,目标文件以.OBJ为文件类型名。,35,PPT学习交流,(3)连接(将生成的目标代码与库函数等连接的过程)经过编译后的目标文件是不能直接运行的,需要经过连接后才能生成可执行代码(可执行文件),可执行文件是以.EXE为文件类型名。,36,PPT学习交流,(4)运行(检查程序逻辑错误及执行程序获得结果的过程)通过运行可执行文件(.exe文件)可获得程序运行结果。若程序中存在逻辑错误,系统将给予提示,此时需对程序进行相应修改,再重复(1)(4)步。总结上机主要步骤:输入源程序保存源程序编译源程序连接目标代码运行程序,37,PPT学习交流,第2章基本数据类型任何一种语言都有相应的语法规则,而语法规则是由语言的基本元素构成。C语言包含以下基本元素。2.1标识符和关键字2.1.1标识符(用户定义的标识符)C程序中的每一个变量、数组、函数和文件都必须有一个唯一的名称用于系统识别和使用,该名称被称为标识符。(标识符是一个名字,用来标识变量、常量、数组、函数和文件的名字),38,PPT学习交流,标识符的定义规则:(1)一个标识符只能由字母、数字和下划线构成,且第一个字符必须是英文字母或下划线。标识符是由用户根据实际问题的需要自己定义的;(2)在定义标识符时,大、小写字母是有区别的,习惯上,标识符用小写字母表示;(3)标识符的长度要求随不同的编译系同而不同,一般最好不要超过八个字符;(4)在定义时,除保证合法性外,最好做到“见名知意”,以提高程序的可读性。,39,PPT学习交流,2.1.2关键字(系统定义的标识符)关键字是一类具有特定含义,专门用作语言的特定成分的标识符。在程序设计中常处于特定的位置,不能当作一般的标识符来使用。在使用关键字时要注意,关键字都是小写的,且书写时不能跨行书写。,40,PPT学习交流,2.2C语言的数据类型2.2.1数据类型概念算法处理的对象是数据,数据就是程序中的实际数值。数据是以某种特定的形式存在的(如整数、实数、字符等形式)。根据数据的取值范围、可参加的运算以及在计算机中的存储方式等,可以把数据分为各种不同的类型。,41,PPT学习交流,2.2.2程序的概念一个程序应包含以下两方面的内容:(1)对数据的描述:即在程序中要指定所使用数据的数据类型和数据的组织形式,即描述数据结构;(2)对操作的描述:即对数据的操作步骤的描述,亦即算法描述。即:程序=数据结构+算法,42,PPT学习交流,2.2.3C语言的数据类型类型列表见教材(整型、实型、字符型等)C语言中,所处理的数据根据用途分为不同的数据类型,且分为常量和变量,程序在运行过程中就是通过变量和常量来操作数据的。常量和变量均属于相应的类型。在程序中,对所有用到的数据都必须指定其数据类型,这将关系到数据的正确使用、存储和运算等。,43,PPT学习交流,2.3常量、常量及其分类2.3.1有关概念1、什么是常量?在程序运行过程中,其值不能被改变的量。2、常量的表示方法:直接常量和符号常量直接常量:在程序中直接出现的常数,例20,-5,3.14等。其特点是,无需定义,可直接使用;,44,PPT学习交流,符号常量:用一个标识符来代表一个常量(该标识符用大写字母表示),在定义了标识符以后,它在程序运行过程中恒代表常量的值。其特点是:需要定义标识符以及它所代表的值,在程序中使用标识符表示常量值(宏替换)。,45,PPT学习交流,3、常量的类型即为在程序中存在的类型。例在语句lenth=2*3.14*r;中,2为整型常量;3.14为实型常量。4、常量的特点对于符号常量而言,它一旦被定义,其值在程序中不能被改变,即不能被再赋值。,46,PPT学习交流,提示:在程序中应尽量使用符号常量,其好处是:(1)含义清楚,在一个规范的程序中不提倡使用更多的直接常量,过多的常数将导致其含义的混乱,而应该根据常量的用途尽量使用“见名知意”的符号常量;,47,PPT学习交流,(2)在需要改变一个常量的值时能做到“一改全改”。例:#definePRICE30main()intnum,total;num=10;total=num*PRICE;printf(“total=%d”,total);,48,PPT学习交流,2.3.2常量的分类1、整型常量即通常使用的整常数,在C语言中有三种表示方法:十进制、八进制和十六进制。亦即,这三种表示方法的常数可出现在C表达式中。2、实型常量即通常使用的小数,有两种表示方法:十进制表示法和指数表示法。前者使用普遍,后者主要用于表示高精度小数。,49,PPT学习交流,3、字符型常量即为一个C语言系统能够识别的单字符,其表示方法为用一对单引号括起来的一个单字符。字符型常量有两种:,50,PPT学习交流,(1)作为字符处理的字符常量(例:A、s、+、#、9等)特点:此类常量表现形式为字符,但它们在存储时是按字符在机内的编码值(ASCII码值)存储的,因此,在C语言中:字符常量可以参与数值运算可以把一个字符常量赋给某个字符变量或整型变量(一个字符常量可视为一个字节的整数),51,PPT学习交流,(2)起控制作用的特殊字符(转义字符)(例n、t等)特点:此类常量用于作为控制代码和输出特殊字符。(在程序中不能像可显示字符一样直接表示字符)控制代码:例n表示回车;t表示跳格;b表示退格等;特殊字符:输出在C语言中有特定含义的字符,例单引号()、双引号(“”)、反斜线()等。例:语句printf(“happy”);将输出“happy”,52,PPT学习交流,4、字符串常量字符串常量是由0个或多个字符构成的字符序列。字符串的表示是用一对双引号括起来的字符序列。有关字符串的概念:空串:由零个字符构成的字符串,表示方法为“”。字符串长度:字符串中双引号内字符的个数。,53,PPT学习交流,字符串常量的存储:在C语言中,是用字符数组来存储字符串的,数组中的每一个元素存放一个字符。为了保证字符串存取的正确性,在存储字符串时,系统将自动地在字符串的最后加上一个“空字符”(0),该字符称为字符串结束标记,用来表示字符串的结束(该字符不可显示,亦不产生任何控制作用故称空操作符)。所以,用来存储字符串的存储单元应该比字符串长度至少多一个字节,用以存放0字符。提示:a和“a”有两点不同:表示和存储。,54,PPT学习交流,字符常量与字符串常量的区别:表示方法不同;存储方式不同,不能把一个字符串赋给一个字符变量。字符串常量的使用:可由两种方式实现,一是直接使用本身;二是通过对字符数组元素的引用。(见下例),55,PPT学习交流,举例:直接使用例输出指定字符串:“Howdoyoudo!”。使用语句:printf(“Howdoyoudo!”);字符数组元素引用例-输出同上字符串,方法为:定义字符数组:chara20=“Howdoyoudo!”;输出:for(i=0;i=(大于等于)、(小于)、=、=二级:=、!=结合性:均为左结合(5)关系运算符与其它运算符的优先级算术运算符(高)关系运算符赋值运算符(低)(6)特别提示:不要将关系运算符“=”(是否等于)误写成“=”(赋值运算符)。,111,PPT学习交流,3.3.2逻辑运算符和逻辑表达式有关概念:(1)逻辑量:C语言中,进行逻辑运算时,将所有的非0数值(正/负)都视为逻辑量“真”;把数值0视为逻辑量“假”。(2)逻辑运算:是指对逻辑量进行的运算,一般用来描述由多个条件组合而成的复合条件,运算结果是一个逻辑值。,112,PPT学习交流,(3)逻辑运算符及优先级和结合性运算符:!、printf(“inputx:n”);scanf(“%f”,123,PPT学习交流,例:阅读程序选择运行结果(复合语句的正确使用)#includemain()intx,y,t;scanf(“%d,%d”,124,PPT学习交流,2、双分支条件语句(参看教材)一般形式:if(表达式)语句1else语句2使用说明:(1)双分支条件语句中的“语句1”和“语句2”若为简单语句,则语句之后的分号不能少;(2)else子句只能与if配对使用,不能单独使用。例子,125,PPT学习交流,例1:从键盘任意输入一个字符,若是小写字母,则转换成相应的大写字母;若是大写字母,则转换成相应的小写字母;其它字符保持不变进行输出。(逻辑表达式的使用)#includemain()charch;printf(“Enteracharacter”);scanf(“%c”,注意:以上的逻辑表达式不能写成a=ch=z,应分解为两个简单的条件,再用“逻辑与”连接起来。,126,PPT学习交流,例2:编程实现温度双向转换。要求实现功能:先输入1或者2选择功能,若输入1,则要求输入摄氏温度,将其转换成华氏温度输出;若输入2,则要求输入华氏温度,将其转换成摄氏温度输出。#includemain()intnum;floatf,c;printf(“请输入转换方式:1-摄转华;2-华转摄n请选择:”);scanf(“%d”,127,PPT学习交流,f=9.0/5*c+32;printf(“对应的华氏温度为:%fn”,f);elseif(num=2)printf(“n请输入华氏温度:n”);scanf(“%f”,elseprintf(“选择有误!”),128,PPT学习交流,3.3.4if语句的嵌套形式“嵌套”是指在if或if-else形式中的“内嵌语句”又是if或if-else语句,嵌套可以用来实现多重(多选一)选择结构。有两种形式的嵌套。1、if-else-if形式(多分支的条件语句)一般形式:if(表达式1)非if语句1elseif(表达式2)非if语句2elseif(表达式3)非if语句3.elseif(表达式n)非if语句nelse非if语句n+1,129,PPT学习交流,语句特点:(1)语句结构是if-else语句中else子句的“内嵌语句”为一个单分支的if语句;(2)在该形式中,语句1语句n之间只能且必须执行当中的一个语句,若条件1条件n当中任一为真,则执行相应的语句,之后退出该if语句;若它们均不为真,则执行语句n+1,之后退出该if语句;(3)该形式语句的使用易引起逻辑关系不清,当层次过多时,程序冗长且可读性差。,130,PPT学习交流,例:规定学生考试成绩大于等于90分的为A等,大于等于80分小于90分的为B等,大于等于60分小于80分的为C等,60分以下的为D等。编程:输入一个学生的成绩,然后输出其对应的等级。,131,PPT学习交流,#includemain()chargrade;intscore;printf(“Enterscore:”);scanf(“%d”,132,PPT学习交流,2、第二种形式的嵌套语句一般形式:if(表达式1)if(表达式2)语句1else语句2elseif(表达式3)语句3else语句4语句特点:语句的结构是在if-else(双分支)语句中if子句(或/和)else子句中的“内嵌语句”为if-else语句。,133,PPT学习交流,嵌套的if语句使用说明:(1)该类语句在if-else的配对形式上容易产生语义二义性问题,故在书写程序时要注意层次性,即将各级嵌套的语句排列写成“锯齿形”格式,以助于程序的阅读和理解;(2)在使用嵌套的if语句时,要注意if-else的配对关系,配对不同,语句的执行效果将不同。C语言规定:无论书写格式如何,else总是与它最近的且又未配对的if配对。,134,PPT学习交流,例:阅读以下程序,选择运行结果#includemain()inta=2,b=-1,c=2;if(ab)if(b10?-x:+x,141,PPT学习交流,4、使用说明(1)在应用中通常是将条件表达式的值赋给一个变量,构成一个赋值语句。由于条件运算符优先于赋值运算符,因此先求解条件表达式,再将其值赋给变量。(2)条件表达式不能取代一般的if-else语句,只有在if-else语句的“内嵌语句”均为赋值语句且两个分支都为同一个变量赋值时才有等价性。例:if(xy)z=x;可写成:z=xy?x:yelsez=y;,142,PPT学习交流,(3)条件运算符允许嵌套使用例:y=x0?1:x0?1:(x=90)?A:(score=80)?B:(score=70)?C:(score=60)?D:E,143,PPT学习交流,3.3.6switch语句switch语句用来实现多分支选择结构。、一般形式:(参看教材)switch(表达式)case常量1:语句序列1break;case常量2:语句序列2break;.case常量n:语句序列nbreak;default:语句序列n+1,144,PPT学习交流,其中:“表达式”应为一个整型或字符型表达式;“常量i”通常为整型常量或字符型常量;“break”语句的功能为“无条件跳出switch语句”例:case5:语句或casea:语句(正确)而caseab:语句或casea+b+c:语句(不正确),145,PPT学习交流,、执行过程(1)计算“表达式”的值,其运算结果应为整型或字符型(若不是需转换);(2)用“表达式”值顺序与各“常量”的值进行比较,若与某一相等,则控制转到相应的case后面的语句段执行,若语句序列中无break子句,则继续执行其后的各case语句段及default部分;若语句序列中有break子句,则遇到“break”时终止switch语句的执行,继续执行其后的其它语句;(3)若无任何一个相等的“常量”的值,则执行default后的语句段,之后退出switch语句,并继续执行其后的其它语句。,146,PPT学习交流,、使用说明(1)各“常量”的值必须各不相同,否则出现矛盾;(2)default部分可以省略,此时若无相等的常量值则什么都不执行而直接退出语句的执行,继续执行其后的语句;(3)各case和default的次序不影响程序的运行结果;(4)多个case可共用一组执行语句;(5)当语句序列中的语句多于一个时,可不使用复合语句。,147,PPT学习交流,例:编写一个进行两位数的加减乘除四则运算的计算器模拟程序,例如当输入“5/2”时,显示“2.5”。#includemain()floatx,y;charoperator;printf(“inputanarithmeticexpressionn”);scanf(“%f%c%f”,148,PPT学习交流,例:输入一个年、月、日,计算并输出从本年1月1日到这一天的总天数。#include#includemain()intyear,month,days;printf(“inputyear,month,day:”);scanf(“%d%d%d”,149,PPT学习交流,switch(month)case11:days+=30;case10:days+=31;case9:days+=30;case8:days+=31;case7:days+=31;case6:days+=30;case5:days+=31;case4:days+=30;case3:days+=31;case2:if(year%4=0,150,PPT学习交流,例:某商场给予顾客购物折扣率如下:购物金额购物金额=200元9折1000元购物金额=500元8折购物金额1000元7.5折编程:根据购物金额算出实际付款金额。(用if嵌套和switch语句完成),#include/*用if语句实现*/main()floats,t;printf(“inputamount:”);scanf(“%f”,151,PPT学习交流,用switch语句实现#include“stdio.h”main()floats,t;printf(“inputamount:”);scanf(“%f”,152,PPT学习交流,例:阅读程序选择运行结果#includemain()charch;ch=getchar();switch(ch)case65:printf(“%c”,A);case66:printf(“%c”,B);default:printf(“%sn”,“other”);若运行时输入字符A选择:AABotherAother,153,PPT学习交流,例:选择运行结果设有说明:inta=1,b=0;执行语句switch(a)case1:switch(b)case0:printf(“*0*”);break;case1:printf(“*1*”);break;csae2:printf(“*2*”);break;选择:*0*0*2*0*1*2*,154,PPT学习交流,条件语句小结:,1、条件语句分为单分支、双分支和多分支条件语句,无论是何种情况,实现的均是对某一个条件进行成立与否的判断,以决定执行何种操作;2、在条件语句中,条件的判断是灵活的,要学会将语言描述的条件变为一个关系表达式或逻辑表达式的描述,尤为重要的是掌握较为复杂的逻辑运算(即用多个逻辑运算符连接多个关系表达式的情况);,155,PPT学习交流,3、在条件语句的“内嵌语句”中,要注意根据算法和要求,正确地写出描述语句,既要有完整性(复合语句的正确使用),又要满足逻辑性(分支走向是否正确);,4、在if-else的嵌套中,要注意if和else的配对情况,配对不同,语句的执行效果完全不同(将导致程序的逻辑错)。原则:else总是与它之上最近的且又未配对的if配对。5、在使用条件语句时,若判断的条件较复杂,则应先将算法思想用简易流程图整理逻辑关系再编程。为提高程序的可读性,对多分支的条件判断可采用不同的语句处理。,156,PPT学习交流,3.4循环结构循环结构是一种解决重复运算和重复操作的控制结构,该结构通过循环语句实现。例:编程计算并输出y=ex,z=的值其中x=1,2,3,30,x,157,PPT学习交流,用非循环方法:#include#includemain()intx=0;doubley,z;x+;y=exp(x);z=sqrt(x);printf(“x=%d,y=%f,z=%fn”,x,y,z);x+;y=exp(x);z=sqrt(x);printf(“x=%d,y=%d,z=%dn”,x,y,z);x+;y=exp(x);z=sqrt(x);printf(“x=%d,y=%f,z=%fn”,x,y,z);,158,PPT学习交流,用while循环语句完成#include#includemain()intx=1;doubley,z;while(x=30)y=exp(x);z=sqrt(x);printf(“x=%d,y=%f,z=%fn”,x,y,z);x+;,159,PPT学习交流,用for循环语句完成:#include#includemain()intx;doubley,z;for(x=1;x=0;i-=2)printf(%d”,i);,175,PPT学习交流,例1、从键盘输入20个整数,求所输入数中的偶数之和、个数及奇数之和及个数并输出结果。#includemain()inti,x,c1=0,c2=0,so=0,sj=0;for(i=1;i=20;i+)scanf(“%d”,176,PPT学习交流,例2、判断一个给定的正整数m是否是素数并输出相应信息。思想:a.什么是素数?只能被1或本身整除的数;b.判断方法:如果m能被2m之中任何一个数整除,则不是素数,否则(不能被任何一个数整除)是素数;c.编程思想:由判断方法可知,在算法中要进行多次相同的运算:整除与判断,故要涉及到循环结构和选择结构。,177,PPT学习交流,方法一:#include“stdio.h”#include“math.h”main()intm,i,k;printf(“Enterintegerm:”);scanf(“%d”,178,PPT学习交流,方法二:#include“stdio.h”#include“math.h”main()intm,i,k,flag;printf(“Enterintegerm:”);scanf(“%d”,179,PPT学习交流,例3、编程求出所有的“水仙花数”,“水仙花数”是指对于一个三位整数,若它的每位数的立方和等于它本身,则称之。例:153=13+53+33,则153为“水仙花数”。程序:#include“stdio.h”main()inti,a,b,c,m;for(i=100;i=999;i+)a=i%10;(获取i的个位)b=i%100/10;(获取i的十位)c=i/100;(获取i的百位)m=a*a*a+b*b*b+c*c*c;if(i=m)printf(“%d”,i);,180,PPT学习交流,181,PPT学习交流,3.4.4循环的嵌套嵌套是指:在一个循环语句的循环体内又包含一个完整的循环语句(即循环体语句又是循环语句)。内嵌的循环中还可以再嵌入循环结构从而构成多重循环。例1、输出九九乘法表,182,PPT学习交流,#includemain()inti,j;for(i=1;i=9;i+)for(j=1;j=i;j+)printf(“%2d*%2d=%2d”,i,j,i*j);printf(“n”);,183,PPT学习交流,例2、阅读以下程序,指出运行结果#includemain()intk=0,m=0,i,j;for(i=0;i2;i+)for(j=0;j3;j+)k+;k-=j;m=i+j;printf(“k=%d,m=%dn”,k,m);运行结果:k=0,m=5,184,PPT学习交流,例3、输入一个正整数n,输出n行n列由字符“#”构成的方阵。#includemain()运行时输入:4intn,i,j;输出:printf(“请输入n值:n”);#scanf(“%d”,185,PPT学习交流,3.4.5break语句和continue语句1、break语句一般形式:break;功能:(1)终止switch语句中的一个case,并使程序退出switch语句,继续执行switch语句之后的语句;(2)根据循环体内的某个条件,使程序从循环中跳出,终止整个循环。在多重循环中,仅退出break语句所在的那一层循环。使用注意:只能用在switch语句和循环结构中,而不能试图在程序的其它地方通过使用该语句而使程序提前结束。,186,PPT学习交流,例1:编写程序,从正整数1开始寻找能同时满足除以3余2,除以5余3,除以7余4的第一个正整数。#includemain()inti=0;doi+;if(i%3=2,187,PPT学习交流,例2:读程序选择运行结果#includemain()inta,b;for(a=1,b=1;a=10)break;if(b%3=1)b+=3;printf(“%d:%dn”,a,b);选择结果:3:106:75:134:10,188,PPT学习交流,2、continue语句一般形式:continue;功能:用在循环语句(while、do-while和for)的循环体中,其作用是使程序结束本次循环,而未造成整个循环语句的终止。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 客户关系管理(CRM)模板信息自动匹配版
- 企业销售预测与趋势分析模板
- 文档管理归档与守秘措施指南
- 企业招聘流程优化标准手册
- 企业项目文档管理及存档标准化流程
- 企业采购管理标准化流程与制度
- 质量管理体系建立及优化模板
- 企业资产管理系统化整合工具
- 单位信用管理标准承诺函5篇
- 2025年低空经济空中展演技术产业政策与市场机遇研究报告
- 2025年中国RWS行业调研报告
- 2025年入团考试测试题目及答案
- 2025年入团积极分子题库及答案(完整版)
- 2025江西吉安市低空经济发展促进中心选调工作人员7人考试参考试题及答案解析
- 华润燃气管理能力测评题库及答案详解
- 2025年三支一扶计划考试笔试试题(含答案)
- 2025年肿瘤放射治疗学科综合知识测试答案及解析
- 中小学科学读书分享
- 2025年农村教学考试题及答案
- 山西建设工程施工合同(标准版)
- 成都树德实验中学东区八年级上册期中生物期中试题及答案解答
评论
0/150
提交评论