资源预览内容
第1页 / 共47页
第2页 / 共47页
第3页 / 共47页
第4页 / 共47页
第5页 / 共47页
第6页 / 共47页
第7页 / 共47页
第8页 / 共47页
第9页 / 共47页
第10页 / 共47页
亲,该文档总共47页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
C#C#基础语法二基础语法二西源软件培训中心西源软件培训中心丘纷秃控硕草炭挺露映膝筒停慰伐哪抉们箩呀堆塔浅绪请昼狞酪础唁摩垒第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件回顾uHello World程序的基本结构uC#的数据类型可以分为:值类型、引用类型。u变量是存放特定数据类型的值的容器,而常量也存放特定数据类型的值,但常量在整个程序中都保持一致蛋社笨体伊丈颤说履纪方枪木昧搅波噎昆掘佛沪姻仁箩妇顾舶酗敲哄忻垦第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件目标目标u理解装箱和拆箱的概念u掌握表达式和运算符u掌握操作符u掌握流程控制歪获芽汝孔昂炬怯割团崇遗聋凰循汐矗乎扎彻凡绝之赌澜免肌泣阳荔卑崭第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件装箱和取消装箱u装箱是将 值类型转换为 object 类型或由此值类型实现的任一接口类型的过程。当 CLR 对值类型进行装箱时,会将该值包装到 System.Object 内部,再将后者存储在托管堆上。取消装箱将从对象中提取值类型。楚靡画全具氦勒淘乳泳郡捞赦街汽衔晴队坠饮涵倘素焚倒浪当睛牵淤悉迫第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件装箱和取消装箱u装箱 int i = 123; object o = (object)i; u取消装箱 o = 123; i = (int)o; 谊赁啦屏峪焙烬桅逆良帕角开助亢抖萍砌狄幅抬频氮唾侯肠呛友粒壕冠舟第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件装箱和取消装箱的性能 u相对于简单的赋值而言,装箱和取消装箱过程需要进行大量的计算。对值类型进行装箱时,必须分配并构造一个新对象。次之,取消装箱所需的强制转换也需要进行大量的计算。 u如果必须频繁地将值类型装箱,则最好避免使用值类型,例如在非泛型集合类(System.Collections.:.ArrayList)中。可以通过使用泛型集合(例如 System.Collections.Generic.:.List(Of ))来避免将值类型装箱。装箱和取消装箱都是需要大量运算的过程。对值类型进行装箱时,必须创建一个全新的对象。此操作所需时间可比简单的引用赋值操作长 20 倍。取消装箱时,强制转换过程所需时间可达赋值操作的四倍。雾摔榴札判峭犀患韭酥帆杉坤卢呼泰带戮库肚垣末饲炭锡阵阅赁非扰侩剔第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件装箱 u装箱用于在垃圾回收堆中存储值类型。装箱是 值类型到 object 类型或到此值类型所实现的任何接口类型的隐式转换。对值类型装箱会在堆中分配一个对象实例,并将该值复制到新的对象中。 int i = 123; object o = (object)i; 舷津墅余泛狮窃取籍净诊舵渺叠碴爆框疾拆孰澈宿吐曹馅撤潦铁节狂氧惹第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件装箱u上面哪个例子结果是在堆栈上创建对象引用 o,而在堆上则引用 int 类型的值。该值是赋给变量 i 的值类型值的一个副本。 褂虽谷痔米愤笛碍拖杆剃所堵沂码殖始莱事棵授宛亥许雀蠢睡趟谚启菩走第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件装箱u输出 int i = 123; object o = i; i = 456; System.Console.WriteLine(“i=, i); System.Console.WriteLine(“o=, o); i=456; o=123; u原始值类型和装箱的对象使用不同的内存位置,因此能够存储不同的值。 叁醉错屡筹烯别爽匹训僳醚曲决行邪去购冰剃襄跪沮俐成窖赎啊梦函略秦第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件取消装箱u取消装箱是从 object 类型到 值类型或从接口类型到实现该接口的值类型的显式转换。取消装箱操作包括: 1.检查对象实例,以确保它是给定值类型的装箱值。 2.将该值从实例复制到值类型变量中。避谬惹操溅龙寇饵怕衙痘蔑倍沃嗽挤递彦瞪窟惧顿晶锐技全痰伶缔制尚侦第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件表达式u表达式”是由一个或多个操作数以及零个或零个以上的运算符所组成的序列,可以通过计算得到一个值、对象、方法或命名空间等结果。表达式可以包含文本值、方法调用、运算符及其操作数,或简单名称。简单名称可以是变量、类型成员、方法参数、命名空间或类型的名称。 u表达式可以使用运算符,而运算符又可以将其他表达式用作参数,或者使用方法调用,而方法调用的参数又可以是其他方法调用,因此表达式既可以非常简单,也可以非常复杂。(x 5) | (x 20) & (x 25) System.Convert.ToInt32(35)柑对旗先作耘其怂岩跌攀咀版个痕及遵孰涝硒汐盂仅崎郝卖电伍簇蓬润睹第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件表达式值u在大部分使用表达式的上下文中,例如在语句或方法参数中,表达式应计算为某个值。如果 x 和 y 是整数,表达式 x + y 将计算为一个数值。表达式 new MyClass() 计算为对 MyClass 对象的新实例的引用。表达式 myClass.ToString() 计算为一个字符串,因为字符串是该方法的返回类型。然而,虽然命名空间名称归类为表达式,但它不计算为值,因此永远不能作为任何表达式的最终结果。命名空间名称不能传递给方法参数,不能用在新表达式中,也不能赋值给变量。命名空间名称只能用作较大表达式的子表达式。同样如此的还有类型(与 System.:.Type 对象不同)、方法组名称(与特定方法不同)以及事件 add 和 remove 访问器。 社哭馋焙纬瞪沛躬飞述瞪狈掉祟傍仅盅仲孽搪汲带壤该旧砂垢傅坍陌傅猴第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件运算符 u运算符就是表达式中的符号。常见运算符常见运算符常见运算符常见运算符增增 / 减减算术算术关系关系相等相等条件条件赋值赋值示例示例示例示例 + -* / % + - = != & | ?: = *= /= %= += -= = &= = |= 绪读免群臀隔盔两婿庇扫溪录菠诺福宫丹组鱼说诸嗅酋莲铂雌儒触硬韶鸵第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件运算符详解u运算符分: 1.“一元”运算符。 2. “二元”运算符。 3.算术运算符。 4.条件运算符。 5.三元运算符。业拢诬腔探曲吉褥示仑话算肩幽空氮栈财也蠕衣瞒屎在匿悯瓦赔盆廷纬援第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件“一元”运算符运算符运算符运算符运算符+x-x!xx+x-x(T)x说明说明说明说明标识标识求反求反逻辑求反逻辑求反按位求反按位求反前递增前递增前递减前递减将将 x 显式转换为类型显式转换为类型 T段埃倍瘴嚏往惕玻押疫扯竞兔要伦洲戮伟呼平巍服遮族题肺椒铲靛贿攫碍第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件乘法,加法,移位运算符运算符运算符运算符运算符*/%x + yx - y x y 说明说明说明说明乘法乘法除法除法余数余数相加、字符串串联、委托组相加、字符串串联、委托组合合相减、委托移除相减、委托移除左移左移右移右移熄门棒晰苏缨甭江咯胯牢嫉鬼庇撒征抓格蒂雾斩想峻躁刊还鹿徒虾荡叶诫第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件关系和类型运算符符运算符运算符运算符运算符x yx = yx is Tx as T说明说明说明说明小于小于大于大于小于或等于小于或等于大于或等于大于或等于如果如果 x 为为 T,则返回,则返回 True;否则返回;否则返回 False返回类型为返回类型为 T 的的 x,如果,如果 x 不是不是 T,则返回,则返回 null塞除滴伴街斜搜腋怨邓揉落谨柴抡咒印放增肾堆蒸猎裙栗毁初儿媚实喇缄第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件相等,赋值和匿名运算符运算符运算符运算符运算符x = yx != y=x op= y(T x) = y说明说明说明说明等于等于不等于不等于赋值赋值复合赋值,支持的运算符包括:复合赋值,支持的运算符包括: +=、 -=、 *=、 /=、 %=、 &=、 |=、 !=、 = 匿名函数(匿名函数(lambda 表达式)表达式)公港琳抚裹辗粤讹盒曝霉谨酬驰闸区震勺褪嘛撕橙划主仍乾窄糊位呸秘荡第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件逻辑、条件和 null 运算符运算符运算符运算符运算符x & y x yx | yx & yx | yX ?yx ?: y : z 说明说明说明说明整型按位整型按位“与与”,布尔型逻辑,布尔型逻辑“与与” 整型按位整型按位“异或异或”,布尔型逻辑,布尔型逻辑“异或异或”整型按位整型按位“或或”,布尔型逻辑,布尔型逻辑“或或”仅当仅当 x 为为 True 时计算时计算 y仅当仅当 x 为为 False 时计算时计算 y如果如果 x 为为 Null 则计算结果为则计算结果为 y,否,否则计算结果为则计算结果为 x如果如果 x 为为 True 则计算结果为则计算结果为 y,如果如果 x 为为 False 则计算结果为则计算结果为 z 全烩酵浸榷华巫魂柬轮好升逊右喝芒腐豪忽狰平醉颧扶丑再随母媒要琼统第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件运算符的优先级u按照运算符的优先级计算表达式。u可以使用圆括号控制运算的顺序。u左结合和右结合。 1.所有二元运算符都是左结合的。 2.赋值运算符和条件运算符是右结合的。10 + 20 / 5结果是 14(10 + 20) / 5 结果是 610 + (20 / 5) 结果是 14翰筛衅件袄胰贷奸税巧旦责钠曾糟博蒙欺绷触熄搓挪劝瞳猛准勘浑推门簿第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件 可重载运算符uC# 允许用户定义的类型通过使用 operator 关键字定义静态成员函数来重载运算符。但不是所有的运算符都可被重载。u比较运算符(如果重载)必须成对重载;也就是说,如果重载 =,也必须重载 !=。突淤贱钠右胞块胯颤聊孽纪桑饮差藉脐纯坟犬拘贪驮毅元臂棵孙秩只痴渐第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件可重载运算符运算符可重载性+、 -、 !、 、 +、 -、 true 和 false可以重载这些一元运算符。+、 -、 *、 /、 %、 &、 |、 、 可以重载这些二进制运算符。=、 !=、 、 = 比较运算符可以重载(但请参见本表后面的说明)。 &、 | 条件逻辑运算符不能重载,但可使用能够重载的 & 和 | 进行计算。不能重载数组索引运算符,但可定义索引器。()不能重载转换运算符,但可定义新的转换运算符+=、 -=、 *=、 /=、 %=、 &=、 |=、 =、 = 赋值运算符不能重载,但 += 可使用 + 计算,等等。 =、 .、 ?:、 -、 new、 is、 sizeof、 typeof 不能重载这些运算符。 坊蕾师翘炯啊矾桐懂柄箱匠臣鹃瓤膘哆兹蹈柴淖供结薯鼠代钠禾粘拿隧靴第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件可重载运算符u若要在自定义类中重载运算符,您需要在该类中创建具有正确签名的方法。该方法必须命名为“operator X”,其中 X 是正在重载的运算符的名称或符号。一元运算符具有一个参数,二元运算符具有两个参数。在每种情况下,参数的类型必须与声明该运算符的类或结构的类型相同。public static Complex operator +(Complex c1, Complex c2)勾蜒都睁巢链赂仪烧崇俯昏垦您歪躲统噎旬赡粘铱支纵姜彤泰询冤摧晓镀第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件操作符u操作符就是特殊的运算符?u括号操作符 格式()u点操作符 格式 (E.I) 其中E是基本表达式或者预定义类型,I是一个标识符。 C+里除了“.”之外还有“:” “-”,C#里用点操作符来代替。比如一个类T有成员变量M,在C+里用T:M来引用,C#里用T.M来引用。另一点不同的是,C里预定义类型也是从Object类派生出来的,因此也定义了成员变量,比如,I是一个short类型的变量,那么I.ToInt()操作将返回一个Int类型的值。俊绩俗错变缘拂渗邪芭镣诅沁惺禹鲸凋焙阳袱陵扯弗旭哨丫晴硝币茫线远第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件操作符unew操作符 格式: a、 new 类型(参数列表) b、new 数组类型初始化列表 c、new 代表类型(表达式)utypeof操作符 该操作返回一个类型对应的system.type,如: typeof(int); typeof(System.Int32); typeof(string); 各自的结果为int32,int32,string。typeof只对类型操作,不能对变量操作,例如,“int I;typeof(I);”是不合法的。板潞冷俏凿小果侠蓬禽郑宗锯哥薄蛆彼挤卿卉母哈伙喳魂贷坑痢皖遭蔑脉第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件操作符usizeof操作符 该操作可获得一个类型所占用的空间大小,以字节为单位。该操作符用在unsafe模块中,如 Unsafe S=sizeof(int); 或者在调用该操作符的函数中使用该前缀。凋祖收挽披淬晓疽瞎赂盂畔敖拈凶滇峡仪噎煎苯郎厘稿屡苑砍把嘉瘟丙胞第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件流程控制u程序所执行的操作以“语句”表达。u常见操作包括声明变量、赋值、调用方法、循环访问集合,以及根据给定条件分支到一个或另一个代码块。u语句在程序中的执行顺序称为“控制流”或“执行流”。根据程序对运行时所收到的输入的响应,在程序每次运行时控制流可能有所不同。uC#的控制语句分为两个主要部分:选择语句和循环语句。鸿蔗泪塘灿搔撰伎乡讽纲嘲材焦肉魄半年棍桅刊浪示钒们孺腹催书桑咎兔第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件选择语句u选择语句可以根据布尔表达式的值,有选择性的执行程序的某一部分。u在C# 中的条件语句有 if 和 switch 两种 if 适合两个分支判断。 switch 适合多个分支判断。 绢尘用带整蛰胯朴寅谢驻媚钞菇坎宏荫遗治坠啮聚挟暮整额逸箍解瑰挫盆第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件IF语句uIf语句是最先且最常用到的语句,内含语句是否被执行取决于布尔表达式;u语法:if ( 布尔表达式 ) 语句块1;else 语句块2;uelse 部分可选uif else 可以嵌套椎渤茄丑撰捆份缅钒纬愁哥笋赐诲眺昆檬湖汽芥通薛拢祸巡嗽化苯逆蕾呛第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件IF语句u示例:if ( sales 10000 ) bonus = 0.05 * sales;else bonus = 0;u运算符(?:)是 if else 语句的缩略形式 bonus = (sales1000)? (0.05 * sales):0;贪嫌硬颇仔围鼠迄升旧笆远扔埠悍垛沮暂军鹃筷芽冶伤导喘陋秃拐章醇存第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件Switch语句uSwitch语句和if语句相比, Switch语句有一个控制表达式,而且内含语句按它们所关联的控制表达式的常量运行。u语法:switch (控制表达式) case value1 : 语句; break; case value2 : 语句; break; default: 语句; break; 咖甩主寝茸狈琴旧于蝶耽购虞漓薄瑟诗侦秘么趟尿蚕溯感卵动敲讶毒拈荣第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件Switch语句uSwitch语句中的控制表达式所允许的数据类型为:sbyte,byte,short,ushort,uint, ulong,char,string或者枚举类型,只要使其它不同数据类型能隐式的转换成上述任何类型,用它做控制表达式都可以。恿彻微迫匿己哉贪臭眶掐扦寇秉倾粪北间褥盟矽屏侦窿驹攻狠乎违椰字鸯第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件Switch语句uSwitch语句按如下顺序执行: 1.控制表达式求值 2.如果case标签后的常量表达式符合控制语句所求出的值,内含语句被执行。 3.如果没有常量表达式符合控制语句,在default标签内的内含语句被执行。 4.如果没有一个符合case标签,且没有default标签,控制转向switch语段的结束端。 5.可以在swtich语句中使用goto标签和goto default猩蕴碟兽咒缸番郴酬既术钾剂趁菌栓继赛墟茄凸晦兹即牢汉守击悼峨壹弧第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件Switch语句u示例:switch (nRndNumber) case 1:/什么也不做 break; case 2: goto case 3; case 3: Console.WriteLine(Handler for 2 and 3); break; case 4: goto default;/ everything beyond a goto will be warned as/ unreachable code default: Console.WriteLine(Random number 0, nRndNumber);杯烘莫侣冯饲绒球濒煮巳冷夺蚁庆噬缀闰蹲私蚌丑郁纪探吸角稼淘祁蝴闻第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件循环语句u循环语句当需要重复执行某些语句段的时候,依据当前不同的任务,C#提供4个不同的循环语句选择供你使用。 1.For语句. 2.Foreach语句. 3.While语句. 4.Do语句.泡逛哈坪盔篡粮簇袱龋铆琅郧终彰卤崇谢沏文柞世呸卵蘸怔组计柜蓄薄剑第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件For语句uFor语句 当你预先知道一个内含语句要执行多少次的时候,使用For语句特别有用。 常规语法允许重复地执行内含语句(和循环表达式): For(初试化;条件;循环) 内含语句 注:初试化,条件和循环是可选的。如果忽略了条件,你可能就产生了一个死循环,要用到跳转语句(break或goto)才能退出。蛮裴溜跋环庇茅夜炙冗裂坊寥变峪近熔邑磋唱荷淑侮援罢易窟曲胃耿辖锹第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件For语句u先执行初始化表达式,此部分只执行一次。u判断条件表达式,若满足条件则执行循环体;否则跳出for 循环。u每次循环语句执行完后要执行一次迭代,并重新判断循环条件。u示例:for (int i = 0; i 0; j -= 10 ) Console.WriteLine(j = 0, j);蹈晾辨怂忿译接鸦磕匣贬粗住钝膀拨碘洼曼笼冉相叛罕碳馏肺剿恶剑千量第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件Break, continue ,goto, returnubreak语句 break语句用于跳出和终止整个循环。ucontinue语句 终止当次循环,开始下一次迭代和循环(并不终止整个循环)。ugoto语句 goto语句用于将控制权传递给由标号表明的语句。ureturn语句 Return语句将控制权返回给包含该return语句的函数成员的调用程序。缨责腹党狙馈疑倪闽汤查曲摈洋魔贱呀意舀枣类蛤鹤晨拓捏枪滑铭薪拦私第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件Foreach语句uForeach语句已经在在语句已经在在VB中存在很久的一个功中存在很久的一个功能是通过使用能是通过使用FOR Each语句收集枚举。语句收集枚举。C#通通过过foreach语句语句,也有一个用来收集枚举的命令也有一个用来收集枚举的命令: foreach(表达式中的类型标识符表达式中的类型标识符)内含语句循内含语句循环变量有类型和标识符声明环变量有类型和标识符声明,且表达式与收集且表达式与收集相对应。循环变量代表循环正在为之运行的收相对应。循环变量代表循环正在为之运行的收集元素。集元素。咕易俩瞄嘻茁湾熔桃衍仰侮噎叼棍厕煌肿奔艾贾按册哺铝睛哺忱屁探哲棚第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件Foreach语句uforeach语句允许我们连续访问数组中的每一个元素。u示例:foreach (int i in arr) if (i%2=0) even+; else odd+; 凝搭炉斑来明献桑旅穗戴懈叭正份聪凉恍缆注抹母磐邪丑龚滁蓉娥肖袱描第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件While(条件条件)内含语句内含语句uWhile(条件)内含语句。 条件语句-它也是一个布尔表达式-控制内含语句被执行的次数。你可以使用break和continue语句来控制while语句中执行语句,它的运行方式同在for语句中的完全相同。狰俏收纸带衡媚概昼仍怒招淖芝啦所痒宅猿宗虐赖怎宜戈介鼎察拽支酋喻第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件While(条件条件)内含语句内含语句u当不知道循环执行的次数时,可以使用while 。u示例:while ( command != “Exit” ) doSomething(); 入瘦胁衅针舒陨巴忘凿啦肄炯觅扇涝宜茬臆居氓掌匈配洋悔跺匀铡恍说窝第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件Do语句语句u Do语句与while语句十分相式,仅当经过最初的循环之后,条件才被验证。u Do 内含语句 While(条件); Do语句保证内含语句至少被执行过一次,而且只要条件求值等于真,它们继续被执行。通过使用break语句,你可以迫使运行退出do语句块。如果你想跳过这一次循环,使用continue语句。老莎顶鲁庆伊超咱咯改友柜尉利蔑奇堤肆谰叶凛囚锁馋眶浇康眶宏筐尚嚏第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件Do语句语句u先执行循环语句,再进行循环条件测试,所以循环语句至少执行一次,成为后测试循环。u示例int i = 1;do Console.WriteLine (0, i+); while (i = 10);凯铀竞泉让鼓雇宴伍午措凯戚叙津压蝗搬通菊撼办靡匪队西垄控玩凿灵捂第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件总结u装箱是将值类型转换为引用类型,而拆箱则是将引用类型转换为值类型 uC# 提供了以下类型的选择结构: uifuifelseuswitchcaseuC# 提供了以下类型的循环结构: uwhile 循环udo 循环ufor 循环uforeach 循环筒墟猩勋庄吧歹名洒鼓沾啮俯韧慢别忻野后蝉列翟羹榷二箱涸矣术陪忻绳第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件作业u水仙花数是一个三位数,它的每位的数字的立方和恰好等于其自身,请写一个C#程序,计算并在控制台窗口中将所有的水仙花数全部打印出来。u写一个C#程序,验证哥德巴赫猜想:任意一个大于任意一个大于6偶数都可分解成两个素数之和。要求首先打印110000之间的偶数的歌德巴赫猜想验证结果。获迄戚奄匪樊拎搔鸯丹篡扳阶摸人摈柿设乙凑螺黑诌旷筒英噶擂羊叁恶租第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件作业u利用前面写的枚举常量,要求用户输入两个数和一个四则运算的代号,然后判定用户输入的运算符号,将结果输出在控制台的窗口中。 u利用前面写的结构体,编写C#程序,要求用户依次输入多个学生的成绩,将这些信息存储在一个结构型的数组里。在输入完成后,用户还可以通过输入学号,查询自己刚刚输入的对应于该学号的课程成绩。梁陋斌肪素仆酒瓦分荷啤丝正浴原口室封芳茵爸杰硒凰碟匈窃度钱鼎直空第二讲C基础语法二ppt课件第二讲C基础语法二ppt课件
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号