.net基础1 变量 转义符 类型转换 运算符 选择结构

本文深入探讨.NET框架的广泛应用,涵盖桌面应用程序、互联网应用、手机开发、游戏与虚拟现实开发。解析.NET的特点、IL与CLR的概念,展示.NET在不同领域的实践案例,包括C#语言、代码执行过程、变量命名规范、类型转换与异常处理。同时,介绍了.NET在游戏开发中的应用,如Unity3D,并提供了实例代码。
摘要由CSDN通过智能技术生成

.net 能干什么?

桌面应用程序 winform 有些跟硬件结合去应用,如打卡系统

Internet应用程序 Asp.Net

手机开发WP8

Unity3D【跨平台的】 游戏开发或者虚拟现实(机会) Unity3D主推的脚本是C#, JavaScript也可以

 

IDE 注意版本问题,版本新增功能

 

对DotNet ?  DotNet Framework .Net 框架 作何理解? 理论二次,三次提炼

是微软构建的技术平台,可以在该平台上创建各种应用程序,是应用程序所需要的环境,应用程序可以在其上面运行。

 

.Net 特点?

多语言、跨平台、可扩展、快速高效稳定、多应用、VS.Net、MSDN(微软开发者网络)、

 

IL 含义作用?

.NET框架中中间语言Intermediate Language的缩写,

作用:一是可以实现平台无关性,既与特定CPU无关;二是只要把.NET框架某种语言编译成IL代码,就实现.NET框架中语言之间的交互操作

 

CLR 含义作用?

Common Lnguage Runtime 公共语言运行库,负责内存分配和垃圾收集,保证应用和底层之间必要的分离

 

CLS含义作用?

公共语言规范(Common Language Specification,CLS)和通用类型系统一起确保语言的互操作性

通用类型系统 (common type system)

C#官方文档地址

C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC#\Specifications\2052

代码执行过程

变量

变量开始以字母或下划线开头,不能以数字开头;变量后边可以跟任意字母、数字、下划线

命名规范

camel命名 首单词的首字母小字,后边每个单词首字母大写,多用于给变量命名;Pascal 要求每个单词的首字母都要大写,多用于给类或者方法命名

交换变量

            int numberOne = 10;
            int numberTwo = 15;
            Console.WriteLine("交换前的值为numberOne ={0}, numberTwo ={1}", numberOne, numberTwo);
            numberOne = numberOne - numberTwo;
            numberTwo = numberOne + numberTwo;
            numberOne = numberTwo - numberOne;
            Console.WriteLine("交换后的值为numberOne ={0}, numberTwo ={1}", numberOne, numberTwo);

 

 

 转义符

换行 \r\n: windows操作系统不认识\n,只认识\r\n

@符号

1、取消\在字符串中的转义作用,使其单纯的表示为一个'\'

2、将字符串按照编辑的原格式输出:字串换行输出

            string str = @"今天天气很好 
            我出去散步"; //\r\n在windows平台是换行
            File.WriteAllText(@"C:\Users\Administrator\Desktop\new.txt", str);
            double number = 10 * 1.0 / 3;
            Console.WriteLine("{0:0.000}", number); //保留三位小数

类型转换

类型兼容

小转大 自动转换

大转小 强制转换

类型不兼容时

用Convert转换  条件是看起来能转过去 比如"123" 转 123

 1             //输入一个天数,算出天数中包含几周几天
 2             int numberOfDays = 0;
 3             Console.WriteLine("请输入天数:");
 4             
 5             string inputDays = Console.ReadLine();
 6             numberOfDays = Convert.ToInt32(inputDays);
 7             
 8             int weeks = 0; 
 9             int days = 0;
10             weeks = numberOfDays/7;
11             days = numberOfDays%7;
12             Console.WriteLine("{0}天包括{1}周{2}天",numberOfDays,weeks,days);
13             
14             //实现107653秒是几天几小时几分钟几秒?1小时 = 60*60 = 3600秒;1天=24*3600 = 86400秒 1天24小时
15             
16             /* 第一种方法
17             int allSeconds = 107653;
18             days = allSeconds /86400;
19             int hours = (allSeconds - days*86400)/3600;
20             int minutes = (allSeconds-days*86400 - hours *3600)/60;
21             int seconds = allSeconds - days*86400 - hours *3600 - minutes*60;
22             */
23             
24             //第二种方法
25             Console.WriteLine("请输入秒数");
26             int seconds = Convert.ToInt32(Console.ReadLine());
27             days = seconds/86400;
28             seconds = seconds%86400;//计算剩余的秒数
29             int hours = seconds/3600;
30             seconds = seconds%3600; //计算剩余的秒数
31             int minutes = seconds/60;
32             seconds = seconds%60; //计算剩余的秒数
33             
34             Console.WriteLine("{0}是{1}天{2}小时{3}分钟{4}秒",seconds,days,hours,minutes,seconds);

运算符

 判断闰年

			Console.WriteLine("请输入年份:");
			int year = Convert.ToInt32(Console.ReadLine());
			if(year%400 == 0||(year%4==0&&year%100!=0))
			{
				Console.WriteLine("输入的年份{0}是闰年",year);
				
			}else {
				
				Console.WriteLine("输入的年份{0}不是闰年",year);
			}

异常捕获

try

{

  //可能会出现 异常的代码

     //如果try中的代码出现了异常,那怕这行出现异常的代码后面还有一百行都不会执行了,而是直接跳到catch中执行代码

     //......后边的代码不执行

}

catch

{

  //如果try 里边没出现异常,这里的代码则不执行,如果出现了异常,则执行这里的代码

}

比较三个数大小

 1 Console.WriteLine("请输入第一个数字:");
 2             int numberOne= Convert.ToInt32(Console.ReadLine());
 3             
 4             Console.WriteLine("请输入第二个数字:");
 5             int numberTwo =Convert.ToInt32( Console.ReadLine());
 6             
 7             Console.WriteLine("请输入第三个数学:");
 8             int numberThree =Convert.ToInt32(Console.ReadLine());
 9             
10             if(numberOne>numberTwo)
11             {
12                 if(numberOne>numberThree)
13                 {
14                     Console.WriteLine("1最大的数字是{0}",numberOne);
15                 }
16                 else
17                 {
18                     Console.WriteLine("2最大的数字是{0}",numberThree);
19                 }
20             }else //第一个数字小于第三个数字
21             {
22                 if(numberTwo>numberThree)
23                 {
24                     Console.WriteLine("3最大的数字是{0}",numberTwo);
25                 }
26                 else
27                 {
28                     Console.WriteLine("4最大的数字是{0}",numberThree);
29                 }
30             }

switch-case

if else-if一般用来处理多条件的【区间性】的判断。
而swtich-case一般用来处理多条件的定值判断。if else-if转成switch来实现,核心是把区间判断转成定值判断
    语法:
        switch(表达式或者变量的值)  1 "张三" 'c'
        {
            case 值1:要执行的代码;
            break;
            case 值2:要执行的代码;
            break;
            case 值3:要执行的代码;
            break;
            case 值4:要执行的代码;
            break;
            .......
            default:要执行的代码;
            break;
        }

    执行过程:程序运行到switch处,首先计算switch所带的小括号中的表达式或者变量的值,
    拿着计算出来的结果,去跟每个case后面所带的值进行匹配,一旦匹配成功,则执行该case
    所带的代码,执行完成后,遇到break,跳出switch-case结构。
    如果跟每个case所带的值都不匹配,则看当前switch-case是否存在default,如果有default,则
    执行default中的代码,如果没有,则跳出switch-case结构。
    default是可以省略的。
    需要注意的地方:
    1、break在switch-case中起到的作用是跳出switch-case结构,不可以省略。
    2、switch所带的小括号中计算出来的值的类型,必须跟case所带的值的类型一致。

 1             Console.WriteLine("请输入信息: ");
 2 
 3             int score = Convert.ToInt32(Console.ReadLine());
 4             switch (score / 10)
 5             {
 6                 case 9:
 7                     Console.WriteLine("A");
 8                     break;
 9                 case 8:
10                     Console.WriteLine("B");
11                     break;
12                 case 7:
13                     Console.WriteLine("C");
14                     break;
15                 case 6:
16                     Console.WriteLine("D");
17                     break;
18                 default:
19                     Console.WriteLine("输入有误,程序退出");
20                     break;
21             }

输入年份,月份,判断该月份的天数

 1 Console.WriteLine("请输入年份");
 2             try
 3             {
 4                 int year = Convert.ToInt32(Console.ReadLine());
 5                 Console.WriteLine("请输入月份");
 6                 try
 7                 {
 8                     int month = Convert.ToInt32(Console.ReadLine());
 9                     int day = 0;            
10                     
11                     if(month>=1&&month<=12)
12                     {
13                         switch(month){
14                             case 1:
15                             case 3:
16                             case 5:
17                             case 7:
18                             case 8:
19                             case 10:
20                             case 12:                
21                             day = 31;
22                             break;
23                             
24                             case 4:
25                             case 6:
26                             case 9:
27                             case 11:
28                             day = 30;
29                             break;
30                             
31                             case 2:
32                             if(year%400==0||(year%4==0&&year%100!=0))
33                             {
34                                 day = 29;
35                             }
36                             else{
37                                 day = 28;
38                             }
39                             break;
40                             
41                             default:
42                             Console.WriteLine("输入有误,程序退出");
43                             break;
44                         }    
45                         Console.WriteLine("{0}年{1}月有{2}天",year,month,day);
46                     }
47                     else{
48                         Console.WriteLine("月份不在正确的范围1-12内,程序退出!!!");
49                         
50                     }
51                 }//try月份的结尾
52                 catch{
53                     Console.WriteLine("输入月份有误,程序退出");
54                 }
55             }//try年份的结尾
56             catch{
57                 Console.WriteLine("输入的年份有误,程序退出。");
58             }

输入班级人数,依次输入成绩,计算学生平均成绩和总成绩

 1 //循环体:输入成绩
 2             //循环条件:输入的学生成绩的数量小于学生人数
 3             //break: 跳出switch case 结构;跳出while if for 等结构
 4             
 5             int studentNumber = 0;
 6             while(true)
 7             {
 8                 try
 9                 {
10                     studentNumber = Convert.ToInt32(Console.ReadLine());
11                     break;
12                 }
13                 catch
14                 {
15                     Console.WriteLine("输入的格式有误,请重新输入学生人数");
16                 }
17             }
18             int i = 1;
19             double sumScore = 0;
20             int studentScore =0;
21             
22             Console.WriteLine("学生人数为{0}",studentNumber);
23             while(i<=studentNumber)
24             {
25                 Console.WriteLine("请输入第{0}个学生的成绩",i);
26                 studentScore = Convert.ToInt32(Console.ReadLine());
27                 
28                 sumScore+=(double)studentScore;
29                 i++;
30             }
31             Console.WriteLine("{0}个学生的总成绩为{1},平均成绩为{2}",studentNumber,sumScore,sumScore/studentNumber);

 

转载于:https://www.cnblogs.com/focusdata/p/5293675.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值