




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Part02C#语法基础讲师:王绚文1.1计算机如何运行程序PC电脑的三大件?各自的作用为什么需要这三大件此时应该画图了!1.2数据类型各种数据是需要临时存储在内存里的不同的数据类型需要在内存中开辟不同类型的空间,并将这个数据放在这个空间里数据类型就是在内存中开辟空间大小的1个模板.常用数据类型:整型(intbytelongshort……)浮点型(doublefloatdecimal),字符串字符类型(stringchar),bool类型变量变量名变量的值变量的数据类型2.0变量内存中存储数据开辟的空间----变量空间的类型(数据类型)-----变量的数据类型空间里的值-----变量的数据类型空间的名字---变量名不同的数据类型其实就是在内存中开辟不同大小或者不同的类型的空间的2.1变量声明1个变量其实就是在内存中申请开辟1块指定类型指定大小的空间.申明变量:数据类型变量名;当运行到这句话的时候,就会在内存中申请开辟1块int类型的空间.因为这个空间是int类型的,所以只能往这个空间里面放int类型的值.变量的赋值:变量名=值; =号表示赋值符号,表示将=号右边的值或者表达式的值赋值给=号左边的变量,所以必须要保证=号右边的值或者表达式的值的数据类型与=号左边的变量的数据类型要一致.num=12.1;这样是不行的,因为num变量的数据类型是1个整型的,这个变量里面只能存储整型的,不能存储其他的数据类型.所以无法将1个double类型的值赋值给1个int类型的变量.2.2变量如何使用变量当需要去访问这个变量的值,并把这个值取出来的时候,可以直接写变量名就可以了.Console.WriteLine(num);变量必须先声明再使用.请注意,当作为1个局部变量的时候,在取这个变量的值之前,必须要保证已经为这个变量赋值了,否则会报错误.2.3变量也可以在声明变量的同时给变量赋初始值inti=12;声明1个int类型的变量i,并赋值12给这个变量inti,j,k;inta=12,b=11,c;同时声明多个相同类型的变量修改变量的值i=11;将11赋值给变量i变量同时只能存储1个值。变量可以重复赋值,当给1个变量赋值之后,这个变量里的值就是新值,老值就不存在了。intage=12;age=11;Console.WriteLine(age);2.4变量需要注意的地方当我们写1个常量如果是小数类型的数字的时候,这个常量的数据类型是double,比如doubled=12.1;这样是可以的,因为12.1是double,而变量d是double类型的,满足赋值表达式。如果要指定这个小数的数据类型是float,则需要在常量后面加上f,如,floatf=12.1F;这个时候12.1就是1个float类型,如果要指定这个小数是decimal类型的,在后面加m,decimald=12.1m;练习请说明下面语句是否正确inti=12.1;floatf=12.2;intj=-1;doubled=11;stringstr=“我爱北京天安门!”;charc=“我”;charc1=‘’;boolb=真;boolb1=“false”;byteb1=290;inti=110;Console.WriteLine(“i”);2.5变量的命名命名规则:1必须以“字母”_或@符号开头.不能以数字开头.2后面可以跟任意“字母”、数字、下划线.注意:你起的变量名不要与c#系统中的关键字重复.在c#中,大小写是敏感的.同一个变量名不允许重复定义(先这么认为,不严谨)命名规范:定义变量名时,变量名要取得有意义.严禁inta,b,c;stringwdbw,dwdwidsq,d1d等等.首个单词的首字母小写,其余单词的首字母大写.stringxueHao;如果使用到英文单词的缩写,全部用大写!stringCCTV;2.6那些变量命名正确并且符合规范?principalcostPricemarks_3$lastnamecity123ratediscount%zipcodeCityintlove@u@numA3.1赋值运算符与赋值表达式赋值运算符:=与数学中的=号完全是两码事.inta;a=1+1;这时候=号表示赋值,将=号右边的值或者表达式的值赋值给=号左边变量.注意:赋值符号右边的值或者表达式的值的数据类型必须要与左边的变量的数据类型一致(不严谨,先这么认为.)赋值运算的执行顺序:inti=1+1+1;先声明变量i,再计算赋值符号右面表达式的值,将这个值赋值给变量i;3.2字符串的连接字符串连接符:+如果1个表达式是由+号连接起来的,只要有1边是字符串类型,那么这个时候,+号就不是数学意义上的加,而是将+号两边连接起来组成1个字符串.这个表达式的结果的类型就是1个字符串类型的.stringstr=1+”我”;str=“1我”;Question:1+1+1+”1”+1;这个表达式的结果是什么?结果是什么类型的?3.3演示定义一个变量存储客户的姓名,然后再定义1个变量里存储:”你好,某某”.再将第2个变量的值打印到屏幕上.某某代表客户的姓名练习定义3个变量,分别存储一个人的姓名(张三),年龄(28),和工资(7600.33).然后在屏幕上显示,我叫XX,今天X岁了,我的工资是XX元.定义一个变量存储一个人的年龄(18),然后发现这个人的年龄不是18岁,要把这个人的年龄修改成20岁(本题体会变量可以被重复多次赋值),最后把这个人的年龄输出到屏幕上?定义四个变量,分别存储一个人的姓名、性别、年龄、电话。然后打印在屏幕上在屏幕上输出:我的手机是philips型号:998价格:1500元重量:0.3kg请定义变量存存储上面的值,并显示在屏幕上.3.3.1用合适的变量来存储数据定义1个变量用来保存电话号码,身份证号码(假设身份证号码全为数字).用什么数据类型来保存比较合适呢?主要是看这个数据需要不需要参与算术运算,如果需要参与算术运算,则定义为数值类型,否则字符串类型就可以了.如果需要定义1个变量来保存人的性别,用什么类型好呢?3.4交换两个变量的值.定义1个临时变量(转圈)如果是数值类型:两数相加再相减.3.5从控制台接收用户输入的信息Console.ReadLine();当程序执行到这句代码的时候,程序会暂停,直到用户按下回车键程序才会继续往下执行.当按下回车键的时候,会将用户在回车键之前按下的键以字符串的形式返回.所以我们必须用1个字符串的变量来接收这句代码的结果.stringmsg=Console.ReadLine();再次强调.从控制台接收用户的输入是字符串类型的,所以必须用1个字符串变量来接收.练习:1.练习:问用户喜欢吃什么水果,假如用户输入”苹果”,则显示”哈哈,这么巧呀,我也喜欢吃苹果”2.练习:请用户输入姓名,然后在屏幕上显示“你好,XXX".XXX为用户刚刚输入的姓名.4.字符串的转义符我们希望在字符中表示双引号”strings=“ni”hao”;x转义符:通过\改变后面字符的意义.@在字符串前面表示后面字符串中\不表示转义常用转义符号:\n\b\t\\\”4.1字符串的格式化String.Format();Console.WriteLine(“{0}”,”aa”);5.C#中的注释符单行注释//多行注释/**/文档注释//////Q:inti,j=1,k=2;j=1这句话需要注释掉该怎么做?6.算术运算符及算术表达式算术运算符:+-*/%算术表达式:由算术运算符连接起来的式子.如:1+1a-b(变量ab前面已声明并赋初值)参与算术运算的数据必须是数值类型的.(char)演示:某学生三门课成绩为,语文:90数学:80英语:91,编程求总分和平均分.优先级:先乘除,后加减,有括号先算括号里的,相同级别的从左至右运算小括号可以无限制的套用,但一定要成对出现.参与算术表达式的操作数,如果数据类型一致,那么这个表达式的结果的数据类型也是这个数据类型练习练习1:定义两个数分别为10和20,打印出两个数的和。练习2:计算半径为5的圆的面积并打印出来.练习3:某商店T恤的价格为35元/件,裤子的价格为120元/条.小明在该店买了3件T恤和2条裤子,请计算并显示小明应该付多少钱?假如商店为小明打8.8折,那么小明应该付多少钱呢?购物总计为:XX元,打折后应付为:XX元.7.1自动类型转换下面代码的输出结果是什么?inta=10,b=3;intmod=a%b;//1
doublequo=a/b;//3..3333
Console.WriteLine(mod);Console.WriteLine(quo);7.2自动类型转换参与运算(算术运算和赋值运算)的操作数和结果类型必须一致.当不一致时,满足下面条件时,系统自动完成类型转换两种类型兼容例如:int和double兼容目标类型大于源类型例如:double>int对于表达式如果一个操作数为double型,则整个表达式可提升为double型比如前面打8.8折的练习题.求10/3求余数要想得到3.333的处理.参与运算的操作数谁的数据类型最大,整个表达式的结果的数据类型就是这个最大的数据类型.7.3强制类型转换如上题中打完8.8折后出现小数,商店为了结算方便,只收用户整数部分的钱,如本应收用户166.78,现在只收用户166元,应该如何做?语法:(数据类型名)待转换的值;如: intb=(int)3.14;
强制类型转换,数据类型一定要相兼容7.4数据类型转换总结自动类型转换(隐式转换):将小类型的数据放到大类型的变量中去,这样是不会出任何问题的,所以系统自动完成这个转换操作强制类型转换将大类型的数据放到小类型的变量中去,这个时候有可能会发生溢出现象,系统不能自动完成这个转换,需要程序员强制转换,表示我知道这个地方可能会转换失败,但是还是给我转换吧,出了错误,我自己负责.字符类型可以转换为整型(字符所对应的ASCII码)字符类型与整型数字参与数学运算或者比较运算,会将字符类转换为整型再参与运算.7.5字符串转换为数值类型inti=int.Parse(待转换的字符串);待转换的字符串的字面量如果是1个int类型,则转换成功,如果不是,则允许的时候报异常.int.Parse()方法只能转字符串.Convert不再仅是内存级别的转换,而是考虑数据意义的转换。Convert是一个加工、改造的过程Convert.ToInt32(待转字符串);、Convert.ToString、每种类型都还有.ToString()方法.一切类型都可以转换成string类型练习练习,编程实现计算几天(如46天)是几周零几天.练习:编程实现107653秒是几天几小时几分钟几秒?修改上面的题目,让用户输入.7.6自动/强制转换与Parse()、Convert转换自动/强制转换是内存意义上的转换.Parse转换与Convert转换是数据意义的转换.Parse与Convert的区别Parse只能转换字符串类型的.Convert可以转换任意类型的.当他们都准换字符串的时候,Convert其实内部就是调用了Parse转换.只不
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 营养保健品生产流程质量控制考核试卷
- 跨境房产抵押贷款国际结算协议
- 教育培训机构师资共享与教育国际化合作协议
- 生态农业项目股权收益权投资与管理服务合同
- 直播平台主播直播数据共享合作协议
- 生物样本冷链运输与运输设备维护协议
- 知识产权评估与知识产权运营管理服务合同
- 证券公司后台综合管理劳务派遣合同
- 磁疗设备研发与市场推广及售后服务全面合作协议
- 拼多多平台特色品牌店代运营服务合同涵盖品牌合作与招商
- 浙江省宁波市镇海中学2025届高三下学期5月模拟语文试题(含答案)
- 2025年广东省汕尾市九年级数学中考二模试卷(含部分答案)
- 【沪科版】七年级数学下册第六章单元测试卷(一)含答案与解析
- 2025年(第一季度)电网工程设备材料信息参考价(加密)
- 广东省广州市2025届高三二模数学试卷(原卷版)
- 济南幼儿师范高等专科学校招聘笔试真题2024
- 2025全国保密教育线上培训考试试题库及答案
- 戒毒医疗常识考试试题及答案
- 院感感染培训试题及答案
- 生产经营单位事故隐患内部报告奖励制度
- 项目上市居间合同协议
评论
0/150
提交评论