C# 数据类型 语句
一、数据类型
基本数据类型:整型(short,long,int,byle),浮点型(float,double,decimal),bool
引用类型:string,datetime,struct。。。
类类型:object
接口类型:interface
数组类型:int[].....
二、运算符优先级
算数>关系>逻辑>条件运算符>赋值
三、语句
1、选择语句(if else switch case)
If例题:超市收银
struct chaoshi
{
public double jg;
public string name;
public int sl;
}
static void Main(string[] args)
{
ArrayList al = new ArrayList();
chaoshi p= new chaoshi(); //初始化结构体
Console.WriteLine("欢迎光临");
while (true)
{
Console.Write("请输入要购买的商品名称:");
p.name = Console.ReadLine();
Console.Write("请输入要购买的商品数量:");
p.sl = Convert.ToInt32(Console.ReadLine());
Console.Write("请输入要购买的商品单价:");
p.jg = Convert.ToDouble(Console.ReadLine());
al.Add(p);
Console.WriteLine("是否结账?(Y/N)");
string sf=Console.ReadLine().ToUpper();
if (sf=="Y")
{
break;
}
}
double sum = 0;
double sum1 = 0;
for (int i = 0; i < al.Count; i++)
{
chaoshi x = (chaoshi)al[i];
sum += x.jg * x.sl;
}
if (sum<100)
{
sum1 = 0.95 * sum;
}
else if (sum<200)
{
sum1= 0.90 * sum;
}
else if (sum < 300)
{
sum1 = 0.80 * sum;
}
else if (sum < 500)
{
sum1 = 0.70 * sum;
}
else
{
sum1 = 0.60 * sum;
}
Console.WriteLine("花费"+sum1+"元,节省"+(sum-sum1)+"元");
Console.ReadLine();
}
Switch例题:输入月份 几号,判断第几天
Console.Write("请输入月份");
int y = int.Parse(Console.ReadLine());
Console.Write("请输入日期");
int d = int.Parse(Console.ReadLine());
int m1 = 31, m2 = 28, m3 = 31, m4 = 30, m5 = 31, m6 = 30, m7 = 31, m8 = 31, m9 = 30, m10 = 31, m11 = 30;
switch (m)
{
case 1:
Console.WriteLine("第" + d.ToString() + "天");
break;
case 2:
Console.WriteLine("第" + (m1 + d).ToString() + "天");
break;
case 3:
Console.WriteLine("第" + (m1 + m2 + d).ToString() + "天");
break;
case 4:
Console.WriteLine("第" + (m1 + m2 + m3 + d).ToString() + "天");
break;
case 5:
Console.WriteLine("第" + (m1 + m2 + m3 + m4 + d).ToString() + "天");
break;
case 6:
Console.WriteLine("第" + (m1 + m2 + m3 + m4 + m5 + d).ToString() + "天");
break;
case 7:
Console.WriteLine("第" + (m1 + m2 + m3 + m4 + m5 + m6 + d).ToString() + "天");
break;
case 8:
Console.WriteLine("第" + (m1 + m2 + m3 + m4 + m5 + m6 + m7 + d).ToString() + "天");
break;
case 9:
Console.WriteLine("第" + (m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + d).ToString() + "天");
break;
case 10:
Console.WriteLine("第" + (m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + m9 + d).ToString() + "天");
break;
case 11:
Console.WriteLine("第" + (m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + m9 + m10 + d).ToString() + "天");
break;
case 12:
Console.WriteLine("第" + (m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + m9 + m10 + m11 + d).ToString() + "天");
break;
default:
Console.WriteLine("您输入有误");
break;
}
2、 循环语句(for, foreach,while)
例题:冒泡排序
for (int i =0; i <x; i++)
{
for (int j = i; j < x-1; j++)
{
if (px[j-1]<px[i])
{
int temp = 0;
temp = px[j-1];
px[j-1] = px[ i ];
px[ i ] = temp;
}
}
}
3、跳转语句:break(跳出整个循环),continue(跳出当前循环),default,return
break与continue的区别:
static void Main(string[] args)
{
int n = 0;
while (n < 100)
{
n++;
Console.WriteLine(n + "口饭");
if (n == 50)
{
Console.WriteLine("出现了一块石头,我吐了。");
continue;
}
if (n == 80)
{
Console.WriteLine(n + "出现了一只虫子。我。。。。喊老板了。。。。");
break;
}
Console.WriteLine("我咽了下去");
}
}
4 、异常语句:try-catch-finally
浙公网安备 33010602011771号