版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、会计学1C语言分攻略语言分攻略第1页/共61页第2页/共61页(1)常数(有的称直接常量、页面常量) 例如的: 整数:+5 、-3、017(八进制)、0 x1f(16进制) 实数(浮点数):3.14 、-1.2E-3 、1E10 单个字符: A,占一个字节 ,转义字符 非法 77 (八进制ASCII码63,?),78非法 x3f (十六进制ASCII码63,?) x3g非法 字符串: “A” 后面有0,占两个字节不合法不是整型量占一个字节第3页/共61页52 1第4页/共61页(2)符号常量 给常量起标识符名字。 C语言的符号常量(用宏定义): #define PI注意:1.一般用大写字母。2
2、, #define M 3 不是C语句,后面没有“;”。3.可以做M+1,不能做M+.(3)地址常量 当数组在定义时,其变量名为其首地址,是地址常量。 int a10;可以做a+1,不能做a+. 第5页/共61页(1)变量名 每个变量,要在使用前定义变量的名字,遵循标识符命名规则。 只能用字母、数字和下划线组成。 不能以数字开头。 不能用保留字(int,printf,main.)。合法a12 a_3 _abc非法12a a# int第6页/共61页 变量定义就是申请数据的存储空间,登记数据的各种存储特性。 例如: int m ;2个字节 long n; 4个字节 char ch; 1 个字节
3、float x; 4个字节 double y; 8个字节 可以用sizeof获得字长 sizeof(char)=1 sizeof(int)=2 sizeof(double)=8第7页/共61页值语句 */n scanf(“%d”,&m);/* 键盘输入语句 */ 变量初始化:变量初始化:定义变量时同时确定变量初值。例如: char chy=a; int weight=2; 第8页/共61页C语言的语言的表达式表达式:使用规定的运算符运算符,将常量、变量、函数(调用)连结的一个有意义的式子。 第9页/共61页5/2结果是5%2结果是第10页/共61页2 2、关系表达式、关系表达式关系运算
4、符: = = (优先级较高) != = (优先级较低)关系表达式的结果:1(非0,真) ,0(假) 分析:10=a=15 a=9 是假 10=a=1510=a 假 00=15 真所以要写成10=a&a=15第11页/共61页a,c均按非0(即真)处理第12页/共61页nint a=5,b=1nk=a0nk?b?假,后面不算了k=0,b=1第13页/共61页(x4= =0&x100!=0) 水仙花数是指一个三位正整数,其各位数字的立方和等于该数本身 (k*100+m*10+m= =k*k*k+m*m*m+n*n*n) 三角形的基本条件 (a+b)c)&(c+b)a)&am
5、p;(c+a)b) |(x400= =0)第14页/共61页int a=3,c=2,ba=b=c;n*=m+2 相当于 n=n*(m+2)k=i+; 先k=i,再i=i+1k=+i; 先i=i+1,再k=ic赋值给b,b=2b赋值给a,a=2第15页/共61页i+先使用,后加1, + i先加1,后使用要充分理解中”使用”的实际意义k=i+ 作比较判断运算,使用就是比较判断先做k=i,是真还是假,再做i=i+1printf(“%d”,i+) 作输出结果,使用就是输出结果.先输出i,再做i=i+1a=5-(i+) 作减法,使用就是减.先做5-i,并赋给a,再做i=i+1第16页/共61页5?10:
6、3表达式的值为100?10:3表达式的值为3-5?10:3表达式的值为10b=3;a=b5?10:3;a=?赋值运算符优先仅高于逗号运算符a=(b5?10:3);3k=(- -a=b+)? -a : b +;k=? 11非0真第17页/共61页a=12a=27、强制类型转换表达式(单目) int m; sqrt(float) m);a=5,a+5,a+=a a=10第18页/共61页 (高高)(低低)!+,-,等算数运算符算数运算符 关系运算符关系运算符 逻辑运算符逻辑运算符 & |条件运算符条件运算符 赋值运算符赋值运算符 逗号运算符 右结合单目运算符赋值运算符b=2a=5-(-b)
7、()优先级最高, -b右结合-优先级其次=优先级最低-b,b=b-1,b为1再做5-b,即5-1等于4最后将4赋给a第19页/共61页简单类型构造类型指针类型整型实型字符型数组结构体共用体数值型枚举型空类型int 2个字节long 4个字节float 4个字节double 8个字节char 1个字节成员类型字节数个数struct 各成员字节数之和union 各成员字节数之最大者存放地址,与所指数据类型无关,2个字节不要求不要求第20页/共61页 类型名 字节数 输入、输出格式输入、输出格式 int 2 %d%d shortshort 2 %d%d long long 4 %ld%ld(2) 实
8、型实型1.简单类型简单类型类型名类型名 字节数字节数 输入、输出格式输入、输出格式 有效数字位有效数字位float 4 %f%f 7doubule 8 %lf%lf 16long doubule 16 %lf%lf 19第21页/共61页n(3) (输入、输出格式输入、输出格式 “%c”)n ASCII码,一个字符占1字节; char型数据与int型数据之间的关系 char型对应其ASCII码,只不过是占一个字节 。大写字母与小写字母之差为32. char型变量既能以%c字符格式输出,也能以%d整型格式输出。能象int量一样进行算术运算。n注意转义字符 的使用。 n * 101 (A,8进制)
9、 x41(A,16进制)char ch=k;printf(“%d,%c”,ch-32, ch-32);107,K第22页/共61页(4)字符串(输入、输出格式输入、输出格式 “ “%s”%s”) 所谓“字符串字符串”是指若干有效字符的序列。语言字符串可以包括字母、数字、专用字符、转义字符等。 字符串常量:使用双引号使用双引号 China BASIC a+b=c Li-Li “39.4” “%dn” “解放军“ “*077x7fn”字符型的一维数组(相当于字符串变量) char st8, str10; strcpy(st,12345); strcpy(str,st); 不能st=“12345”;
10、 str=st;这是赋值. 可以char st= “12345”; 这是初始化.第23页/共61页第24页/共61页元素下标从0开始第25页/共61页(2) 结构体C语言中实现:struct Date int month ; /*月*/ int day; /*日*/ int year; /*年*/;struct Date myd=12,16, 1978; 系统分配给它的内存是各成员所需内存量的总和。本例是6. 第26页/共61页3. 指针类型(放弃)(3)指针引用变量)指针引用变量 指针变量可以指向各种不同的数据类型,因此指针变量也要有不同的指针类型。如: int m, *p; float x
11、,*q; int a,*r m=12; p=&m; x=3.14; q=&x; r=a;注意:是否用&第27页/共61页char a=“abfgcde”,max,max_i;main().printf(“max=%cnmax_i%d=”,max,max_i); max=原样输出换行g3原样输出max_i=注意输出格式第28页/共61页常见错误 int a,b;char d,e20; scanf(%d,%fn”,&a,&b); scanf(%d,%f”,a,b); scanf(%7.2f,&b); scanf(%s,&e); scanf(%
12、f,&d);n要多输入一个值缺&不能规定精度数组名是首地址,不要&类型不匹配第29页/共61页C语语言言语语句句 指令语句指令语句 非指令语句非指令语句数据定义语句数据定义语句 float x; int m;编译预处理编译预处理宏定义 文件包含处理 #include 第30页/共61页5/MUL(5+3)=5/5+3*5+3=19#define MUL(x) (x)*(x)5/MUL(5+3)=5/(5+3)*(5+3)=5#define MUL(x) (x)*(x)5/MUL(5+3)=5/(5+3)*(5+3)=5/64第31页/共61页一组语句括在一对花括号一对花
13、括号之中,称复合语句复合语句。 c=getchar(); putchar(c); 注意,一个复合语句的后花括号之后一个复合语句的后花括号之后不应再写分号不应再写分号。 在语法上是一个整体,相当于一个语句。 凡是能够使用简单语句的地方,都可以使用复合语凡是能够使用简单语句的地方,都可以使用复合语句句。一个复合语句中又可以包含另一个或多个复合语句。 从键盘输入一个字符,并赋给c以字符形式输出字符变量的值c第32页/共61页完成一定的控制功能。9种控制语句:判断语句判断语句 条件判断语句 if()else 多分支选择语句 switch()case循环语句循环语句 循环次数控制语句 for() 先判断
14、后执行循环控制语句while() 先执行后判断循环控制语句dowhile()转移控制语句转移控制语句 直接转移语句 goto 终止语句 break(用在循环结构、swicth) 跳转语句 continue (仅用在循环结构) 返回语句 return流程控制语句流程控制语句第33页/共61页第34页/共61页不能写成a=b第35页/共61页 根据“表达式”的值从上至下去寻找与表达式的值相匹配的“case常量表达式”,执行一个分支后,再执行下一个分支,直到break结束,然后执行switch结构后面的程序。 找不到匹配的入口标号时,执行“语句序列n+1”,然后结束。顺序向下执行程序。第36页/共6
15、1页a=1case 1:swtch(1)b=1printf #,break跳出switch(b)结构进入switch(a)结构case 2:printf case 2:printf break 跳出switch(a)结构# 第37页/共61页第38页/共61页忘了。第39页/共61页在if(e),while( e )和for( ;e ;)中e的值是逻辑值(0或非0)e一般是关系表达式,逻辑表达式或变量。if(x=1)if(x=1)main() int i=1; doi-;while(i+); printf(“%d”,i-); A) -1 B) 0 C) 1 D)陷入死循环i=1i-,i=0wh
16、ile(i)终止循环i+,i=1输出i=1i-,i=0第40页/共61页第41页/共61页while( m) k = m%10 ; /*求最低位的数字*/ m=m/10; /*除去最低位的数字*/ 分解多位数的数字第42页/共61页第43页/共61页main() long y; for ( y=1; x0; -x ) y *= x; printf(“%ld”,y); main( ) int m, n; long cmn, facto( ); scanf (%d%d, &m, &n); cmn = facto(m) / (facto(n) * facto(m-n); printf
17、 (%ldn, cmn); 求求C(m,n) = m!/(n!*(m-n)!) 第44页/共61页错误的定义是: 或 int n; int n=10; scanf(%d,&n); int an; int an; 定义int a5时, a0,a1.=?随机数!只有int a5=3后,后面几项自动赋0三三 数组数组第45页/共61页 合法:int a=1,2,3,4,5; int i 3=1,2,3,4,5,6; int a5=1,2,3; char a4=“boy” char a3=b,o,y不合法: int a5=,2, ,4,5; int i2 =1,2,3,4,5,6; int a
18、5= ;char a4=boy第46页/共61页从0开始或i=4第47页/共61页函数首部 定义函数内部变量; 处理数组; 返回(非void用);第48页/共61页数值数组void inv(int x,int n);main()int i,j,a10;for(i=0;i10;i+) scanf(“%d”,ai);inv(a,10);for(i=0;iM;i+) printf(“%d”,ai);字符数组void inv(char x)main()int i,j;char a50;gets(a);inv(a);puts(a);多一个参多一个参数,表示数,表示元素个数元素个数可以整可以整体输入体输入,输出,输出必须单必须单个输入个输入,输出,输出第49页/共61页数值数组int a10;for(i=0;i10;i+)字符数组char a50;for(i=0;ai!=0;i+)数值数组倒序for(i=0,j=M;ij;i+,i-) 交换ai,aj字符数组倒序for(i=0,j=strlen(a);ij;i+,i-) 交换ai,aj第50页/共61页数值数组void inv(int x,int m) int i,j,k; j=m; for(i=0;ij;i+,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学主题班会课件:文明礼仪与友善待人
- 生产流程优化与改进手册
- 一年级作业题目及答案
- 国家开放大学法律事务专科《法理学》历年期末纸质考试多项选择题库2026珍藏版
- 小学主题班会课件:诚实守信以诚待人
- 河道清淤施工工艺
- 软件开发项目需求评审与验收规范指南
- 2026年中级经济师人力资源专业真题(附答案)
- 文明今夏文明有礼小学主题班会课件
- 风管安装验收标准
- 2026云南昆明空港投资开发集团有限公司第二次招聘3人笔试备考试题及答案详解
- 2026版广东省深圳市生地会考及答案综合试卷QS01仿真卷Org039(含答案解析与学生作答区)
- 2026届广东省珠海市香洲区中考英语模拟试题含答案
- 模板工程风险辨识及防范措施
- 神经生理实验设计
- 军团菌感染的诊断与治疗
- 2023年鄂尔多斯市鄂托克旗招聘中小学教师考试笔试押题库
- 2022年湖北省普通高中学业水平合格性考试政治试题
- 第三篇船舶电气系统的组成
- 二年级数学无纸化监测试题
- 盆底重建手术治疗新进展概要
评论
0/150
提交评论