Csharp homework

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace Console1

{

class Program

{

static void Main(string[] args)

{

Console.Write("输入:");

System.String a = Console.ReadLine();

Console.Clear();

Console.Write("你好-" + a + "");

}

}

}

using System;

class Program

{

static void Main(string[] args)

{

string a = Console.ReadLine();

string[] b = a.Split();

for(int i=0;i<5; i++) {

Console.Write(b[i]);

if (i < 4) Console.Write(",");

}

}

}

using System;

class Program

{

static void Main(string[] args)

{

string inp= Console.ReadLine();

string[] s = inp.Split(' ');

int b = Convert.ToInt32(s[1]), a = Convert.ToInt32(s[0]);

Console.Write("{0} {1} {2} {3}",a+b,a-b,a*b,a/b);

}

}

using System;

class Program

{

static void Main(string[] args)

{

string inp= (Console.ReadLine());

string[] s = inp.Split(' ');

int a = Convert.ToInt32(s[0]);

for (int i = 1; i < 6; i++) {

if (Convert.ToInt32(s[i]) > a) a = Convert.ToInt32(s[i]);

}

Console.Write(a);

}

}

using System;

class Program

{

static void Main(string[] args)

{

string inp= (Console.ReadLine());

string[] s = inp.Split(' ');

double a = 0;

for (int i = 0; i < s.Length; i++) {

a += Convert.ToDouble(s[i]);

}

Console.Write(a/ s.Length);

}

}

222222

using System;

class enter

{

static void Main()

{

int[] input = Array.ConvertAll(Console.ReadLine().Split(','),int.Parse);

int output;

switch (input[1])

{

case 2:

if(input[0]%4==0 && input[0]%100!=0 || input[0]%400==0){

output=29;

}else

{

output=28;

}

break;

case 1:

case 3:

case 5:

case 7:

case 8:

case 10:

case 12:

output=31;

break;

default:

output=30;

break;

}

Console.WriteLine(output);

}

}

using System;

class enter

{

static void Main()

{

int[] input = Array.ConvertAll(Console.ReadLine().Split(' '),int.Parse);

int output=0;

for(int i=0;i<input[1];i++)output+=input[0]*((int)Math.Pow(10,i))*(input[1]-i);

Console.WriteLine(output);

}

}

using System;

using System.Collections.Generic;

class enter

{

static void Main()

{

int[] input = Array.ConvertAll(Console.ReadLine().Split(' '),int.Parse);

var output = new List<int>();

foreach(int i in input){

if(i<10 || i>100 || output.Contains(i)){

continue;

}

output.Add(i);

}

if(output.Count == 0)Console.WriteLine("ERROR");

else Console.WriteLine(String.Join(" ",output));

}

}

using System;

using System.Collections.Generic;

class enter

{

static void Main()

{

//int[] input = Array.ConvertAll(Console.ReadLine().Split(' '),int.Parse);

var input=Console.ReadLine().Split();

Citizen c = new Citizen(input[0],input[1],input[2],input[3]);

c.print();

}

}

class Citizen{

public string Id,Name,Gender,Familyaddress;

public Citizen(string Id,string Name,string Gender,string Familyaddress){

this.Id=Id;

this.Name=Name;

this.Gender=Gender;

this.Familyaddress=Familyaddress;

}

public void print(){

string year,month,day;

year=Id.Substring(6,4);

month=Id.Substring(10,2);

day=Id.Substring(12,2);

Console.WriteLine("{0},{1},出生于{2}年{3}月{4}日,居住于{5}",Name,Gender,year,month,day,Familyaddress);

}

}

using System;

using System.Collections.Generic;

class enter

{

static void Main()

{

var input = Array.ConvertAll(Console.ReadLine().Split(' '),double.Parse);

Tri t = new Tri(input[0],input[1],input[2]);

Console.WriteLine(t.calc());

}

}

class Tri{

private double a,b,c;

public double A{

get{return a;}

set{a=value>0?value:0;}

}

public double B{

get{return b;}

set{b=value>0?value:0;}

}

public double C{

get{return c;}

set{c=value>0?value:0;}

}

public Tri(double a,double b,double c){

A=a;B=b;C=c;

}

public double calc(){

if(A==0||B==0||C==0)return 0;

return A+B+C;

}

}

3333

using System;

using System.Collections.Generic;

class enter

{

static void Main()

{

var input = Array.ConvertAll(Console.ReadLine().Split(' '),int.Parse);

Time t = new Time(input[0],input[1],input[2]),t0=new Time();

t0.Show();

t.Show();

}

}

class Time{

private double hour,minutes,second;

public double Hour{

get{return hour;}

set{hour=value>=0&&value<24?value:0;}

}

public double Minutes{

get{return minutes;}

set{minutes=value>0&&value<=59?value:0;}

}

public double Second{

get{return second;}

set{second=value>0&&value<=59?value:0;}

}

public Time(){

Hour=0;Minutes=0;Second=0;

}

public Time(double hour,double minutes,double second){

Hour=hour;Minutes=minutes;Second=second;

}

public void Show(){

Console.WriteLine("{0:00}时{1:00}分{2:00}秒",Hour,Minutes,Second);

}

}

using System;

using System.Collections.Generic;

/*

定义一个直线(Line)类,类中有两个Point类的数据成员p1、p2。

类中有3个构造方法,一个是无参数, p1、p2为Point的默认值;

一个是含有4个参数(4个参数为double数据)的构造方法,其中

前两个参数给p1赋值、后两个参数给p2赋值。一个是含有2个

参数(参数类型为Point)的构造方法,分别给p1、p2赋值。

类中有一个double Distance()方法,用来返回两点之间的距离。

在主方法main中,定义3个Line类的对象,一个使用无参的构造方法,

一个使用带4个参数的构造方法,这4个参数从控制台输入。一个使用

带2个参数(Point1的坐标(3,4),Point2的坐标(5,6))的构造方法。

分别调用3个对象的Distance()方法输出对应的距离(保留2位小数)。

具体代码可参考mooc上的7.4代码阅读。

*/

class Line{

Point p1,p2;

public Line(){

p1=new Point();

p2=new Point();

}

public Line(double x1,double y1,double x2,double y2){

p1=new Point(x1,y1);

p2=new Point(x2,y2);

}

public Line(Point p1,Point p2){

this.p1=p1;

this.p2=p2;

}

public double Distance(){

double x=p1.X-p2.X;

double y=p1.Y-p2.Y;

return Math.Sqrt(x*x+y*y);

}

}

class Point{

public double X{get;set;}

public double Y{get;set;}

public Point(){

X=0;Y=0;

}

public Point(double x, double y){

X=x;Y=y;

}

}

class enter

{

static void Main()

{

var a = Array.ConvertAll(Console.ReadLine().Split(' '),double.Parse);

double d1=new Line().Distance();

double d2=new Line(a[0],a[1],a[2],a[3]).Distance();

double d3=new Line(new Point(3,4),new Point(5,6)).Distance();

Console.WriteLine("{0:0.00}",d1);

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

Console.WriteLine("{0:0.00}",d3);

}

}

using System;

using System.Collections.Generic;

/*

运动时,可以利用心率监测仪来查看心率是否处于安全范围内。其中最高心率=220-年龄;目标心率是最高心率的50%-85%(只保留整数,向下取整)。

(1)创建一个名称为HeartRates的类。

字段:人的名字(string)、出生年份(年)。

属性:一个返回年龄(以年计算)的属性(int,只读,即属性中只有get访问器)。

方法:一个计算并返回最高心率的方法;一个计算并返回最低目标心率的方法;一个计算并返回最高目标心率的方法。

(2)在主方法中,实例化HeartRates类,从控制台中输入个人信息姓名,出生年份。最后输出对象的信息,包括姓名;年龄;最高心率,最低目标心率,最高目标心率信息(用空格分隔,具体格式如样例所示)。

样例

张一2000

张一22岁 最高心率198 最低目标心率99 最高目标心率168

*/

class HeartRates{

public string name;

public int birth;

public int Age{

get{

return DateTime.Now.Year - birth;

}

}

public HeartRates(string name,int birth){

this.name=name;

this.birth=birth;

}

public int hhr(){

return 220-Age;

}

public int ehhr(){

return (int)(hhr()*0.85);

}

public int elhr(){

return (int)(hhr()*0.5);

}

}

class enter

{

static void Main()

{

//var a = Array.ConvertAll(Console.ReadLine().Split(' '),double.Parse);

var a = Console.ReadLine().Split();

string n = a[0];

int b = int.Parse(a[1]);

HeartRates hr = new HeartRates(n,b);

Console.WriteLine("{0} {1}岁 最高心率{2} 最低目标心率{3} 最高目标心率{4}",hr.name,hr.Age,hr.hhr(),hr.elhr(),hr.ehhr());

}

}

using System;

using System.Collections.Generic;

/*

在Main函数所在的类,实现两个方法用于计算成绩的平均值,小数点后1位。

public static double AvgGrade(int[] gra) //数值型成绩的平均值。得分1~5之间。课程数无限制。

public static double AvgGrade(string[] sgra) //成绩分为“good”和“ok”两个等级。good等价于4分,ok等价于1分。

在Main方法中,分别调用两种方法,均能输出平均成绩。输入用空格分开。

*/

class enter

{

public static double AvgGrade(int[] gra){

double sum=0;

foreach (var i in gra){

sum += i;

}

return sum/gra.Length;

}

public static double AvgGrade(string[] sgra){

double sum=0;

foreach (var i in sgra){

sum+=i=="good"?4:1;

}

return sum/sgra.Length;

}

static void Main()

{

//var a = Array.ConvertAll(Console.ReadLine().Split(' '),double.Parse);

var a = Console.ReadLine().Split();

try{

Console.WriteLine("{0:0.0}", AvgGrade(Array.ConvertAll(a,int.Parse)));

}catch(FormatException e){

Console.WriteLine("{0:0.0}", AvgGrade(a));

}

}

}

using System;

using System.Collections.Generic;

/*

定义一个活期储蓄账户SavingsAccount类,类中有如下成员:

* 静态变量annualInterestRate(double)存储所有账户持有者的年利率,默认值为4%。

* 实例变量savingBalance(double),表示该存款账户当前的金额。

* 一个带1个参数的构造方法,给savingBalance赋值。

* 一个计算结余的方法CalculateMonthlyInterest,将annualInterestRate与savingBalance相乘后除以12得到月利息,并将这个月利息加进savingBalance中。

* 静态方法ModifyInterestRate (double newAnnualInterestRate),将annualInterestRate设置为新值。

* 一个显示结余的方法Show,用来显示结余金额(保留两位小数)。

在主方法中创建两个SavingsAccount的对象saver1和saver2,当前金额分别从控制台获取。调用CalculateMonthlyInterest方法计算两个账户的结余,再调用Show方法显示金额。然后通过调用ModifyInterestRate方法将annualInterestRate设置为5%,再次输出新的结余。具体代码可参考mooc上的7.4代码阅读。

*/

class SavingsAccount{

static double annualInterestRate = 0.04;

double savingBalance;

public SavingsAccount(double savingBalance){

this.savingBalance = savingBalance;

}

public void CalculateMonthlyInterest(){

savingBalance += savingBalance*annualInterestRate/12;

}

public static void ModifyInterestRate(double newAnnualInterestRate){

annualInterestRate = newAnnualInterestRate;

}

public void Show(){

Console.WriteLine("SavingBalance:{0:0.00}",savingBalance);

}

}

class enter

{

static void cAs(SavingsAccount saver){

saver.CalculateMonthlyInterest();

saver.Show();

}

static void Main()

{

var a = Array.ConvertAll(Console.ReadLine().Split(' '),double.Parse);

SavingsAccount saver1 = new SavingsAccount(a[0]), saver2 = new SavingsAccount(a[1]);

cAs(saver1);cAs(saver2);

SavingsAccount.ModifyInterestRate(0.05);

cAs(saver1);cAs(saver2);

}

}

using System;

using System.Collections.Generic;

/*

创建一个学生类,该类中有如下成员:

(1)字段:学号(string类型);

成绩(用一个一维整型数组,存储一个学生的3门课成绩);

(2)方法:构造方法,给字段赋值;

一个将学生的3门课成绩由小到大顺序输出的方法。

在主函数中,声明2个学生对象,从控制台输入每个学生的学号和3门课成绩,调用对象的方法把成绩输出。

*/

class Stu{

string num;

int[] score;

public Stu(string n,int a,int b,int c){

num=n;

score = new int[3]{a,b,c};

}

public void output(){

Array.Sort(score);

Console.Write("{0} {1} {2} {3}",num,score[0],score[1],score[2]);

Console.WriteLine();

}

}

class enter

{

static void Main()

{

var a = Console.ReadLine();

var b = Array.ConvertAll(Console.ReadLine().Split(' '),int.Parse);

var c = Console.ReadLine();

var d = Array.ConvertAll(Console.ReadLine().Split(' '),int.Parse);

Stu s1,s2;

s1 = new Stu(a,b[0],b[1],b[2]);

s2 = new Stu(c,d[0],d[1],d[2]);

s1.output();

s2.output();

}

}

using System;

using System.Collections.Generic;

/*

定义一个复数(Complete)类,类中有两个自实现属性Real 、Image(double) 。类中有两个构造方法,一个是无参数,默认属性值都为0;一个是含有2个参数的构造方法,给属性赋值。

类中有两个方法:一个是public Complete Add(Complete x),用来返回两个复数的和;一个是 public Complete Sub(Complete x),用来返回两个复数的差。

重写ToString()方法,返回string.Format("{0}+{1}i", Real, Image)或string.Format("{0}{1}i", Real, Image)。

在主方法main中,定义2个复数的对象,然后求这个复数的和和差,并输出。

*/

class Complete{

//不是Complex????

public double Real{get;set;}

public double Image{get;set;}

public Complete(){

Real=0;

Image=0;

}

public Complete(double r,double i){

Real=r;

Image=i;

}

public Complete Add(Complete x){

return new Complete(Real+x.Real,Image+x.Image);

}

public Complete Sub(Complete x){

return new Complete(Real-x.Real,Image-x.Image);

}

public override string ToString(){

return Image>0?string.Format("{0}+{1}i", Real, Image):string.Format("{0}{1}i", Real, Image);

}

}

class enter

{

static Complete A(double[] a){

return new Complete(a[0],a[1]);

}

static void Main()

{

var b = Array.ConvertAll(Console.ReadLine().Split(' '),double.Parse);

var d = Array.ConvertAll(Console.ReadLine().Split(' '),double.Parse);

Complete c1,c2;

c1 = A(b);

c2 = A(d);

Console.Write(c1.Add(c2) + " ");

Console.Write(c1.Sub(c2));

}

}

using System;

using System.Collections.Generic;

/*

设计一个汽车类Vehicle,包含的数据成员有车轮个数wheels(int)和车重weight(int)。

以及带有这两个参数的构造方法,包括一个Run方法,Run方法中输出running字样。

小车类Car是汽车类Vehicle的子类,其中增加了数据成员车载人数passenger_load(int)。

Car类中有带参数的构造方法,重写Run方法:输出Car is running。

并重写ToString()方法:显示car中信息(显示车轮数、车重、车载人数)。

最后编写主方法,定义car的对象,并调用Run方法,以及显示car中信息。

*/

class Vehicle{

protected int wheels,weight;

public Vehicle(int w,int we){

wheels = w;

weight = we;

}

public virtual void Run(){

Console.WriteLine("runnning");

}

}

class Car:Vehicle{

int passenger_load;

public Car(int w,int we,int p):base(w,we){

passenger_load = p;

}

public override void Run(){

Console.WriteLine("Car is running");

}

public override string ToString(){

return string.Format("wheels:{0};weight:{1};passenger:{2}",wheels,weight,passenger_load);

}

}

class enter

{

static Car A(int[] a){

return new Car(a[0],a[1],a[2]);

}

static void Main()

{

var a = Array.ConvertAll(Console.ReadLine().Split(' '),int.Parse);

Car c;

c = A(a);

c.Run();

Console.Write(c);

}

}

using System;

using System.Collections.Generic;

class People{

public string name,pos;

public People(string name,string pos){

this.name = name;

this.pos = pos;

}

public virtual bool isgood(){

return true;

}

}

class Student:People{

public int score;

public Student(string a,string b,int c):base(a,b){

score = c;

}

public override bool isgood(){

return score>90;

}

}

class Teacher:People{

public int num;

public Teacher(string a,string b,int c):base(a,b){

num = c;

}

public override bool isgood(){

return num>3;

}

}

class enter

{

// static Car A(int[] a){

// return new Car(a[0],a[1],a[2]);

// }

static void IsGood(People p)

{

if(p.isgood())

Console.WriteLine(p.name+" "+p.pos);

}

static void Main()

{

// var a = Array.ConvertAll(Console.ReadLine().Split(' '),int.Parse);

int n = int.Parse(Console.ReadLine());

People[] ps = new People[n];

for(int i=0;i<n;i++){

var a = Console.ReadLine().Split(' ');

if(a[1]=="学生")ps[i] = (new Student(a[0],a[1],int.Parse(a[2])));

else if(a[1]=="教师") ps[i] = (new Teacher(a[0],a[1],int.Parse(a[2])));

}

foreach (var p in ps)

{

IsGood(p);

}

}

444444

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace ConsoleApp1

{

public abstract class Package

{

public string Name { get; private set; }

public string Address { get; private set; }

public int Weight { get; private set; }

public double Mile { get; private set; }

public Package(string name, string address, int weight, double mile)

{

Name = name;

Address = address;

Weight = weight;

Mile = mile;

}

public abstract double Freight();

}

public class ThreeDayPackage : Package

{

public ThreeDayPackage(string name, string address, int weight, double mile)

: base(name, address, weight, mile)

{

}

public override double Freight()

{

return Mile * Weight * 0.01;

}

}

public class OvernightPackage : Package

{

public double Fee { get; private set; }

public OvernightPackage(string name, string address, int weight, double mile, double fee)

:base(name, address, weight, mile)

{

Fee = fee;

}

public override double Freight()

{

return (Mile + Fee) * Weight * 0.01;

}

}

class Program

{

static void Main(string[] args)

{

string key = Console.ReadLine();

string[] s = key.Split(' ');

ThreeDayPackage x = new ThreeDayPackage(s[0], s[1], Convert.ToInt32(s[2]), Convert.ToDouble(s[3]));

key = Console.ReadLine();

s = key.Split(' ');

OvernightPackage y = new OvernightPackage(s[0], s[1], Convert.ToInt32(s[2]), Convert.ToDouble(s[3]), Convert.ToDouble(s[4]));

Console.WriteLine(x.Freight());

Console.WriteLine(y.Freight());

}

}

}

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace ConsoleApp3

{

public abstract class Pet

{

public string Name;

public int Weight;

public Pet(string name, int weight)

{

Name = name;

Weight = weight;

}

public abstract void Speak();

public abstract void Eat();

public override string ToString()

{

return string.Format(Name + "{0}斤", Weight);

}

}

public class Cat : Pet

{

public Cat(string name, int weight) : base(name, weight) { }

public override void Speak()

{

Console.WriteLine("MIAOMIAO");

}

public override void Eat()

{

Weight += 1;

}

}

public class Dog : Pet

{

public Dog(string name, int weight) : base(name, weight) { }

public override void Speak()

{

Console.WriteLine("WANGWANG");

}

public override void Eat()

{

Weight += 2;

}

}

class Program

{

static void fun(Pet p)

{

p.Speak();

p.Eat();

Console.WriteLine(p);

}

static void Main(string[] args)

{

string key = Console.ReadLine();

string[] s = key.Split(' ');

Cat cat = new Cat(s[0], Convert.ToInt32(s[1]));

key = Console.ReadLine();

s = key.Split(' ');

Dog dog = new Dog(s[0], Convert.ToInt32(s[1]));

fun(cat); fun(dog);

}

}

}

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace ConsoleApp1

{

public abstract class Employee

{

public string Name;

public string SSN;

public DateTime BirthDay;

public Employee(string name, string ssn, DateTime birthday)

{

Name = name;

SSN = ssn;

BirthDay = birthday;

}

public abstract decimal Earning();

}

public class SalariedEmployee : Employee

{

public decimal Salary;

public SalariedEmployee(string name, string ssn, DateTime birthday, decimal salary)

:base(name, ssn, birthday)

{

Salary = salary;

}

public override decimal Earning()

{

string month = System.DateTime.Now.ToString("MM");

if (month == BirthDay.ToString("MM"))

return Salary + 300;

else return Salary;

}

}

public class HourlyEmployee : Employee

{

public decimal Wage;

public int Days;

public HourlyEmployee(string name, string ssn, DateTime birthday, decimal wage, int days)

:base(name, ssn, birthday)

{

Wage = wage;

Days = days;

}

public override decimal Earning()

{

decimal Salary;

if (Days <= 22) Salary = Days * Wage;

else Salary = 22 * Wage + (Days - 22) * Wage * 1.5M;

if (System.DateTime.Now.ToString("MM") == BirthDay.ToString("MM")) Salary += 300M;

return Salary;

}

}

class Program

{

static void Main(string[] args)

{

string[] s = Console.ReadLine().Split(' ');

int[] time = Array.ConvertAll(s[2].Split('-'), int.Parse);

SalariedEmployee employee_1 = new SalariedEmployee(s[0], s[1],

new DateTime(time[0], time[1], time[2]), Convert.ToDecimal(s[3]));

Console.WriteLine(employee_1.Earning());

s = Console.ReadLine().Split(' ');

time = Array.ConvertAll(s[2].Split('-'), int.Parse);

HourlyEmployee employee_2 = new HourlyEmployee(s[0], s[1],

new DateTime(time[0], time[1], time[2]), Convert.ToDecimal(s[3]), Convert.ToInt32(s[4]));

Console.WriteLine(employee_2.Earning());

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值