三、C# 变量、常量数据类型

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

1、变量操作

在这里插入图片描述

在这里插入图片描述

1.2 变量声明、赋值

要在计算机中存一个数字50需要两句话
声明变量的语法格式: 数据类型 变量名 (int a; )
赋值: 变量名=值; (a=50;)
数据有整型(int) 小数(double)字符串(string)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 变量
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("学习变量的存储");
            int a;
            a = 50;                //int为整型变量,不能赋值小数 a=3.14是错误的
            Console.WriteLine(a);

            Console.ReadKey();
            double b;               //声明double类型数据
            b = 3.14;              // 给double类型变量赋值
            Console.WriteLine(b);
            Console.ReadKey();
            double d;
            d = 10;
            Console.WriteLine(d); 
            Console.ReadKey();

            String c = "This is a string";   //声明同时赋值
            Console.WriteLine(c);
            Console.ReadKey();

            //一次声明多个相同类型的变量,用逗号分割
            string aa="Hello ", bb = "The ", cc = "World";
            Console.WriteLine(aa + bb + cc);
            Console.ReadKey();


        }
    }
}

1.3 赋值运算符和赋值表达式

赋值运算符“=”
变量可以重复赋值,一旦给一个变量赋了新值,那么变量中的老值就不复存在了

1.4变量命名规则

  • 必须以“字母” 下划线或@符号开头,不要以数字开头
  • 后面可以跟任意“字母”,数字,下划线;
  • 注意:
    你起的变量名不要与c#系统中的关键字重复。
    在c#中,大小写是敏感的
    同一个便令名不允许重复定义(先这么认为,不严谨)
    定义变量时,变量名要有意义
    如果使用英文单词的缩写,全部用大写!

2 常量

常量是指在程序运行中不能改变的数据,定义一个常量与定义一个变量过程类似,只是多加一个关键词const
定义格式: const 数据类型 常量名称=常量值
注意一定要给常量赋值赋值后不能改变

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace changliang
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("学习常量的存储");
            double r = 5;
            const Double pi = 3.14;          //定义常量
            Console.WriteLine("圆的周长是" + 2 * pi * r);
            Console.WriteLine("圆的面积是" + pi * r*r);
            Console.ReadKey();


            

        }
    }
}

2.2 变量常量作用域

一般确定作用域有一下规则:
局部变量存在于声明该变量的块语句或方法的大括号内,例如for while foreach等训话语句声明的变量,只作用于该循环体内。
总之变量的作用域为包含它的大括号内

2.3 @作用

  • 或略转义字符,例如 string filename=“d:\csharp\text.txt”, 使用@后 string filename=@“d:\csharp\text.txt”
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace changliang
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("学习常量的存储");
            double r = 5;
            const Double pi = 3.14;          //定义常量
            Console.WriteLine("圆的周长是" + 2 * pi * r);
            Console.WriteLine("圆的面积是" + pi * r*r);
            Console.Write("输出完此行后换行吗?");
            Console.Write("输出完上面语句后不换行");
            Console.WriteLine();
            Console.Write("输出完此行后换行吗?\n");
            Console.Write("输出完上面语句后换行\n");
            Console.WriteLine();
            Console.Write(@"输出完此行后换行吗?\n");      //使用@后,避免转义字符,将会原样输出
            Console.Write("输出完上面语句后不换行");
            Console.ReadKey();


            

        }
    }
}

  • 让字符串跨行,有时候
    在这里插入图片描述
  • 在标识符中的用法
    C#是不允许关键字作为标识符(类名,变量名,方法名,空间名等)使用的,但如果加上@之后就可以了@namespace @class

3 数据类型之值类型

3.1数据类型

  • 数据类型是标识具有多种相同特征的一组数据
  • C#预定义的数据类型包括两组值类型,应用类型
  • 值类型时在栈中操作,而引用类型则在堆中分配储存单元
  • 从字面上理解就是直接保存其值,如int(整型)就属于值类型,如果声明了一个整型变量,并给他富裕另一个整型变量的值,则在内存事先复制一个整型变量的值,然后将其赋予刚声明的整型变量,这时内存中就会有两个整型值。
  • 引用类型的变量在内容中是直接保存其值的引用。C#语言中大多数负责数据类型都是引用类型,例如类就是引用类型。

3.2 理解内存原理

内存可以分为三大块:堆、栈、静态存储区(只能存储静态成员)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4 数据类型之引用类型

在这里插入图片描述

console.ReadLine()及Console.WriteLine();

console.ReadLine() :用于接收用户的输入,要定义一个字符串变量来接收储存用户输入值
Console.WriteLine() 双引号内中的内容可原样输出,但是转义字符及索引号{i}除外,索引号必须从零,不间断地顺延
练习:问用户喜欢吃什么水果,加入用户输入苹果,则显示“哈哈这么巧,我也喜欢吃苹果”

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace changliang
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("请输入您喜欢的水果");
            String friut;
            friut = Console.ReadLine();
            Console.WriteLine("这么巧,我也喜欢吃"+friut);
            Console.Read();           

        }
    }
}

练习2:请用户输入姓名、性别、年龄,当用户按下某个键后,在屏幕上显示:“您好:XX您的年龄是XX是个x生”

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace changliang
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("请输入您的姓名");
            String name;
            name = Console.ReadLine();
            Console.WriteLine("请输入您的年龄");
            String age = Console.ReadLine(); //用户与接收用户输入,输入类型默认为字符串string类型
            Console.WriteLine("请输入您的性别");
            String sex = Console.ReadLine();
            Console.WriteLine("您好:"+name+",您的年龄是"+age+"是个"+sex+"生");
            Console.WriteLine("您好:{0},您的年龄是{1}是个{2}生",name,age,sex);
            Console.Read();           

        }
    }
}

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值