




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第2章C语言的基础知识2.1预备知识2.2数据类型2.3常量与变量2.4运算符和表达式
2.5运算符的优先级及结合性2.6表达式的书写规则2.7各种数据类型的转换
2.1
预备知识计算机中数的表示及进制转换数码、基与权数码:表示数的符号基:数码的个数权:每一位所具有的值数制<>各种进制之间的转换二进制、八进制、十六进制转换成十进制方法:按权位展开,相加<>各种进制之间的转换(整数)二进制、八进制、十六进制转换成十进制方法:按权位展开,相加十进制转换成二进制、八进制、十六进制原理:方法:连续除以基,从低到高记录余数,直至商为0例把十进制数59转换成二进制数5922921427232120(59)10=(111011)2110111111011余余余余余余例把十进制数159转换成八进制数1598198280(159)10=(237)8237余7余3余2例把十进制数459转换成十六进制数4591628161160(459)10=(1CB)161CB余11余12余1二进制与八进制之间的转换二进制转换成八进制:从右向左,每3位一组(不足3位左补0),转换成八进制八进制转换成二进制:用3位二进制数代替每一位八进制数例(1101001)2=(001,101,001)2=(151)8例(246)8=(010,100,110)2=(10100110)2000~0001~1010~2011~3100~4101~5110~6111~7<>在C语言中,可以这样表示:0151=(151)8、0246=
(246)8二进制与十六进制之间的转换二进制转换成十六进制:从右向左,每4位一组(不足4位左补0),转换成十六进制十六进制转换成二进制:用4位二进制数代替每一位十六进制数例(11010101111101)2=(0011,0101,0111,1101)2=(357D)16例(4B9E)16=(0100,1011,1001,1110)2=(100101110011110)20000~00001~10010~20011~30100~40101~50110~60111~71000~81001~91010~A1011~B1100~C1101~D1110~E1111~F<>在C语言中,可以这样表示:0x357D=(357D)16,0x4B9E=(4B9E)16字节和位内存以字节为单元组成每个字节有一个地址一个字节一般由8个二进制位组成每个二进位的值是0或101234567012345678910……...<>7643251数值的表示方法——原码、反码和补码原码:最高位为符号位,其余各位为数值本身的绝对值反码:正数:反码与原码相同负数:符号位为1,其余位对原码取反补码:正数:原码、反码、补码相同负数:最高位为1,其余位为原码取反,再对整个数加13126912457810119-5=49+7=16=(14)12<>原码反码补码+7000001110000011100000111-7100001111111100011111001+0000000000000000000000000-0100000001111111100000000数的范围01111111~11111111(-127~+127)01111111~10000000(-127~+127)01111111~10000000(-128~+127)(用一字节表示数)负数补码转换成十进制数:最高位不动,其余位取反加1例补码:11111001
取反:10000110
加1:10000111=-7<>2.2
数据类型数据类型总表<>C数据类型基本类型非基本类型指针类型(*)空类型(void)字符类型char枚举类型(enum)整型(short/int/long)实型(浮点型)单精度型(float)双精度型(double)数组类型([])结构体(struct[...]共用体union[...]数据类型决定:1.数据占内存字节数2.数据取值范围3.其上可进行的操作基本数据类型类型符号关键字数的表示范围所占位数整型字符型实型有无(signed)
int16-32768~32767(signed)
short16-32768~32767(signed)
long32-2147483648~214748364716unsigned
int0~65535320~4294967295unsigned
longunsigned
short160~65535有float323.4e-38~3.4e38有double641.7e-308~1.7e308有char8-128~127无unsignedchar80~255说明:数据类型所占字节数随机器硬件不同而不同,下表以IBMPC机为例2.3常量与变量2.3.1标识符定义:用来标识变量、常量、函数等的字符序列组成:只能由字母、数字、下划线组成,且第一个字母必须是字母或下划线大小写敏感不能使用关键字
讨论:判断下列标识符号合法性sum Sum M.D.John day Date 3daysstudent_name #33 lotus_1_2_3 char a>babove$123_toDayM.D.John3days#33char$123a>b长度:TurboC中最长32个字符命名原则:见名知意,采用简洁有含义的英文单词(或缩写)不宜混淆如1与L,o与0
标识符命名实例stu_name,sum,total,day,count,sort关键字
关键字是被C语言保留、具有特定含义,并且不能用于其他用途的一批标识符,用户只能按规定使用它们。根据ANSI的标准,C语言中的关键字如图所示。charshortintunsignedlongfloatdoublestructunionvoidenumsignedconstvolatiletypedefautoregisterstaticexternbreakcasecontinuedefaultdoelseforgotoifreturnswitchwhilesizeof2.3.2
常量与符号常量常量是指在程序运行过程中其值不能改变的量。<>常量直接常量符号常量(需要定义)字符型常量数值常量整型常量实型常量字符常量字符串常量直接常量在程序运行过程中,其值不能改变的量称为常量常量可为任意数据类型直接常量(字面常量)整型常量:
12、0、-3、10L、0x10、010、039(×)实型常量:
4.6、-1.23、2.5e-5、.33、0.、E7(×)、字符型常量:'a'、'0'、'+'、't'、'\105'、'x10'、“a”(×)字符串常量:“Hello”、“GoodMorning!”ASCII码表注意:指数:在计算机中用字母E(或e)表示以10为底的指数。一般格式:aEn或aen,代表a×10n(其中a为十进制数,n为十进制整数)hello\0内存中存储形式:符号常量:标识符代表常量定义格式:#define<符号常量名><常量>
符号常量定义举例
#definePI
3.1415926 #defineSTAR
‘*’说明:(3)符号常量一般使用大写英文字母表示,以区别一般用于小写字母表示的变量。说明:(1)#define是一条预处理命令(必须以#开头),又称“宏定义命令”。(2)#define命令行的最后不能加分号。符号常量使用例符号常量举例#include<stdio.h>#definePRICE30main(){intnum,total;num=10;total=num*PRICE;printf("total=%d",total);}运行结果:total=300符号常量的使用能给程序员带来哪些好处?变量其值可以改变的量称为变量变量也可以为任意数据类型变量定义的一般格式数据类型变量1[,变量2,…,变量n];决定分配字节数和数的表示范围变量定义举例:inta,b,c;floatdata;变量的使用:作强制定义,也就是“先定义,后使用”例1intstudent;stadent=19;//Undefinedsymbol‘stadent’infunctionmain
例2floata,b,c;c=a%b;//Illegaluseoffloatingpointinfunctionmain
整型数据整型常量形式表示方式举例十进制整数由数字0-9和正负号表示123,-456,0八进制整数由数字0开头,后跟数字0~7表示0123,011十六进制整数由0x开头,后跟0~9,a~f,A~F表示0x123,0Xff问题:0123=()100x123=()100Xff=()1083291255整型变量整型变量在内存中以二进制的形式存放根据占用的字节数不同,分为不同类别TurboC2.0编译系统[signed]
int返回VisualC++2010编译系统类型字节数值范围[signed]int4-2147483648~2147483647Unsignedint40~4294967295(即232-1)[signed]short[int]2-32768~32767unsignedshort[int]20~65535(即216-1)long[int]4-2147483648~2147483647unsignedlong[int]40~4294967295(232-1)返回整型变量的定义整型变量定义举例:inta,b;unsignedshortc,d;longe,f;例:cha3-01.c#include<stdio.h>voidmain(){inta,b,c,d;unsignedu;a=12;b=-24;u=10;c=a+u;d=b+u;printf("a+u=%d,b+u=%d\n",c,d);}
运行结果:a+u=22,b+u=-14整型数据在内存中的存放形式数据在内存中是以二进制形式存放的,以补码表示。
inti,j; /*定义I,j为整型变量*/i=10; /*给i,j赋以整数10,-10*/j=-10;i
j00000000000010101111111111110110变量3要素:变量名、变量值、变量在内存的存储单元。实型(浮点型)数据实型常量十进制数形式(必须有小数点,整数部分为0时可以省略)0.123.123123.00.0123.
指数形式(e或E之前必须有数字;指数必须为整数)12.3e3123E21.23e4e-5×1.2E-3.5×.e3×规范化的指数形式:在字母e(或E)之前的数据中,小数点左边有且仅有一位非零的数字。指数形式实型常量12.3e3123E21.23e4(规范化)0.123e-3类型字节有效数字/精度(位)数值范围float47-3.4×10-39~3.4×1039double815~16-1.7×10-309~3.4×10309返回实型(浮点型)数据:与数学中的实数概念相同,这种数据由整数和小数两部分组成。实型数据分为:(1)单精度型:类型声明符为float(2)双精度型:类型声明符为double.实型(浮点型)数据floata;a=111111.111doublea;a=111111.111问题:以下两段程序代码,是否有区别?float:占4字节,提供7位有效数字double:占8字节,提供15~16位有效数字字符常量定义:用单引号括起来的单个普通字符或转义字符。字符常量的值:该字符的ASCII码值转义字符:反斜线后面跟一个字符或一个代码值表示如‘a’‘A’‘?’‘\n’‘\101’如‘A'——65,‘a'——97,
‘0'——48,'\n'——10<转义字符及其含义:转义字符含义\n\v\r\a\‘\ddd\t\b\f\\\“\xhh转义字符含义换行垂直制表回车响铃单引号3位8进制数代表的字符水平制表退格换页反斜线双引号2位16进制数代表的字符如'\101'-----------'A''\012'-----------'\n''\376'-----------'''\x61'-----------'a''\60'-----------'0''\483'----------(
)例:'A'-------'\101'-------'\x41'--------65例转义字符举例(ch3_001.c,ch2_004.c)main(){printf("\101\x42C\n");printf("Isay:\"Howareyou?\"\n");printf("\\CProgram\\\n");printf("Turbo\'C\'");}运行结果:(屏幕显示)ABCIsay:”Howareyou?”\CProgram\Turbo‘C’例main(){printf(“Y\b=\n”);}运行结果:屏幕显示:=打印机输出:¥ASCII码表注意事项:单撇号中的字符不能是’或者\一个字符占一个字节,存其对应的ASCII码思考:'9’和9的区别字符型数据可像整数一样在程序中参与相关的运算‘a’–32结果为65字符变量字符型的类型声明符为char,可以分为有符号和无符号两种。字符变量存放字符ASCII码char与int数据间可进行算术运算例1a=‘D’;/*a=68;*/x=‘A’+5;/*x=65+5;*/s=‘!’+‘G’/*s=33+71;*/例2/*cha3-002.c*/main(){charc1,c2;c1='a';c2=98;printf(“%d%c\n”,c1,c2);}类型分配的字节数数值范围[signed]char1-128~127即-2-7~(27-1)unsignedchar10~255即0~(28-1)#include<stdi.h>#definePRICE12.5main(){intnum=3;floattotal;charch1,ch2='D';total=num*PRICE;ch1=ch2-'A'+'a';
printf(“total=%f,ch1=%c\n”,total,ch1);}宏定义变量定义输出结果运行结果:total=37.500000,ch1=d例字符串常量定义:用双引号(“”)括起来的字符序列存储:每个字符串尾自动加一个‘\0’作为字符串结束标志字符常量与字符串常量不同hello
\0例字符串“hello”在内存中例空串“”\0aa\0例‘a’“a”例:charch;ch=‘A’;例:charch;ch=“A”;没有字符串变量,用字符数组存放变量赋初值编译程序根据变量定义为其分配指定字节的内存单元…...地址inta=1,b=-3,c;abc2字节2字节2字节地址地址…...内存1-3
随机数如果定义了变量,但是没有对它赋初值,则它的值是一个不确定的数值例main(){intx,y;printf(“%d,%d”,x,y);}如果定义了变量,但是没有对它赋初值,则它的值是一个不确定的数值。2.4运算符和表达式C运算符简介C运算符算术运算符:(+-*/%++--)关系运算符:(<<===>>=!=)逻辑运算符:(!&&||)位运算符:(<<>>~|^&)赋值运算符:(=及其扩展)条件运算符:(?:)逗号运算符:(,)指针运算符:(*&)求字节数:(sizeof)强制类型转换:(类型)分量运算符:(.->)下标运算符:([])其它:(()-)学习运算符应注意运算符功能与运算量关系-要求运算量个数-要求运算量类型运算符优先级别结合方向结果的类型基本的算术运算符+
加法运算或正值运算符- 减法运算或负值运算符*
乘法运算符/
除法运算符,求商,两个整数相除结果为整数%
模运算符,求余,要求两则均为整型数据3+5、+35-2、-33*55/37%4例9/2=-9/2.0=例9%2=-9%2=9%-2=1%10=
9%1=9.9%2=4-4.51-110(
)1取模的余数符号由分子(被除数决定)例题/*cha3-005.c*/算术表达式和运算符的优先级和结合性算术表达式:用算术运算符和括号将运算对象连接起来的、符合C语法规则的式子。求表达式的值:先按运算符的优先级别高低次序执行;在一个运算对象两则的运算符的优先级别相同,则按规定的“结合方向”处理。a*b/c-1.5+’a’a–b*c/d自增++、自减运算符--作用:使变量值加1或减1种类:前置++i,--i(先执行i+1或i-1,再使用i值)后置i++,i--(先使用i值,再执行i+1或i-1)
inta=3;intb=++a;intc=a++;近水楼台先得月4a值表达式值a值表达式值++aa++345444则:a:5,b:4,c:4。j=3;k=++j;j=3;k=j++;j=3;printf(“%d”,++j);j=3;printf(“%d”,j++);a=3;b=5;c=(++a)*b;a=3;b=5;c=(a++)*b;
//k=4,j=4//k=3,j=4//4//3//c=20,a=4//c=15,a=4例注意说明:只能用于变量,不能用于常量或表达式;结合方向“自右向左”;优先级别:--++-------->*/%----->+-自增(减)运算常用于循环语句中循环变量自动加(减)1或指针变量,使指针指向下一个地址5++(×)(a+b)++(×)i++(√)例1解答:
-i++
-(i++)i=3;printf(“%d”,-i++);//-3
例1:-i++i=3;printf(“%d”,-i++);
例2:
i+++j;(i++)+j;解答:理解为(i++)+jC编译在处理时尽可能多地(自左而右)将若干个字符组成一个运算符。有关表达式使用中的问题说明表达式中包含多个自加、自减运算时,很容易出错例1:
如i=3,则k=i++结果:k=3,i=4例2:
如i=3,则(i++)+(i++)+(i++)结果:9,i=6例3:
如i=3,则(++i)+(++i)+(++i)结果:16,i=62.4.2关系运算符和关系表达式关系运算符种类:<<=>>===!=结合方向:自左向右优先级别:低于算术运算符而高于赋值运算符<<=>>===!=优先级6(高)优先级7(低)例c>a+b//c>(a+b)a>b!=c//(a>b)!=ca==b<c//a==(b<c)a=b>c//a=(b>c)关系表达式的一般格式:表达式关系运算符表达式关系表达式的值:是逻辑量“真”或“假”,分别用1和0表示。例inta=3,b=2,c=1,d,f;a>b(a>b)==cb+c<ad=a>bf=a>b>c//表达式值1//表达式值1//表达式值0//d=1//f=0C中没有逻辑型例1若a=0;b=0.5;x=0.3;
则a<=x<=b的值为0例25>2>7>8在C中是允许的,值为0例3inti=1,j=7,a;a=i+(j%4!=0);
则a=2例4‘a’>0结果为‘A’>100结果为10例5注意区分“=”与“==”inta=0,b=1;if(a==b)printf(“aequaltob”);elseprintf(“anotequaltob”);2.4.3逻辑运算符和逻辑表达式逻辑运算符种类:&&||!逻辑运算真值表ab!a!ba&&ba||b真1假0真1假0假0假0真1真1真1假0假0假0假0假0真1真1假0假0真1真1真1假0真1真1优先级和结合方向!算术运算符关系运算符&&||赋值运算符高低优先级:结合方向:!:从右向左&&:从左向右||:从左向右例a<=x&&x<=b
a>b&&x>ya==b||x==y!a||a>b//(a<=x)&&(x<=b)//(a>b)&&(x>y)//(a==b)||(x==y)//(!a)||(a>b)#include<stdio.h>main(){inta=3,b=0,p,q,s,r;p=s=(!a)&&(a+b)&&(a++);q=s=a||b||b++;printf("p=s=%d,q=s=%d\n",p,q);printf("(p&&(q&&!q))||!(r||(s||!s))=%d\n",(p&&(q&&!q))||!(r||(s||!s)));}运算结果:p=s=0,q=r=1(p&&(q&&!q))||!(r||(s||!s))=0Pressanykeytocontinue.例#include<stdio.h>main(){ charc='k'; inti=1,j=2,k=3; floatx=3e+5,y=0.85; printf("%d,%d\n",!x*!y,!!!x); printf("%d,%d\n",x||i&&j-3,i<j&&x<y); printf("%d,%d\n",i==5&&c&&(j=8),x+y||i+j+k);}例运算结果:0,01,00,1eg.写出以下表达式1.整型变量m的内容是否为偶数m%2==02.检查字符变量a的内容是否为字母.a>=‘a’&&a<=‘z’||a>=‘A’&&a<=‘Z’2.4.4位运算符及其表达式逻辑运算符种类:&(按位与)|(按位或)^(按位异或)~(取反)<<(左移)>>(右移)位运算是指按二进制位执行的运算,位运算符只能用于整型操作数,即只能用于带符号或无符号的char、short、int与long类型。&(按位与)
双目运算符,功能是参与运算的两数中各对应的二进位执行与运算。只有对应的两个二进位均为1时,结果位才为1;否则为0。参与运算的数以补码形式出现。例9&5可写为如下算式:00001001 (9的二进制补码)&00000101
(5的二进制补码)00000001 (1的二进制补码)可见表达式9&5的值为1。清0操作:例原数为43,即00101011。另找一个数设为148,即10010100,将二者执行按位与运算:00101011&10010100
00000000
取一个数中某些指定位:例若有一个整数a(2字节),需要取其中的低字节,只需要将a与8个1按位与即可。a0010110010101100&b0000000011111111c0000000010101100
保留指定位:例有一数84即01010100需要把其中从左边算起的第3、4、5、7、8位保留下来,运算如下:01010100&00111011
00010000即a=84,b=59,a&b=16。
|(按位或)双目运算符,功能是参与运算的两数中对应的二进位执行或运算。只要对应的两个二进位有一个为1时,结果位就为1。参与运算的两个数均以补码出现。例9|5的算式如下:00001001|0000010100001101(十进制为13)可见9|5=13。
^(按位异或)双目运算符,其功能是参与运算的两个数中对应的二进位相异或。当两对应的二进位相异时,结果为1。参与运算的两个数均以补码出现。例9^5可写成如下算式:00001001^0000010100001100(十进制为12)使特定位翻转:例假设有二进制数01111010,要使其低4位翻转。即1变0,0变1,可以将其与00001111执行异或运算。01111010^0000111101110101
与0相异或保留原值:例012^00=01200001010^0000000000001010因为原数位中的1与0执行异或运算得1,0^0得0,故保留原数
~(取反)单目运算符,具有右结合性。其功能是按位求反参与运算数的各个二进位。例~9的运算:~(0000000000001001)结果为1111111111110110。<<(左移)双目运算符,功能是把<<左边运算数的各个二进位全部左移<<右边数指定的位数,高位丢弃,低位补0。>>(右移)双目运算符,功能是把>>左边的运算数的各个二进位全部右移>>右边的数指定的位数。例a<<4把a的各个二进位向左移动4位。假设a=00000011(十进制3),左移4位后为00110000(十进制48)。例
设a=15,a>>2表示把00001111右移为00000011(十进制3)。左移1位相当于该数乘以2,左移两位相当于该数乘以2*2=4。15<<2=60即乘了4,但此结论只适用于该数左移时被溢出舍弃的高位中不包含1的情况。假设以一个字节(8位)存一个整数,且a为无符号整型变量,则a=64时,左移一位时溢出的是0;而左移2位时,溢出的高位中包含1。有符号数在右移时符号位将随同移动,为正数时最高位补0;为负数时符号位为1,最高位补0或补1取决于编译系统的规定(TurboC和很多系统规定为补1)。2.4.5赋值运算符及其表达式简单赋值运算符“=”作用:将一个数据赋给一个变量结合方向:自右向左 优先级:14常量或表达式只能是变量,不能是常量或表达式例3=x-2*y;a+b=3;例a=3;a=(a+b)*c赋值转换规则:使赋值号右边表达式值自动转换成其左边变量的类型例1
floatf;inti;i=10;f=i;
则
f=10.0例2inti;i=2.56;//结果i=2;赋值表达式定义:由赋值运算符”=”将一个变量和一个表达式连接起来的式子,叫赋值表达式。一般形式:<变量>=<表达式>赋值表达式的值与变量值相等,且可嵌套例:a=b=c=5a=(b=5)a=5+(c=6)a=(b=4)+(c=6)a=(b=10)/(c=2)//b=10,c=2,a=5,表达式值5//b=4,c=6,a=10,表达式值10//c=6,a=11,表达式值11//b=5;a=5,表达式值为5//a,b,c值为5,表达式值为5复合的赋值运算符
+=-=*=/=%=《=》=&=^=|=a+=3a=a+3x*=y+8x=x*(y+8)x%=3x=x%3例:a=12;a+=a-=a*a//a=-264等价于a=a+(a=a-(a*a))例:inta=2;a%=4-1;a+=a*=a-=a*=3;//a=0等价于a=a+(a=a*(a=a-(a=a*3)))a-=4a=a-4x/=y++x=x/(y++)x<<=3x=x<<3//a=22.4.6条件运算符及其表达式条件运算符一般形式为:表达式1?表达式2:表达式3运算规则:如果“表达式1”的值为非0(即逻辑真),则运算结果等于“表达式2”的值,否则,运算结果等于“表达式3”的值。也就是说,“表达式2”与“表达式3”中,只有一个被执行,而不会全部执行。例如:(a>b)?a:b/*返回a和b中较大的数*/x?1:0/*若x是非0数,返回1,否则返回0*/(score>=60)?’Y’:’N’/*若及格,返回字符‘Y’,否则返回字符‘N’*/条件运算符是C语言中唯一的三目运算符,要求有3个操作对象。2.4.7逗号运算符和表达式形式:表达式1,表达式2,……表达式n结合性:从左向右优先级:15(最低)逗号表达式的值:等于表达式n的值例1a=3*5,a*4a=3*5,a*4,a+5例2x=(a=3,6*3)x=a=3,6*a例3a=1;b=2;c=3;printf(“%d,%d,%d”,a,b,c);printf(“%d,%d,%d”,(a,b,c),b,c);例4printf(“%d,%d,%d”,a,b,c);printf(“%d,%d,%d”,(a,b,c),b,c)//a=15,逗号表达式值为60//a=15,逗号表达式值为20//x=18,赋值表达式值18//x=3,逗号表达式值18//1,2,3//3,2,3//逗号起分隔作用//逗号为逗号运算符例:lt2-009.c#include<stdio.h>main(){intx,y=7;floatz=4;x=(y=y+6,y/z);printf("x=%d\n",x);}运行结果:x=32.4.8求字节运算符sizeof运算符是一个求字节数运算符。它是一个单目运算符,求字节运算的一般形式为:sizeof(数据类型名|变量名|常量)功能:返回某数据类型、某变量或者某常量在内存中的字节长度。例如:#include<stdio.h>main(){ floatx;chara; printf("%d\n",sizeof(short));
/*输出字节数2*/ printf("%d\n",sizeof(x));
/*输出字节数4*/ printf("%d\n",sizeof(a)); /*输出字节数1*/ printf("%d\n",sizeof(2)); /*输出字节数4*/ printf("%d\n",sizeof(2+3.14)); /*输出字节数8*/}2.5运算符的优先级及结合性优先级运算符含义结合性说明1()圆括号左结合括号优先2-(取负运算)++(自增运算符)--(自减运算符)算术运算符右结合单目运算符(类型名)(表达式)强制类型转换!逻辑非运算符sizeof求字节运算符~(按位取反)位运算符3*(乘法)/(除法)%(求余)算术运算符左结合双目运算符4+(加法)-(减法)5<<左移、>>右移位运算符左结合双目运算符6>(大于)>=(大于等于)<(小于)<=(小于等于)关系运算符左结合双目运算符7==(等于)!=(不等于)2.5运算符的优先级及结合性优先级运算符含义结合性说明8&(按位与)位运算符
左结合双目运算符9^(按位异或)10|(按位或)11&&(逻辑与)逻辑运算符左结合双目运算符12||(逻辑或)13?:条件运算符右结合三目运算符14=、+=、-=、*=、/=、%=、&==、|=、>>=、<<=、^=赋值运算符右结合双目运算符15,逗号运算符左结合双目运算符2.6表达式的书写规则书写表达式应注意以下规则:①在C语言中,所有括号全部使用圆括号,没有小括号、中括号以及大括号之分。②C语言表达式中的乘号不能省略。例如:数学表达式3[x+2(y+z)]写成C语言表达式为:3*(x+2*(y+z))③表达式中各操作数和运算符应在同一水平线上,没有上下标和高低之分。表达式的书写规则用C语言表达式描述数学表达式1、ax2+by1+c C语言表达式:a*x*x+b*y1+c2、C语言表达式:(y-1)/(2*x)或(y-1)/2/x3、a≤x≤b,C语言表达式:a<=x&&x<=b(关系运算优于逻辑运算
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 三年级下册数学教案-长方形的面积-北师大版
- 公司与公司借款合同(2025年版)
- 二年级上册数学教案-7.6 动物乐园|北师大版
- (高清版)DB45∕T 203-2022 绿色食品 茶叶生产技术规程
- 人教版数学三年级上册单元练习卷(易错题)-第六单元-多位数乘一位数(含答案)
- 模拟试卷五(原卷版+解析版)-三年级语文上学期期末全真模拟卷(部编版五四制)
- 第三课 表格的修饰(教学设计)2023-2024学年四年级下册信息技术龙教版
- 2025年甘肃财贸职业学院单招职业适应性测试题库学生专用
- 2025年度实习生实习基地共建实习劳动协议书
- 2025年度新能源产业研发人员招聘与技术支持协议
- 造血细胞与基本检验方法-细胞化学染色(血液学检验课件)
- 领子的分类详解课件
- 烟花爆竹基础知识
- 产品质量保证书
- 工厂员工消防安全培训内容
- 调节与集合的相关性 相对调节和相对集合的关系
- 《金融工程》课程教案
- 水轮机结构总体介绍
- 十八项护理核心制度培训课件
- GB/T 41326-2022六氟丁二烯
- GB/T 19470-2004土工合成材料塑料土工网
评论
0/150
提交评论