C语言程序设计基础知识期末复习spring boot注解autowired失败
一、 C语言与算法
1.程序:一组计算机能识别和执行的指令。
2.C语言的特点:运算符丰富(共有34种运算符)、数据类型丰富、具有结构化的操纵语句。
3.C语言程序的结构特点:
(1).一个程序由一个或多个源程序文件组成:一个源程序文件中能够包括三个部分:预处理指令、全局声明、函数定义
(2).函数是C程序的要紧组成部分:一个C程序是由一个或多个函数组成的必须包含一个main函数(只能有一个);每个函数都用来实现一个或几个特定功能;被调用的函数能够是库函数,也能够是自己编制设计的函数。
实例化类php(3).一个函数包括两个部分函数首部和函数体(声明部分:定义在本函数中所用到的变量;对本函数所调用函数进行声明;执行部分:由若干个语句组成,指定在函数中所进行的操作)
(4). 程序总是从main函数开始执行
(5). C程序对计算机的操作由C语句完成
(6.)数据声明和语句后来必须有分号
个人简历模板下载免费word(7.)C语言本身不提供输入输出语句
(8.)程序应当包含注释,增加可读性
4、算法(1)算法+ 数据结构= 程序
(2)顺序结构、抉择结构、循环结构是表示一个良好算法的基本结构
(3)算法的特性:有穷性、确定性、有零个或多个输入、有一个或多个输出、有效性(4)算法流程图:一个流程图包括以下几部分:表示相应操作的框;带箭头的流程线;框内外必要的文字说明。
流程线不要忘记画箭头,否则难以判定各框的执行次序。
算法流程图的结构特点:只有一个入口;只有一个出口(一个推断框有两个出口;一个抉择结构只有一个出口)结构内的每一部分都有机遇被执行到。也就是说,对每一个框来说,都应当有一条从入口到出口的路径通过它;结构内不存在“死循环”。
二、顺序结构设计
5、标识符:用来标识变量名、符号常量名、数组名、类型名、函数名等的有效字符序列。C语言对标识符的规定:
(1)只能由字母、数字、下划线组成,且第一个字母必须是字母或下划线
(2)长度:在TC中最多允许32个字符,建议不要超过8个
假如系统规定标识符长度为8,那样x1234567A和x1234567B会被视为同一标识符。
(3)在C语言中,标识符大小写敏感。如ABC、aBC、abc分别代表3种不同的标识符(4)标识符不能与C语言的保留字、系统标准库函数同名。
program to_ _to file_2 ab1_c3 为合法标识符
非法字符举例:yes? (含有不合法字符“?”)123(第一个字符不能为数字)go to(标识符中不允许有空格)
a_80%(浮现非法字符“%”)if与关键字相同)
6、常量与变量
注意:以下变量定义形式是错误的int a,int b; int a;b;
(1)整型常量
·十进制整型:能浮现数字0~9,可带正负号如:0,11,95,-2
·八进制整型:以数字0开头的数字串,能浮现数字0~7 如:011(十进制9),0111(十进制73)
·十六进制整型:以0x开头的,能浮现数字0~9,字母a~f或A~F 如:0x11(十进制17),0xa5(十进制165)
(2)整型变量基本类型int
(3)浮点型
·浮点型常量十进制小数形式:由数字与小数点组成(必须有小数点)。
如 1.23,-123.,0.0123,.0,0.
指数形式,如123e3或123E3都代表123×103注意字母e或E之前必须有数字,后面必须是整数E-5,.1234e1.2,6.5E为非法的浮点型常量
·浮点型变量float double
(4)字符型
1)字符常量:分为两类
·用单撇号括起来的一个字符如:’a’,’9’,’’(空格)是合法字符常量
”a”,’99’是非法字符常量
·转义字符:以\(反斜杠)开头的特别形式的字符。如:’\n’,’\r’,’\123’,’\x3b’2)字符变量:char,占1个字节空间,只能存放一个字符。
存储特点:在字符变量中实际上存储的是字符的ASCII码,其存储形式与整数的存储形式相同。
注意:
I.字符数据与整型数据可相互赋值,直接运算。
II.大小写字母转换
小写字母减32得到相应的大写字母,如:‘a’-32 得到‘A’
大写字母加32得到相应的小写字母如:‘B’+32 得到‘b’
(5)字符串常量
定义:用一对双撇号(””)括起来的字符序列。如:”hello””Mary””\\aaa\’\n ”存储:每个字符串尾自动加一个‘\0’作为字符串结束标志
(6)变量赋初值
格式:类型说明符变量1=常数1[,变量2=常数2[,···]];int x=1,y=1,z=1;
int x=y=z=1;(语法错误)
7、算数运算符和算术表达式
(1)运算符的注意事项
·除法运算符“/”进行求商运算。关于不同类型的运算对象,除法表达式计算结果的类型也会不同。假如x,y是整型,则结果为整型,小数部分被略去。假如x,y其中一个为浮点型量,则结果为浮点型。
·“%”是求余运算。a%b计算a除以b后的余数,也是a模b的值。它要求两个运算对象必须是整型,其结
果也是整型量。
(2)书写算术表达式的注意事项
·将方括号改成圆括号,即算术表达式内所有的括号均为圆括号,*(乘法)不能省略
·其中π为非字母字符,要用浮点型常量代替
·其中不能浮现分数,改用除法运算符,圆括号不能缺少
(3)算数运算符的优先级
优先级:高- ---->* / % -----> + - 低注意:能够用( )来改变运算的顺序.
(2) (3) (4)
8、自增、自减运算符
后缀i++(i--)先使用i的值,再使i的值加(减)1
前缀++i (--i)先使i的值加(减)1 ,再使用i的值
自增、自减运算只能用于变量,不能用于常量和表达式。
自增、自减运算符高于基本算术运算符。
9、赋值运算符
(1)简单赋值运算符运算符:= 表达式格式:变量=表达式
·赋值运算符左边必须是变量而不能是表达式;
·赋值表达式的值是赋值号左边变量被赋值后的值;
(2)算术运算符“+ —* / %”和赋值运算符“=”结合起来,形成复合赋值运算符。
+= :加赋值运算符; 如a+=3,等价于a=a+3 -=、*=、/=、%= 与此类似·复合运算符在书写时,两个运算符之间不能有空格。
·复合运算符右边的表达式计算完成后才参与复合赋值运算;
食肉动物沉渊作品10、当表达式中的数据类型不同时,要进行类型转换。putchar函数
转换方式自动(隐式)转换:系统自动把数据由低级类型向高级转换。
强制转换:将表达式的运算结果强制转换成指定的数据类型。
自动转换规则强制转换格式:(目标类型名)(表达式)double←long←unsigned←int
↑↑
float 高←低char short
逗号运算符与逗号表达式:运算优先级最低为15级
求解过程先求表达式1的值,再求表达式2的值,···,直至求出表达式n的值。整个表达式的值为表达式n的值。
x=5*8, 6+9 先把x赋值为40,表达式的值为15
11、字符数据的简单输入和输出
(1)putchar函数(字符输出函数)形式:putchar(c)
·c能够是字符常量、字符变量或整型变量。putchar(100);
·用putchar函数也可输出转义字符。putchar(‘\n’); /*输出一个换行符*/ putchar(‘\\’); /*输出一个反斜杠\ */
·该函数包含在stdio.h库中,因此应在使用该函数的程序开头加入:#include <stdio.h> (2)getchar作用:从终端(如键盘)输入一个字符。
形式:getchar( ) 无参数
说明:该函数只能接收一个字符,其函数值能够赋给一个字符变量或整型变量,也可作为表达式的一部分,该函数包含在stdio.h中。
(3)格式输出函数格式:printf(格式操纵,输出表列)
格式操纵是用双撇号括起来的字符串,也称“转换操纵字符串”,包括2种信息。
1)格式说明:% [<;附加格式字符>]格式字符
将输出列表中的数据转换为指定格式输出。
2)一般字符:原样输出。
输出表列:需要输出的数据列表,彼此间用逗号分隔。它但是任意合法的表达式。
printf(" a+b = %5.2 f " , c )
(4)格式字符
1)d 格式符,用来输出十进制整数
%d 按整型数据的实际长度输出。
%md m代表某个数字,指定输出数据的最小宽度。若数据的位数小于m,则左侧补空格(右对齐),若大于m则按实际位数输出。%-md 与%md类似,只是左对齐
2)c 格式符:用来输出一个字符%c %mc %-mc
3)f格式符:用来以十进制小数形式输出实数(float,double)
%m.nf 输出数据最小占m列,其中包括n位小数和1位小数点,右对齐(小数点也算占一列) %-m.nf 与上面类似,只是左对齐
4)S 格式符:用来输出一个字符串
%s 按字符串原长输出%ms 输出字符串最小占m列,右对齐,左补空格%-ms 输出字符串最小占m列,左对齐,右补空格
%m.ns 字符串占m列,但只取左端n个字符,右对齐
%-m.ns 字符串占m列,但只取左端n个字符,左对齐
使用说明:
1)格式操纵中的格式说明符,必须按从左到右的顺序,与输出表中的每个数据一一对应,否则出错。
printf(“f=%d, i=%f\n”, 5.6,3); 显示:f= 1717986918,i=0.000000
2)格式字符紧跟在“%”后面就作为格式字符,否则将作为一般字符使用(原样输出)。
printf(”c=%c, f=%ff\n“, ‘a’,1.5); 其中的第一个c和f,第三个f,都是一般字符。(5)scanf函数scanf(格式操纵字符串,地址列表)
格式操纵与printf函数类似。
地址列表是由若干个地址组成的表列(以逗号隔开),能够是变量的地址,或字符串的首地址。scanf(“%d%d%d”,&a,&b,&c);
1)格式符中无一般字符时,可用空格、Tab键、回车键作分隔符。后来的回车键代表输入结束
2)用c格式符输入字符时,空格、回车、转义字符等均为有效字符。
例:char a,b,c;
scanf("%c%c%c", &a, &b, &c);
正确的输入方法:键入ABC则a=‘A’,b=‘B’,c=‘C’
若键入:A B C 则a=‘A’,b=‘’(空格),c=‘B’
若键入 A B C 未送,系统已经感觉输入结束了则:a=‘A’,b=‘\n’(换行符),c=‘B’
若不同类型输入则综合上述规则
3)在格式操纵中除格式说明符外若还有其它字符,则应按顺序原样输入。
4)能够指定输入数据所占列数,系统自动按它截取所需数据。
5)%后的“*”附加说明符,用来表示跃过相应的数据。
如:scanf(“%2d%*3d%2d”,&a,&b); 输入1234567则将12↔a,67 ↔b,345被跃过6)输入数据时不能规定精度。如:scanf(“%7.2f”,&a);错误
7)double类型的变量输入时,要用%lf%le(必须记住!!!)
如:
double x;
scanf(“%lf”,&x);
三、抉择结构程序设计
1、if语句实现抉择
if (表达式) 语句1 表达式能够是关系表达式、逻辑表达式、数值表达式
else 语句2
最常用的3种if语句形式:
(1)if (表达式) 语句1 (没有else子句)
(2).if (表达式) 语句1
(3)else 语句2 (有else子句)
(4)if(表达式1)语句1
else if(表达式2)语句2
else if(表达式3)语句3
┆
else if(表达式m)语句m
else 语句m+1
(在else部分又嵌套了多层的if语句)
说明:
(1)整个if语句可写在多行上,也可写在一行上,但都是一个整体,属于同一个语句
(2)“语句1”…“语句m”是if中的内嵌语句内嵌语句也能够是一个if语句
(3)“语句1”…“语句m”能够是简单的语句,也能够是复合语句
2、关系运算符
(1)关系运算符:
用来对两个数值进行比较的比较运算符
C语言提供6种关系运算符:
①<(小于) ②<= (小于或等于) ③>(大于) ④>= (大于或等于) 优先级高
⑤== (等于) ⑥!= (不等于) 优先级低
(2)关系表达式
用关系运算符将两个数值或数值表达式连接起来的式子,关系表达式的值是一个逻辑值,即“真”或“假”,在C的逻辑运算中,以“1”代表“真”,以“0”代表“假”
3、逻辑运算符与逻辑表达式
3种逻辑运算符:&&(逻辑与)||(逻辑或)!(逻辑非)
栅栏密码w型推断年龄在13至17岁之内?age>=13 && age<=17
逻辑运算符的优先次序! →&& →|| (!为三者中最高)
逻辑表达式的值应该是逻辑量“真”或“假”
编译系统在表示逻辑运算结果时以数值1代表“真”,以0代表“假”
但在推断一个量是否为“真”时以0代表“假”,以非0代表“真”注意:将一个非零的数值认作为“真”
在进行逻辑表达式的求解中,并不是所有的逻辑运算都被执行,只是在必须执行下一个逻辑运算符才能求出表达式的值时,才执行该运算符。
4、条件运算符与条件表达式
条件表达式的一般形式为:表达式1?表达式2: 表达式3
条件运算符的执行顺序:
求解表达式1
若为非0(真)则求解表达式2,此刻表达式2的值就作为整个条件表达式的值
若表达式1的值为0(假),则求解表达式3,表达式3的值就是整个条件表达式的值
条件运算符的结合方向为“自右至左”
5、switch语句
switch语句的作用是依照表达式的值,使流程跳转到不同的语句
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论