C#学习之旅--Day02-占位符-运算符-数据类型转换-选择语句

一、占位符

1、对字符串中占位

使用string.Format,"",即可实现

string gunName = "AK47";
string neCapacity = "30";
string str = string.Format("枪的名称为:{0},容量为:{1}", gunName, neCapacity);
Console.WriteLine(str);

2、{0:c}显示货币10.00

Console.WriteLine("金额:{0:c}", 10);

3、{0:d2}不足两位用0填充

Console.WriteLine("{0:d2}", 5);

4、{0:f1}根据指定精度显示

Console.WriteLine("{0:f1}", 1.23);

5、{0:p}百分数显示 {0:p0}百分数中保留整数

Console.WriteLine("金额:{0:p}", 0.1);

7、转意符

Console.WriteLine("我爱\"unity\"");
char c1 = '\'';
char c2 = '\0';//空字符
Console.WriteLine("你好\r\n我是隔壁\t老秦");//\r\n换行 \t水平制表格

二、运算符

1、算数运算符

int n1 = 5, n2 = 2;
int r1 = n1 / n2; //截断删除,结果为2
int r2 = n2 % n1;//取模(余数)
//获取个位
int r4 = n1 % 10;

string s1 = "5", s2 = "2";
string r5 = s1 + s2;

2、比较运算符> < >= <= == !=

bool r6 = n1 > n2;
bool r7 = s1 == s2;

3、逻辑运算符 看关系&& 与;||或;!非

bool r8 = true && false;//假

bool r9 = true && false;//真

bool r10 = !true;

①短路逻辑(对于&&第一个为false就不判断第二个)

int n8 = 1, n9 = 2;
bool re1 = n8 > n9 && n8++>1;
Console.WriteLine(n8);//结果为1

②短路逻辑(对于||第一个为true就不判断第二个)

bool re2 = n8 < n9 || n9++ > 1;
Console.WriteLine(n9);//结果为2

4、快捷运算符+= *= /= %=

自身加减乘除取余

5、一元运算符++ --

①对于【下一条指令】,无论先加后加,都是自增后的值

int number01 = 1;
number01++;
Console.WriteLine(number01);

int number02 = 1;
++number02;
Console.WriteLine(number02);

②后加加--》后自增--》先返回值

int number03 = 1;
Console.WriteLine(number03++);//1 自增以前
Console.WriteLine(number03);//2 对于下一条指令就不影响了

③先加加--》先自增--》后返回值

int number04 = 1;
Console.WriteLine(++number04);//2 自增以后

6、三元运算符

数据类型 变量名 = 条件? 满足条件结果:不满足条件结果

string str01 = 1 > 2 ? "ok" : "no";

三、数据类型转换

1、string"18"-->int 18

string strNumber = "18";
int num01 = int.Parse(strNumber);
float num02 = float.Parse(strNumber);

2、任意类型转为string

int number = 18;
string str = number.ToString();

3、隐式转换(小空间到大空间)

byte b3 = 100;
int i3 = b3;

4、显式转换(大空间到小空间)

int i4 = 100;
byte b4 = (byte)i4;

5、练习(将用户输入的四位数每位相加得到结果)

方法一

Console.WriteLine("请输入四位整数:");
string strNumber = Console.ReadLine();
int number = int.Parse(strNumber);
int result = number % 10;
result += number / 10 % 10;
result += number / 100 % 10;
result += number / 1000 % 10;
Console.WriteLine("结果为:"+result);

方法二

Console.WriteLine("请输入四位整数:");
string strNumber = Console.ReadLine();
int reuslt2 = int.Parse(strNumber[0].ToString());
reuslt2 += int.Parse(strNumber[1].ToString());
reuslt2 += int.Parse(strNumber[2].ToString());
reuslt2 += int.Parse(strNumber[3].ToString());
Console.WriteLine("结果为:" + reuslt2);

四、选择语句

1、if;else if;else

Console.WriteLine("请输入性别:");
string sex = Console.ReadLine();
//如果
if (sex == "男")
{
    Console.WriteLine("您好,先生!");
}
else if(sex == "女")
{
    Console.WriteLine("您好,女士!");
}
else
{
    Console.WriteLine("性别未知");
}

2、switch case

只能判断switch括号内确切的值进行操作。

switch (op)
{
    case "+":
        result = numberone + numbertwo;
        break;
    case "-":
        result = numberone - numbertwo;
        break;
    case "*":
        result = numberone * numbertwo;
        break;
    case "/":
        result = numberone / numbertwo;
        break;
    default:
        result = 0; 
        break;  
}

3、练习(根据用户输入的两个数字以及运算符号进行相应运算)

//运算
#region
//获取数据
Console.WriteLine("请输入第一个数字:");
float numberone = float.Parse(Console.ReadLine());

Console.WriteLine("请输入第二个数字:");
float numbertwo = float.Parse(Console.ReadLine());

Console.WriteLine("请输入运算符:");
string op = Console.ReadLine();

//逻辑处理
float result;

//方法一
if (op == "+") result = numberone + numbertwo;
else if (op == "-") result = numberone - numbertwo;
else if (op == "*") result = numberone * numbertwo;
else if (op == "/") result = numberone / numbertwo;
else result = 0;

//方法二
switch (op)
{
    case "+":
        result = numberone + numbertwo;
        break;
    case "-":
        result = numberone - numbertwo;
        break;
    case "*":
        result = numberone * numbertwo;
        break;
    case "/":
        result = numberone / numbertwo;
        break;
    default:
        result = 0; 
        break;  
}

//结果显示
if (op == "+" || op == "-" || op == "*" || op == "/")
    Console.WriteLine("结果为:" + result);
else
    Console.WriteLine("运算符有误");

4、练习(根据用户输入成绩进行五级制判断)

Console.WriteLine("请输入你的成绩:");
int score = int.Parse(Console.ReadLine());

string message;
if (score < 0 || score > 100)
    message = "成绩有误";
else if (score >= 90)
    message = "优秀";
else if (score >= 80)
    message = "良好";
else if (score >= 60)
    message = "及格";
else message = "不及格";

Console.WriteLine(message);

5、练习(根据用户输入月份返回天数)

Console.WriteLine("请输入月份:");
int month = int.Parse(Console.ReadLine());\

int day;
if(month>=1 && month <= 1)
{
    switch (month)
    {
        case 2:
            day = 28; break;
        case 4:
        case 6:
        case 9:
        case 11:
            day = 30; break;
        default:
            day = 31; break;
    }
}
else
{
    day = 0;
}
Console.WriteLine("{0}月具有{1}天",month, day);

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秦果

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值