您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 其它办公文档 > 国家计算机二级C语言相关课程总结
C语言1一.常量1.什么是常量在程序运行中不会改变的量2.常量的分类2.1整型常量{1.普通整形int%d(32767)2.短整型3.长整形long(ld)(-2^31----2^31-1)}十进制表示八进制表示(在首数字前面加0)十六制表示(在首数字前面加0X)2.2实型常量{单精度型float%f,双精度型double%lf小数点后十五到十六位}定点实型浮点实型(科学计数法,用E=*10表示,e的前后必须都有数字,后面要是整数)2.3字符型常量一个字符‘a’=95‘A’=65‘0’=482.4字符串常量:存储该字符串对应的首地址3.定义常量#define标示符常量例子:#difinePI3.1415C语言2二.变量1.什么是变量运行过程中变化的量叫变量2.为什么要使用变量A.计算机用来做什么的,,,,计算通过什么来运算。。B.需要数据吗C.如果需要数据时,一定需要变量。。。。数据保存在变量里2.1.程序一般需要处理数据2.2.数据必须存在变量里才能被处理3.如何使用变量3.1.定义变量:类型标示符变量名1)类型:int整形float实型char字符型2)变量名:可以任意(英文或下划线开头),但是不能和特殊标识符相同,不能与关键字相同,不能有特殊符号。。。。。变量要区分大小写,最好有意义的名字。3)一个标识符,可以定义多个变量。3.2给变量负初值4)定义时就赋初值5)定义后再赋值6)后赋的值会替代原先的值C语言33.3变量的输出printf(“参数”,变量名)int------------%dfloat---------%fchar---------%s实质:参数部分换成对应的值其他部分按原样输出。。。3.4变量的输入A.Scanf(“%参数%参数%参数%参数”,&变量名。。。。。。)1.输入一个数+空格+输入一个数。。。2.输入一个数+回车+输入一个数。。B.scanf(“%参数,%参数,%参数,%参数,&变量名。。。。。。。)1.输入一个数+逗号+输入一个数。。。。三.编写一个的基本步骤1.首先分析程序所需的变量1.给程序赋值2.参与计算。3.输出运算的结果。C语言42.变量在程序中的使用四.变量的其他概念1格式化的输出1.1.整形变量的输出:printf(“%nd”,变量名)(N代表列宽,不够。。。前面有空格;小于实际所需,不受影响;前面加负号空在后面。)1.2.字符型变量的输出:printf(”%nc”,变量名)(字符字代表一个列宽,会去掉单引号;)1.3.实型变量的输出:printf(”%n.mf”,变量名)(n.代表列宽,m带表小数位数,小数点代表一个列宽;取小数位时会四舍五入,如果不定义小数位数会自己定义到六位;可以省略n,)1.4.字符串的输出:printf(“字符串”)Printf(“%s”,字符串)2.类型的强制转换格式:(类型标示符)变量Eg.floata=1.33;Intb;b=(int)a;1.取整。。。。。。。。。2.没有改变变量的类型3.引用变量没有改变变量的值。C语言53.不同类型变量的转换3.1输出参数不应该看值而应该看类型。3.2整形的转化1.把一个实型常量赋给整形变量时,输出常量的整数部分。2.把一个字符型常量赋给整型常量,输出字符所对应的整数。3.3字符型的转化1.把一个整型常量赋给字符型变量,输出时会输出整数对应的asicc码对应的字符。2.把一个实行常量赋给字符型变量,输出时先取整然后找整数所对应的字符。3.4实型的转化1.类似于以上两个2.类似于以上两个3.5字符型与整形变量的输出可以相互转化。,实型只能用%f。输出谁,可以用%d,%c。。表示。。3.转义字符\n回车;\t产生空格;\r回到行首(覆盖的原则);\b回一格(覆盖的原则);\\表示斜杠(必须成双出现);\”表示双引号(不能够直接输出双引号)\’表示单引号(‘…..\’都可以输出)\\0+八进制数代表以八进制所代表的ascii码Printf(’’\\0101’)----------输出APrintf(“%d\r\b%.1f\\\”\101\x61%c”)C语言6五.运算符和表达式1.算术运算符:+-*/取整取余%注意:1.取余(%)。。。。。。。。。。2%10=22.注意对于“/”来说:如果有一个是实型则为真正的除,如果都为整形,则为取整。3.对于%必须都要是整形。4.优先级:/*%优于+-2.赋值运算符:=表达式:1.a=b右边的给左边,左边是变量,而不能是表达式;2.a=b=c同上;3.a+=b--------a=a+b;a*=b--------a=a*ba*=b+c------a+a*(a+b)4.a++----------a=a+1;++a----------a=a+1(单独(作为一个语句)使用时一样;如果在引用时,a++先引用再加,——++a表示加完再引用。)3.关系运算符:,,!=,==,=,=,1.关系表达式的值是0(不成立)或1(成立)2.==优先于==和!=4.逻辑运算符:且&&(两者都成立),或||(其中的一个成立),非!(相反的成立)注意:1.成立为一,不成立为零2.C语言中用零表示不成立,用非零表示成立3.优先级“不”大于“且”大于“并”5.逗号运算符(,)注意:C语言7逗号表达式:表达式1,表达式2,表达式3。。。。。。。。1.逗号表达式的值表示最后一个表达式的值2.虽然逗号表达式的值表示最后一个表达式,但是每一个表达式的都要做到。。。6.问号运算符(?)表达式:条件?表达式一:表达式二嵌套(问号表达式里,有问号表达式)7.运算符的混合运算算术赋值逗号逻辑关系优先级!算术运算符(*\%+-)关系运算符()&&||赋值运算符逗号运算符A=1b=3,c=3X=!abc+b&&c||!c4X=1六.条件语句可能会做也可能不会做。。有条件决定。1.语句if语句1.1.If(条件){语句}注意:1.条件陈立执行语句,不成立不执行语句2.语句只有一条可以去掉化括弧。。。1.2.if(){}Else()C语言81.3.If的套嵌If(){If(){}{1.4.ifelse套嵌if(){}Else{if(){{Else{}}Else会与离他最近的且没配对的if配对。。。。。1.5.举例:1.输入两个数,输出最大值和最小值2.输入四个数,输出最小和最大值。C语言91.5.3.输入四个数,排序(泡沫排序)1.5.4.输入操作符和两个数,进行运算.1.5.5.用户输入数据,判断类型。。。C语言101.5.6.判断是不是三位数,是计算各个位上的数字之和。。。2.Switch…case多情况语句当情况很多的时候(大于四种)2.1格式:Switch(要讨论的表达式){Case常量一:表达式一;breakCase常量二:表达式二;C语言11Case常量三:表达式三:…………………………Default:表达式四:}2.2运算过程:1.发现匹配项后开始入手,运行后面的所有语句2.case后面的常量不可重复。3.case后面加上break,最先遇见哪个break就从这结束。。4.可以再最后加上default。。表示都比匹配就做default。。(不是必须的)5.case后面可以什么都不做。。2.3举例1.让用户输入两个数和一个运算符。。。。。求结果2.3.2.输入分数得出级别。。。C语言123.Getcharputchar七.循环语句(非常重要)什么是循环1.从上向下循环的,某段代码可能要执行好多次。。。2.条件不成立,则退出循环。。。3.如果一段代码要反复执行,则用循环语句。。4.死循环,条件永远成立的循环。。。第一例:求1+2+3+4.。。。。。。+100=?第二例:从十个数求出最大值。。。1For语句1.1基本格式::for(循环变量初值;条件;条件改变){语句体}C语言131.2注意:1.变量赋初值只有一次。2.for(a;b;c)3.循环变量赋初值可以省略,分号不可以省。。。4.可以省略条件,死循环。。。分号不可以省。。5.省掉条件变化。。。死循环。。6.三部分都可以省略但分号不可以省。。死循环。。。7.如果只管一条语言是可以省略{}8.在做for的程序时,要分析它的功能,而不是一条一条来分析。。。1.3举例:1.3.1.求解一些数中能整除n的个数。。。。。。1.3.2.够晕的。。。注意。。。。2.While语句格式:while(条件)C语言14{语句体}成立时运行语句体,不成立时退出语句体。。。3.Dowhile格式:do{语句体}While(条件);主意:1.后面一定要加分号,ifwhileforswitch后面不加分号(分号代表以一条空语句。。。。。)2.Dowhile先做再判断While先判断在做3.eg.有点变态。。。。4.break&continue4.1Continue1.终止本次循环。2.不改变循环次数。(用图表示)C语言15结果为:&*&*&*&*&Eg.4.2break语句1.强制,结束循环。。。2.循环次数发生改变。。。3.使用地点:a.switchjcaseb.循环语句5.循环的嵌套5.1循环里面又包含有循环:1.for有for2.for有while3.while有forC语言165.2不管是谁包含谁我们把内循环看做外循环的语句。。5.3内循环进行中,外循环不变,内循环做完后外循环才改变。5.4举例:1.打印******2.X=8:C语言176.编写程序:6.1思考过程:1.要不要循环(一般需要);2.需要什么样的循环:(for与while的取舍:如果次数确定,一般用for,不确定就用while,到什么条件为止则是表示不确定。)6.2举例6.2.1.输入一个数,输出能被3整除的数,并输出个数C语言186.2.2.求一个数的阶乘6.3.3求解水仙花数。。。(一个三位数,各个位上的数之立方之和相等。。。。)6.4.4.求数列1,1,2,3,5.。。。。。前n项和。。C语言196.5.5.求数列1,1/2,2/3,5/8。。。。。前n项和。。。程序一:程序二:6.6.6求解1!+2!+3!+4!.....=C语言206.6.7打印:*********………………………………………..6.6.8输入一个数,计算其各位数字之和。。。C语言216.6.9反复进行上面的程序。。7随机数函数。。。(第二十八集,,没大听懂)格式:.Rand()%(大数-小数)+小数需头文件支持。。。windows.h如果需要每次产生的随机数都不同。。前面要加srand((unsigned)time(NULL));(头文件。。。time.h)八、数组1.一维数组1.1.什么是数组成员都是变量,变量很多,这些变量的类型都是相同的:数组指相同变量的集合。C语言22注意:1.数据其实就是变量2.数组也要定义。1.2.定义数组:格式:类型名字[长度]Eg.inta[4]……………….定义啦一个数组a,有四个变量,每个元素都是整形。。。四个元素表达为a[0]a[1]a[2]a[3]1.3.如何赋初值:Inta[3]={1,2,3};注意:1.写在中括号里的数表示数组的长度。2.数组的下标是从0开始的。3.数值最大为长度减一。4.给数组赋初值是赋值个数不能大于长度。5.可以小于个数,对于没有赋到的值,如果是整或实为零,字符型为空格。6.元素的值可以重复。7.名字。。。和变量一样。1.4.数组的输入和输出有数组必有循环输出:for(i=0;i=n;i++)printf(“%d”,a[i])输入:for(i=0;i=n;i++)scanf(“%d”,a[i])一般都是直接赋值而不是有由户输入C语言231.5.举例:5.1查找5.2删除C语言245.3插入5.4倒置5.5排序:For(i=0;in;i++)For(j=i+1;jn;J++){if(a[j]a[i]){交换}字符串数组格式:类型标示符函数名(char数组名【】不要写长度){处理}C语言255.6输出小于平均数的数组成的数组2.二维
本文标题:国家计算机二级C语言相关课程总结
链接地址:https://www.777doc.com/doc-3747413 .html