题目一
题目一
文本文件中存储了多个文章标题、作者,标题和作者之间用若干空格(数量不定)隔开,每行一个,标题有的长有的短,输出到控制台的时候最多标题长度10,如果超过10,则截取长度8的子串并且最后添加“...”,加一个竖线后输出作者的名字。
namespace test1
{
class Program
{
/*文本文件中存储了多个文章标题、作者,标题和作者之间用若干空格(数量不定)隔开,
每行一个,标题有的长有的短,输出到控制台的时候最多标题长度10,
如果超过10,则截取长度8的子串并且最后添加“...”,加一个竖线后输出作者的名字。*/
static void Main(string[] args)
{
//把文本中的信息读取出来
String[] lines = File.ReadAllLines(@"D:\C#\exam\test1\test1.txt",Encoding.Default);
//遍历每行
foreach (String line in lines)
{
//以空格作为分隔符,返回分割的子字符串
String[] zh=line.Split(new char[]{' '},StringSplitOptions.RemoveEmptyEntries);
//取得标题
String title=zh[0];
//取得作者
String author=zh[1];
//截取标题长度
String title1=title.Substring(0);
//标题长度是否大于10
if (title.Length>10)
{
//截取标题长度,取前八位
title1 = title.Substring(0, 7);
//后面的位数用...填充
title1 = title1 + "...";
}
Console.WriteLine("{0}|{1}", title1, author);
}
Console.ReadKey();
}
/*这个不太好想*/
}
}
题目二
定义两个int类型的变量如:a和b分别赋值为10和5,不借助第三方变量写程序交换两个变量的值。
namespace test2
{
class Program
{
/*定义两个int类型的变量如:a和b分别赋值为10和5,
不借助第三方变量写程序交换两个变量的值。*/
static void Main(string[] args)
{
//定义两个整型变量
int a, b;
//如果a的值是整型就跳出循环,否则就继续循环
while(true)
{
Console.WriteLine("请输入a的值:");
//接受a的值
String A = Console.ReadLine();
if (!(int.TryParse(A, out a)))
{
Console.WriteLine("输入的类型非法,请重新输入!");
}
else
{
break;
}
}
//如果b的值是整型就跳出循环,否则就继续循环
while (true)
{
Console.WriteLine("请输入b的值:");
//接受b的值
String B = Console.ReadLine();
if (!(int.TryParse(B, out b)))
{
Console.WriteLine("输入的类型非法,请重新输入!");
}
else
{
break;
}
}
//a、b的值进行交换
a = a + b;
b = a - b;
a = a - b;
Console.WriteLine("交换变量后a的值为:{0},b的值为:{1}", a, b);
Console.ReadLine();
/*注:交换两个变量的值是个老生长谈的话题,实现方式有很多,但限于个人时间精力有限,
只写了一种比较简单的做法*/
}
}
}
题目三
定义父亲类Father(姓firstName,财产wealth,血型blood),儿子Son类(玩游戏PlayGame),女儿Daughter类(跳舞Dance),调用父类构造函数给子类字段赋值。
namespace test3
{
//定义父亲类
class Father
{
/*定义父亲类Father(姓firstName,财产wealth,血型blood),
儿子Son类(玩游戏PlayGame),女儿Daughter类(跳舞Dance),
调用父类构造函数给子类字段赋值。*/
//父亲类的构造函数
public Father(String firstName, decimal wealth, String blood)
{
this.FirstName = firstName;
this.Wealth = wealth;
this.Blood = blood;
}
//为firstName字段赋值
String firstName;
public String FirstName
{
get
{
return firstName;
}
set
{
firstName = value;
}
}
//为wealth字段赋值
decimal