您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 其它文档 > C语言学习第三章(英文版).ppt
Chapter3Types,OperatorsandExpressions3.1VariableNames3.2DataTypesandSizes3.3Constants3.4Declarations3.5ArithmeticOperators3.6RelationalandLogicalOperators3.7TypeConversions3.8IncrementandDecrementOperators3.9AssignmentOperatorsandExpressions3.10ConditionalExpressions3.11PrecedenceandOrderofEvaluationOutlineVariableNamesDeclarationsArithmeticOperatorsRelationalandLogicalOperatorsIncrementandDecrementOperatorsKeypoints3.1VariablenamesWhatarevariables?Anamedareainthecomputermemory,intendedtocontainvaluesofacertainkind(integers,realnumbers,etc.)TheycontainthedatayourprogramworkswithTheycanbeusedtostoredatatobeusedelsewhereintheprogramInshort–theyaretheonlywaytomanipulatedata3.1VariablenamesVariablesinmemoryWheneverwewritethevariablename(e.g.my_int),weasktoreadthevalueofthatvariableIfwewrite&variable_name,weaskfortheaddressofthatvariable3.1VariablenamesVariablenamingrulesLetters,digits,underscoresiCSE_5along_name_that_isnt_very_usefulfahrenheitFirstcharactercannotbeadigit5a_CSEisnotvalidCasesensitiveCSE_5aisdifferentfromcse_5aThemaximumlengthis31characters3.1VariablenamesKeywordsareexplicitlyreservedwordsthathaveastrictmeaningasindividualtokensinC.KeywordscannotbeusedasvariablenamesKeywordsautodoubleintstructbreakelselongswitchcaseenumregistertypedefcharexternreturnunionconstfloatshortunsignedcontinueforsignedvoiddefaultgotosizeofvolatiledoifstaticwhile3.2DataTypesandSizestheDataTypeintInmathematics,thenaturalnumbersare0,1,2,3,…,andthesenumbers,alongwiththeirnegatives,comprisetheintegers.Onamachine,onlyafiniteportionoftheseintegersarerepresentableforagivenintegraltype.3.2DataTypesandSizesBecausethesizeofanintvariesfromoneCsystemtoanother,thenumberofdistinctvaluesthatanintcanholdissystem-dependent.ForTurboC,therangeofanint(2bytes)is-32768(-215)to32767(+215-1).ForVC++,therangeofanint(4bytes)is-231to+231-1.3.2DataTypesandSizesTheIntegralTypeslongandshortInC,thedatatypeintisconsideredthe”natural”or”usual”typeforworkingwithintegers.Theotherintegraltypes,suchaschar,short,andlong,areintendedformorespecializeduse.shortandlongintegerswouldusuallyoccupytwoandfourbytes,respectively.3.2DataTypesandSizesLongvariablesaredeclaredusingthekeywordlong,andshortvariablesshortlonginti;orlongi;longintabc;orlongabc;shortintj;orshortj;shortintheight;orshortheight;3.2DataTypesandSizesTheIntegralTypessignedandunsignedWedeclarethevariabletobeunsignedwhentheintegerwillalwaysbepositive.Therangeofanunsignedvariableis0to65535.Anunsignedintegercanbedeclaredas:unsignedinti;orunsignedi;Bydefault,aintisasignedint,ashortintisasignedshortint,andalongintisasignedlongint.3.2DataTypesandSizesCharactersandtheDataTypecharConstantssuchas’a’and’+’thatwethinkofascharactersareoftypeint,notoftypechar.Eachcharisstoredinmemoryin1byte.However,onmostmachinesabyteiscomposedof8bitsandiscapableofstoring256distinctvalues.3.2DataTypesandSizesOnlyasubsetofthesevaluesrepresentsactualprintingcharacters.Theseincludethelower-anduppercaseletters,digits,punctuation,andspecialcharacterssuchas%and+.Thecharacterssetalsoincludesthewhitespacecharactersblank,tabandnewline.3.2DataTypesandSizesMostmachinesuseeitherASCIIorEBCDICcharactercodes.Inthediscussionthatfollows,wewillbeusingtheASCIIcode.Somenonprintingandhard-to-printcharactersrequireanescapesequence(Escapecharacter).3.2DataTypesandSizesprintf(“%c”,’\a’);orputchar(‘\a’);printf(“\”abc\””);printf(“%cabc%c”,’\’’,’\’’);printf(“%cabc%c”,’\”’,’”’);printf(“\’abc’”);3.2DataTypesandSizesAnotherwaytowriteacharacterconstantisbymeansofaone-,two-,orthree-octaldigitescapesequence.e.g.‘\007’or‘\07’or‘\7’alertANSICalsoprovideshexadecimalescapesequences.e.g.‘\x1a’control-z3.2DataTypesandSizescharc=’a’;printf(”%c”,c);printf(”%d”,c);printf(”%c%c%c”,c,c+1,c+2);printf(”%d%d%d”,c,c+1,c+2);3.2DataTypesandSizesAsignedcharissameasanordinarycharandhasarangefrom-128to+127Aunsignedcharhasarangefrom0to255Aprogramillustratesthisrange#includestdio.hvoidmain(){charch=291;/*291127,ch=291%127*/printf(“\n%d%c”,ch,ch);/*Print35#*/}3.2DataTypesandSizesAnotherprogram#includestdio.hvoidmain(){charch;for(ch=0;ch=255;ch=ch+1)printf(”\n%d%c”,ch,ch);/*indefiniteloop*/}Whenthevalueofchis+127andweperformch=ch+1,itbecomes-128insteadof+1283.2DataTypesandSizesWorkableprogramusingunsignedchar#includestdio.hvoidmain(){unsignedcharch;for(ch=0;ch=254;ch=ch+1)printf(”\n%d%c”,ch,ch);}3.2DataTypesandSizesTheFloatingTypeAnsiCprovidesthethreefloatingtypes:float,double,andlongdouble.Asuffixcanbeappendedtoafloatingconstanttospecifyitstype.Integersarerepresentableasfloatingconstants,buttheymustbewrittenwithadecimalpoint.e.g.1.0,2.03.2DataTypesandSizesOnmostmachine,afloatoccupies4bytes,adoubleoccupies8bytes.Afloatstoresabout6decimalplacesofaccuracy,andadoublestoresabout15decimalplacesofaccuracy.longdoubleoccupies10bytesinmemory.InCprogramming,wherefloats,doublesandlongdoubleswouldbeusedareindeedrare.3.2DataTypesandSizesThesizeofOperatorCprovidestheunaryoperatorsizeoftofindthenumberofbytesne
本文标题:C语言学习第三章(英文版).ppt
链接地址:https://www.777doc.com/doc-1199226 .html