欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    C语言程序设计基础知识期末复习.docx

    • 资源ID:94213327       资源大小:42.29KB        全文页数:24页
    • 资源格式: DOCX        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C语言程序设计基础知识期末复习.docx

    C语言程序设计基础知识期末复习C语言程序设计基础知识期末复习一、C语言与算法1 .程序:一组计算机能识别和执行的指令。2 .C语言的特点:运算符丰富(共有34种运算符)、数据类型丰富、 具有结构化的控制语句。3 .C语言程序的结构特点:(1 ) .一个程序由一个或多个源程序文件组成:一个源程序文件 中可以包括三个部分:预处理指令、全局声明、函数定义(2 ).函数是C程序的主要组成部分:一个C程序是由一个或多 个函数组成的必须包含一个main函数(只能有一个);每个函数都用 来实现一个或几个特定功能;被调用的函数可以是库函数,也可以是 自己编制设计的函数。(3 ).一个函数包括两个部分函数首部和函数体(声明部分:定 义在本函数中所用到的变量;对本函数所调用函数进行声明;执行部 分:由若干个语句组成,指定在函数中所进行的操作)(4 ).程序总 是从main函数开始执行(5).C程序对计算机的操作由C语句完成(6.)数据声明和语句最后必须有分号(7.)C语言本身不提供输入输出语句(8.)程序应当包含注释,增加可读性4、算法(1)算法+数据结构二程序(2)顺序结构、选择结构、循环结构是表示一个良好算法的基本 结构(3 )算法的特性:有穷性、确定性、有零个或多个输入、有一个 或多个输出、有效性(4)算法流程图:一个流程图包括以下几部分:表示相应操作的 框;带箭头的流程线;框内外必要的文字说明。流程线不要忘记画箭头,否则难以判定各框的执行次序。算法流程图的结构特点:只有一个入口;只有一个出口(一个判在while的循环体中一定要有使循环趋于结束的语句;否则将形 成死循环;注意循环操作的范围、花括号、分号的使用;注意给循环变量赋初值的位置及初值的正确性2、用do.while语句实现循环do-while语句的特点:先无条件地执行循环体,然后判断循环 条件是否成立d。-while语句的一般形式为:do语句while (表达式);while和do.while语句的比较当while后面的表达式的第一次的值为真时,两种循环得到 的结果相同;否则不相同(1).循环体内必须有使循环趋于终止的条 件while (i< = 100) dosum=sum + i; sum=sum + i;i + +; i + +; while (i< = 100);(2)注意循环初值与循环条件i=l; i=0;while (i< = 100) while (i<100)sum=sum + i; i+;i+; sum=sum + i;)(3 ) do_while循环的循环体至少执行一次,while循环的循环体 可能一次也不执行。(4 )在循环体至少执行一次的前提下, do_while与while循环等价。语句实现循环for、3for语句的一般形式为for(表达式1 ;表达式2 ;表达式3)语句表达式1 :设置初始条件,只执行一次。可以为零个、一个或多个 变量设置初值执行表达式2 :循环条件表达式,用来判定是否继续循环。在每次执行 循环体前先执行此表达式,决定是否继续执行循环表达式3 :作为循环的调整器,例如使循环变量增值,它是在执行 完循环体后才进行的for语句说明:1)表达式1可省略,但分号不能省;如:int i=l/sum=0;for (;i< = 100;i+)sum=sum + i;2)若表达式2省略,循环条件永远为真;如:for(i=l; ;i+)printf( %d,,i);死循环自己编程序时不建议采用,3)表达式3也可省略,但应设法保证循环正常结束"旦要能看懂 别人的程序如:for (i=l;i< = 100;)sum=sum + i;i+;)4 )可只给循环条件;i=l;for (;i< = 100;)sum=sum + i;i + +;)5)三个表达式都可省;for (;)相当于 while (1)6)表达式1和表达式3可以是逗号表达式;如:for (i=l/sum=0;i< = 100;i+)sum=sum + i;7)表达式2一般为关系表达式或逻辑表达式,但也可以是数值表 达式或字符表达式,只要其值为非零就执行循环体。如:for (;(c=getchar( )! = 'n')printf(%cc);注:尽量避免用实型变量控制循环次数。4、改变循环的执行状态(1)用break语句提前终止循环break语句作用:1)从循环体内跳出,即提前结束循环,接着执行循环下面的语句;2 ) break语句只能用于循环语句和switch语句注意:在循环中使用了 break语句后,循环语句的结束可能有两种:由于循环条件表达式为假:正常结束(正常出口)1.3 .非正常结束(异常出口):由break语句引起(2 ) continue语句提前结束本次循环结束本次循环,即跳过循环体语句中下面尚未执行的语句,接着 执行下一次是否执行循环的判定:for (n = 100;n<=200;n+)if (n%3= =0) continue;printf(H %d,n);这段程序等价于 if(n%3!=0)printf( %d,n);)for语句中执行的是表达式3(3 ) break语句和continue语句的区另!continue语句只结束本次循环,而不是终止整个循环的执行break语句结束整个循环过程,不再判断执行循环的条件是否成 立四、利用数组处理批量数据1、一维数组(1)定义一维数组定义一维数组的一般形式为:类型符数组名常量表达式;说明:类型符:数组元素的类型。数组名:即数组的名称,其命名方法同变量名。在定义数组时,需要指定数组中元素的个数,方括弧中的常量表 达式用来表示元素的个数,即数组长度。注意:1)在定义数组时,只能使用整常量表达式表明数组的大小,即数组元 素的个数,不能是变量。也就是说,c语言不允许对数组的大小作动态 定义.注意:int n = 10;int arrn;错误,n不是常量而是变量数组说明中其他常见的错误:float a0;/*数组大小为0没有意义*/int b(2)(3); /*不能使用圆括号/int k, ak;/*不能用变量说明数组大小*/一维数组的存储方式:每个元素都有一个编号(从0开始),称为 下标。(2 )引用一维数组一次只能引用一个数组元素不能引用整个数组所有元素!也不能 引用多个兀素引用数组元素的表示形式为:数组名下标一个数组元素就是一个普通变量,跟普通变量一样使用。a3=a2%4注意:引用数组元素时,下标可以是整型常量、变量或整型表达式对数组中所有元素逐个引用时,通常可使用循环结构。(3)一维数组的初始化数组的初始化:在定义数组的同时,给各数组元素赋值格式:);初值表=类型符数组名表达式补齐int a8= 0,123,4 );后面的用0给部分元素赋初值。例= 0,123,4;注意:只有在初始化时给全部元素赋初值时可不 指定数组的长度。int矶中可以空着。其他情况不行,例如:是错误的2、二维 数组;常量表达式常量表达式二维数组定义的一般形式为类型符数组 名Q)定义二维数组行、列下标都是从0开始列下标(2 )引用二维数组数组名行下 标二维数组在内存中按行存放二维数组的存储方式二维数组初始化通常是按行进行的(3 )二维数组的初始化);表达式1表达式2=初值表类型符数组名给全部元素赋初值。 9,10,11;例或写成:int a34=0,1,234,5,6,7,8,9,10,11给二维数组的全部元素赋初值,可以不指定第一维的长度,但第 二维的长度不能省略。#define N 10#define M 6若有定义:int aNM;二维数组按行输入标准模板:for(i=0; i< = "n p="n>for(j=0;j< = n" p="">scanf(%dz &aij);二维数组按行输出标准模板:for(i=0; i< = "M p="n>for(j=0;j< = n" p=n">printf(%d, aij);printf();)3、字符数组(1)字符数组的定义:定义字符数组的方法与定义数值型数组的 方法相同,使用关键字char格式:char数组名常量表达式,;(2)字符数组的初始化一维字符数组初始化1)逐个字符赋给数 组中的各元素2)用字符串常量初始化数组中的各元素字符串在实际存储时,是用字符数组存储的,系统会自动的在其 尾部添加一个结束标志0'二维字符组初始化二维字符数组的初始化, 可以采用逐个字符式或者字符串常量的方式(3 )引用字符数组引用字 符数组中的元素,与引用其他类型数组元素相同只能是一个一个字符地引用(4)字符数组的输入输出1、利用getchan putchar逐个处理(用循环结构)利用格式符c逐个输入、输出字符for( i=0; i<9; i + +)标禺?勘挥,&stri);,可以一次输入、输出整个字符串。%s可利用格式符,当字符数组 存字符串时.(不用循环结构)scanf( %s,字符数组名);用于输入一个字符串printf( %s,字符数组名);用于输出一个字符串如果一个字符数组中包含多个''0',则遇第一个''0'时输出就结束scanf函数中的输入项是已定义的字符数组名,输入的字符串应短 于已定义的字符数组的长度char str10;揶禺?金,str);printf(%snz str);用字符数组名,不要加& ,遇空格、TAB、回车 结束输入自动加1个0:输入串长度小于数组长度怎样输入带空格的字符串?使用C格式符for(i=0;(c=getchar()!= /n'i+)stri=c;使用字符串处理函数gets(str);利用字符串输入输出函数字符串输入函数gets格式:gets(字符数组名)功能:从键盘接收一个字符串放入字符数组中,自动加0,只以回车符作为输入的结束说明:输入串长度应小于字符数组元素的个数字符串输出函数puts格式:puts(字符数组名或字符串常量)功能:向显示器输出一个字符串(输出完,自动换行)说明:字符数组必须以0'结束gets()函数可以接收包含空格、tab的字符串。scanf( %s,.) 不能接收空格puts()函数一次输出一个字符串,并自动换行。printf( s,)函数可以同时输出多个字符串,并且能灵活控制 是否换行。strcat函数-字符串连接函数其一般形式为:strcat(字符数组1 ,字符串2)其作用是把两个字符串连接起来,把字符串2接到字符串1的后 面,结果放在字符数组1中字符串拷贝函数strcpy格式:strcpy(字符数组1 ,字符串2)作用:将字符串2复制到字符数组1中。(1 )字符数组1必须足够大,以便容纳字符串2的内容。(2)字符串2可以是字符数组名或者字符串常量。当字符串2为 字符数组名时,只复制第一个'0'前面的内容(含'0'),其后内容不 复制。(3)不能使用赋值语句为一个字符数组赋值strcmp函数-字符串比较函数一般形式:strcmp(字符串1 ,字符串2)作用:比较字符串1和字符串2strcmp(strl,str2);strcmp(° China" , Korea");strcmp(strl/z Beijing");比较的结果由函数值带回如果字符串1二字符串2 ,则函数值为0如果字符串1字符串2 ,则函数值为一个正整数如果字符串字符串2 ,则函数值为一个负整数注意:字符串比较不能用= = 、屋、等关系运算符直接比较, 要用strcmp函数进行比较if( "ad ac)printf( "ad);strlen函数-测字符串长度的函数一般形式:strlen (字符串)作用:它是测试字符串长度的函数函数的值为字符串中的实际长度,它的返回值是字符串中字符的个 数(不包含''0')strlwr函数-转换为小写的函数一般形式:strlwr (字符串)函数的作用:将字符串中大写字母换成小 写字母strupr函数-转换为大写的函数一般形式:strupr (字符串)函数的作用:将字符串中小写字母换成 大写字母用函数实现模块化程序设计六、1、可以使用哪些函数?一个C程序由两种函数构成:标准函数(库函数):系统提供的,实现各种不同的功能。如printt scant sqrt, fabs , strlen,等等使用它们要包含相应的头文件自定义函数:用户自己定义的函数。用户可以把一些具有独立功能的代码定义成函数,有利于程序的 模块化和代码的重用2、说明(1 )一个C程序由一个或多个程序模块组成,每一个程序模块作 为一个源程序文件(2)一个源程序文件由一个或多个函数以及其他有关内容(如预 处理指令、数据声明与定义等)组成(3 )(:程序的执行是从main函数开始的,如果在main函数中 调用其他函数,在调用后流程返回到main函数,在main函数中结束 整个程序的运行。(4)所有函数都是平行的,即在定义函数时是分别进行的,是互 相独立的。即函数不能嵌套定义3、定义函数(DC语言要求,在程序中用到的所有函数,必须先定义,后使 用指定函数的名字,以便以后按名调用指定函数类型,即函数返回值的类型指定函数参数的名字和类型,以便在调用函数时向它们传递数据指定函数的功能。这是最重要的,这是在函数体中解决的(2 )定义方法函数的类型函数名称(形式参数列表)函数首部数据说明部分函数体可执行语句定义无参函数:定义无参函数的一般形式为(void)类型名函数名函数名()类型名(函数体函数体)定义有参函数:定义有参函数的一般形式为)(形式参数表列类型名函数名函数体)、函数的调用4)实参表函数名(调用一般形式函数调用语句(1);这时不要求函数带回值,只要求函数完成pnntf_star()z如把函 数调用单独作为一个语句一定的操作函数表达式2 )(如函数调用出现 在另一个表达式中,c=max(azb)+2;m = jiecheng(4)*2;这时要求函数带回一个确定的值以参加表达式的运算函数参数(3 ) 如函数调用作为另一函数调用时的实参,max(azmax(b/c); m =Jiecheng(9);%f printf( "max另一次调用的实参其中max(b,c)是一次函数调 用,它的值作为当要使用函数的返回值时用函数表达式或函数当用不 到函数的返回值时用函数调用语句参数4 )函数调用时的数据传递(,形式参数和实际参数形参(形式参数)是函数定义时,参数表中的参数。形式参数只 能是变量。例如:float max( float x , float y)断框有两个出口;一个选择结构只有一个出口)结构内的每一部分都 有机会被执行到。也就是说,对每一个框来说,都应当有一条从入口 到出口的路径通过它;结构内不存在死循环。二、顺序结构设计5、标识符:用来标识变量名、符号常量名、数组名、类型名、函 数名等的有效字符序列。C语言对标识符的规定:(1 )只能由字母、数字、下划线组成,且第一个字母必须是字母 或下划线(2 )长度:在TC中最多允许32个字符,建议不要超过8个 如果系统规定标识符长度为8 ,那么X1234567A和X1234567B会被视为同一标识符。(3 )在C语言中,标识符大小写敏感。如ABC、aBC. abc分别 代表3种不同的标识符(4 )标识符不能与C语言的保留字、系统标准库函数同名。program to_ _to file_2 abl_c3 为合法标识符非法字符举例:yes?(含有不合法字符 ? )123(第一个字符不 能为数字)g。to(标识符中不允许有空格)a_80%(出现非法字符)if与关键字相同)6、常量与变量注意:以下变量定义形式是错误的int ajnt b; int a;b;(1)整型常量-2,95 , 11 , 0如:,可带正负号09十进制整型:能出现数字八进制整型:以数字0开头的数字串,能出现数字07如:011(十进制9 ) , 0111 (十进制73 )十六进制整型:以Ox开头的,能出现数字09 ,字母af或AF 如:0x11(十进制17) , 0xa5(十进制165)(2 )整型变量基本类型int(3)浮点型float 代oc (float temp)在函数定义时,参数表中的形参并没有具体的值,系统也不为其 分配存储单元。实参(实际参数)是函数调用时主调函数传送给被调用函数形参 的实际值。实参可以是常量、变量和表达式,实参必须有确定的值。实参和形参间的数据传递在调用函数过程中,系统会把实参的值传递给被调用函数的形参, 或者说,形参从实参得到从实参到形参的值传递是可以参加被调函数 中的运算,该值在函数调用期间有效,一个值,单向的!没有返回的过程!单向值传递!实、形参个数相同,类型应一致(相同或赋值兼容)。例:int n;n=max(4,20);n=max(3.5,7.3);转化为:n = max(3,7);(5)函数的调用过程在定义函数中指定的形参,在未出现函数调用时,它们并不占内 存中的存储单元。在发生函数调用时,函数的形参被临时分配内存单)Lo调用结束,形参单元被释放实参单元仍保留并维持原值,没有改 变如果在执行一个被调用函数时,形参的值发生改变,不会改变主 调函数的实参的值!(6)函数的返回值希望通过函数调用使主调函数能得到一个确定的值,这就是函数值 (函数的返回值)函数的返回值是通过函数中的return语句获得的return语句后面 的括号可以不要一个函数中可以有一个以上的return语句,执行到哪一个return 语句,哪一个语句起作用return后面的值可以是一个表达式。例如:max(int x , int y) return(x > y ? x:y) ; 在定义函数时指定的函数类型一般应该和return语句中的表达式 类型一致。如果函数值的类型和return语句中表达式的值不一致,则以函数 类型为准。对数值型数据,可以自动进行类型转换。即函数类型决定返回值 的类型。5、对被调用函数的声明和函数原型(1)在一个函数中调用另一个函数需要具备如下条件:被调用函数必须是已经定义的函数(是库函数或用户自己定义的 函数)如果使用库函数,应该在本文件开头加相应的include指令如果使用自己定义的函数,而该函数的位置在调用它的函数后面, 应该进行函数声明(2 )函数声明作用:告诉编译系统函数类型、参数个数及类型,以便检查形式:函数类型函数名(类型1形参1 ,类型2形参2 .);函数类型函数名(类型1 ,类型2;函数类型函数名()"专统方法函数声明位置:主调函数内部开头或整个文件的开头(所有函数之前)6、函数的嵌套调用7、函数的递归调用(1)直接调用本函数(2 )间接调用本函数应使用if语句控制结 束调用8、数组作为函数的参数除了可以用数组元素作为函数参数外,还可以用数组名作函数参 数(包括实参和形参)用数组元素作实参时,向形参变量传递的是数组元素的值,单向值 传递用数组名作函数实参时,向形参传递的是数组首元素的地址说明:且类型应一致,在主调函数与被调函数分别定义数组.形参数组大小可不指定:C编译系统不检查形参数组的大小最好设计一个参数,来指定形参数组大小,也方便确定数组元素 个数数组名做参数,参数传递的是地址:形参数组名只是获得了实参 数组的首地址注意:数组名做函数参数时,可以用来存储函数的返回值。当一个函数有多个同类型的结果时,可用数组做参数来保存结果。9、局部变量和全局变量(1)局部变量 在一个函数内部定义的变量只在本函数范围内有效 在复合语句内定义的变量只在本复合语句范围内有效 在函数内部或复合语句内部定义的变量称为局部变量说明: main中定义的变量,只在main中有效。 函数形参是函数的局部变量。 不同函数中可以定义同名的变量,它们互不干扰。(2 )全局变量在函数内定义的变量是局部变量,而在函数之外定义的变量称为 外部变量,外部变量是全局变量(也称全程变量)全局变量可以为本文件中其他函数所共用;有效范 围为从定义变量的位置开始到本源文件结束全局变量没有赋初值时,系统自动赋为0同一个 文件中,全局与局部变量同名时,外部变量被屏蔽,即 局部优先。10、变量的存储方式和生存期从变量值存在的时间(即生存期)观察,变量的存储有两种不同的方 式:静态存储方式和动态存储方式静态存储方式是指在程序运行期间由系统分配固定的存储空间的 方式动态存储方式是在程序运行期间根据需要进行动态的分配存储空 间的方式程序开始执行时给全局变量分配存储区,程序执行完毕就释放。 在程序执行过程中占据固定的存储单元函数调用开始时分配,函数结束时释放。在程序执行过程中,这 种分配和释放是动态的不要误认为对外部变量加static声明后才采取静态存储方式,而 不加static的是采取动态存储声明局部变量的存储类型和声明全局变量的存储类型的含义是不 同的对于局部变量来说,声明存储类型的作用是指定变量存储的区域 以及由此产生的生存期的问题,而对于全局变量来说,声明存储类型 的作用是变量作用域的扩展问题用static声明一个变量的作用是:对局部变量用static声明,把它分配在静态存储区,该变量在整 个程序执行期间不释放,其所分配的空间始终存在。对全局变量用static声明,则该变量的作用域只限于本文件模块 (即被声明的文件中)。注意:用auto、register、static声明变量时,是在定义变量的基 础上加上这些关键字,而不能单独使用。浮点型常量十进制小数形式:由数字与小数点组成(必须有小数 点)。如 1.23 ,123. , 0.0123 ,.0,0.3注意字母e或123X10E之前必须有数字,后面必须指数形式, 如123e3或123E3都代表是整数E-5 , .1234el.2 , 6.5E为非法的浮 点型常量浮点型变量float double(4)字符型1)字符常量:分为两类用单撇号括起来的一个字符如:匕,9(空格)是合法字符常量 a,99'是非法字符常量转义字符:以' (反斜杠)开头的特殊形式的字符。如:'n' ;r' ;123' /x3b'2 )字符变量:char,占1个字节空间,只能存放一个字符。存储特点:在字符变量中实际上存储的是字符的ASCII码,其存 储形式与整数的存储形式相同。注意:L字符数据与整型数据可相互赋值,直接运算。II.大小写字母转换小写字母减32得到相应的大写字母,如:宣-32得到7V大写字母加32得到相应的小写字母如:E + 32得到 b(5)字符串常量定义:用一对双撇号()括起来的字符序列。如: hello" Mary" aaa'n 存储:每个字符串尾自动加一个0,作为字符串结束标志(6)变量赋初值格式:类型说明符变量1=常数1,变量2 =常数2;int x=l/y=l/z=l;int x=y=z=l;(语法错误)7、算数运算符和算术表达式(1)运算符的注意事项除法运算符7进行求商运算。对于不同类型的运算对象,除法 表达式计算结果的类型也会不同。如果x,y是整型,则结果为整型,小 数部分被略去。如果x,y其中一个为浮点型量,则结果为浮点型。 "”是求余运算。a%b计算a除以b后的余数,也是a模b的 值。它要求两个运算对象必须是整型,其结果也是整型量。(2 )书写算术表达式的注意事项 将方括号改成圆括号,即算术表达式内所有的括号均为圆括号(乘法)不能省略 其中ti为非字母字符,要用浮点型常量代替 其中不能出现分数,改用除法运算符,圆括号不能缺少(3)算数运算符的优先级优先级:高>* / %-> + -低注意:可以用()来改变运算的顺序(4)8、自增、自减运算符后缀i + + (i -)先使用i的值,再使i的值加(减)1前缀+ + i ( - - i)先使i的值加(减)1 ,再使用i的值自增、自减运算只能用于变量,不能用于常量和表达式。自增、自减运算符高于基本算术运算符。9、赋值运算符(1)简单赋值运算符运算符:=表达式格式:变量=表达式赋值运算符左边必须是变量而不能是表达式;赋值表达式的值是赋值号左边变量被赋值后的值;(2 )算术运算符+ * / %和赋值运算符结合起来,形 成复合赋值运算符。+ =:加赋值运算符;如a +=3,等价于a=a + 3=、*=、/=、%= 与此类似复合运算符在书写时,两个运算符之间不能有空格。复合运算符右边的表达式计算完成后才参与复合赋值运算;10、当表达式中的数据类型不同时,要进行类型转换。转换方式自动(隐式)转换:系统自动把数据由低级类型向高级 转换。强制转换:将表达式的运算结果强制转换成指定的数据类型。自动转换规则强制转换格式:(目标类型名)(表达式)doublelongunsigned-intItfloat 高一低 char short逗号运算符与逗号表达式:运算优先级最低为15级求解过程先求表达式1的值,再求表达式2的值,直至求出表 达式n的值。整个表达式的值为表达式n的值。x=5*8, 6+9先把x赋值为40 ,表达式的值为151L字符数据的简单输入和输出(1) putchar函数(字符输出函数)形式:putchar(c) c可以是字符常量、字符变量或整型变量。putchar(lOO); 用putchar函数也可输出转义字符。putchar( 'n'); /*输出一个 换行符*/putchar( ''); /*输出一个反斜杠' V 该函数包含在stdio.h库中,因此应在使用该函数的程序开头加 入:#include ( 2 ) getchar作用:从终端(如键盘)输入一个字符。形式:getchar()无参数说明:该函数只能接收一个字符,其函数值可以赋给一个字符变 量或整型变量,也可作为表达式的一部分,该函数包含在stdio.h中。(3 )格式输出函数格式:printf (格式控制,输出表列)格式控制是用双撇号括起来的字符串,也称转换控制字符串 包括2种信息。1)格式说明:% 附加格式字符格式字符将输出列表中的数据转换为指定格式输出。2 )普通字符:原样输出。输出表列:需要输出的数据列表,彼此间用逗号分隔。它可是任 意合法的表达式。printf ( a+b = %5.2 f, c )(4)格式字符1)d格式符,用来输出十进制整数按整型数据的实际长度输出。%d,则左侧补m代表某个数字,指定输出数据的最小宽度。若数据 的位数小于m %md与md类似,只是左对齐空格(右对齐),若大 于m则按实际位数输出。%-md%-mc格式符:用来输出一个字符c %mc 2 ) c格式符:用来以十进制小数形式输出实数(float,double ) 3 ) f 小(%m.nf输出数据最小占m歹k其中包括n位小数和1位小数点, 右对齐与上面类似,只是左对齐数点也算占一列)%-m.nfS格式符:用来输出一个字符串4 ) m歹I,右对齐,左补空 格ms输出字符串最小占s按字符串原长输出m列,左对齐,右补空格ms输出字符串最小占n个字符,右对齐字符串占m歹!,但只取左端m.ns个字符,左对齐字符串占m歹!J,但只取左端n %-m.ns使用说明:)格式控制中的格式说明符,必须按从左到右的顺序,与输出表 中的每个数据一一对应,1否则出错。f= 1717986918J=0.000000 显示:printf( f=%d, i=fn,5.6,3);o 2 )格式字符紧跟在后面就作为格式字符,否则将作为普 通字符使用(原样输出),都是普通字符。和f,第三个fc=%c,f=?n , 宣,1.5);其中的第一个cprintf( scanf (格式控制字符串,地址列表) scanf函数(5 ) printf函数类似。格式控制与以逗号隔开),可以是 变量的地址,或字符串的首地址。地址列表是由若干个地址组成的表 列(,&a,&b,&c); scanf( %d%d%d键、回车键作分隔符。最后的回 车键代)格式符中无普通字符时,可用空格、Tab 1表输入结束)用c 格式符输入字符时,空格、回车、转义字符等均为有效字符。2char a,b,c;例:%c%c%q &a, &bz &c ); scanf ( <'b= B, 3ABe 则会'A', 正确的输入方法:键入B') , c='空格a= A', b="(若键入:ABC 则(换行nb二'C未送,系统已经认为输入结束了则:a= 'A 若键入ABB1 , c='符)则综合上述规则若不同类型输入则应按顺序原样输 入。)在格式控制中除格式说明符外若还有其它字符3,)可以指定输 入数据所占列数,系统自动按它截取所需数据。4 附加说明符,用 来表示跳过相应的数据。%后的*5 ) 1234567则将12?a , 67 ,&a,&b);输入?b , 345被跳过-%*3d-如:scanf( -6 )输入数据时 不能规定精度。如:scanf( 7.2f,&a);错误7) double类型的变量输入时,要用lf%le(必须记住! ! !)如:double x;scanf( "%lf,&x);三、选择结构程序设计1、if语句实现选择if (表达式)语句1表达式可以是关系表达式、逻辑表达式、数值表 达式2语句else最常用的3种if语句形式:8) ) if (表达式)语句1 (没有else子句)(2 ) .if (表达式)语句1(3 ) else语句2 (有else子句)(4 ) if (表达式1 )语句1else if (表达式2 )语句2else if (表达式3 )语句3I I Ielse if (表达式m )语句melse 语句 m + 1(在else部分又嵌套了多层的if语句)说明:(1)整个if语句可写在多行上,也可写在一行上,但都是一个整 体,属于同一个语句(2 ) 语句1语句m是if中的内嵌语句内嵌语句也可以 是一个if语句(3 ) 语句1语句m可以是简单的语句,也可以是复合 语句2、关系运算符(1)关系运算符:用来对两个数值进行比较的比较运算符C语言提供6种关系运算符:< (小于)(二(小于或等于)> (大于)> =(大于或等于)优先级高二二(等于)!二(不等于)优先级低(2)关系表达式用关系运算符将两个数值或数值表达式连接起来的式子,关系表达 式的值是一个逻辑值,即真或假,在C的逻辑运算中,以 1 代表真,以 0 代表假3、逻辑运算符与逻辑表达式3种逻辑运算符:&& (逻辑与)| (逻辑或)!(逻辑非)判断年龄在13至17岁之内? age> = 13 && age< = 17逻辑运算符的优先次序! 一&& -II (!为三者中最高)逻辑表达式的值应该是逻辑量真或假编译系统在表示逻辑运算结果时以数值1代表真,以0代表 假但在判断一个量是否为真时以。代表假,以非0代表真 注意:将一个非零的数值认作为真在进行逻辑表达式的求解中,并不是所有的逻辑运算都被执行, 只是在必须执行下一个逻辑运算符才能求出表达式的值时,才执行该运算符。4、条件运算符与条件表达式条件表达式的一般形式为:表达式1 ?表达式2:表达式3条件运算符的执行顺序:求解表达式1若为非0 (真)则求解表达式2 ,此时表达式2的值就作为整个条 件表达式的值若表达式1的值为0 (假),则求解表达式3 ,表达式3的值就是 整个条件表达式的值条件运算符的结合方向为自右至左5、switch 语句语句的作用是根据表达式的值,使流程四触到不同的语句switchswitch语句的一般形式:switch (表达式)整数类型(包括字符型) case 常量 1 :语句 1; breakcase常量2 :语句2III III I I Icase常量n :语句ndefault:语句 n + 1)优先级顺序:赋值运算符-&&和II-关系运算符一算术运算符T !四、循环结构程序设计L用while语句实现循环while语句的一般形式如下:while (表达式)语句-循环体I循环条件表达式真时执行循环体语句假时不执行while循环的特点是:先判断条件表达式,后执行循环体语句while循环的作用:实现当型循环使用说明:

    注意事项

    本文(C语言程序设计基础知识期末复习.docx)为本站会员(太**)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开