C#期中考試試題及答案

时移之人發表於2024-11-10

C#期中考試試題及答案

1.輸入一個字串,刪除其中所有大寫字母,輸出刪除後的字串。

string str = txtContent.Text;//首先獲取使用者輸入的字串 123abc
string newStr = "";
for (int i = 0; i < str.Length; i++)
{
	if (str[i] >= 'A' && str[i] <= 'Z') {
		continue;
	}else {
		newStr += str[i];
	}
}
lblMessage.Text = "刪除大寫字母之後的字串為:"+newStr;

2.輸入一班20名同學的數學成績,求出該班數學成績的最高分、最低分、平均分以及低於平均分的人數。

//首先獲取使用者輸入的數,數字之間用逗號隔開
string str = txtContent.Text;
string[] strScore = str.Split(',');//用,分割字串,得到字串陣列
if (strScore.Length != 20)
{
	lblMessage.Text = "您輸入的成績個數不是20個";
}else {
	double[] score = new double[strScore.Length];//宣告一個整型陣列,存數值型別的成績
	for (int i = 0; i < strScore.Length; i++) {//將字串陣列中的每一個值轉換成double,存放到doule型別陣列中
	score[i] = double.Parse(strScore[i]);
}
double max = score[0], min = score[0], sum = 0;

//遍歷陣列一遍,得到最高分、最低分和總分
for (int i = 0; i < score.Length; i++) {
	if (max < score[i])//其他項的值比max大,那麼更改max的值
		max = score[i];
	if (min > score[i])//其他項的值比min小,那麼更改min的值
		min = score[i];
	sum += score[i];//累加所有的數
}
double average = sum / score.Length;//70

//還需要遍歷一遍陣列,找出低於平均分的人數
int count = 0;
for (int i = 0; i < score.Length; i++)
{
	if (score[i] < average)
	count++;
}

/輸出統計出來的結果
blMessage.Text = String.Format("您輸入的20名同學成績{0}中,最高分{1},最低分{2},平均分{3},低於平均分人數有{4}個",str,max,min,average,count);
}

3.建立一個學生類,要求:

(1)該類含有學生的姓名、性別、出生日期和成績等資訊;

(2)包含有參和無參的建構函式;

(3)姓名不能為空而且長度小於10;性別必須是“男”或“女”;出生日期不能為空;成績要求介於0-100之間的整數;

(4)具有一個判斷成績等級的方法;

建立一個學生物件,實現為其屬性賦值,並能根據成績計算成績等級。

class Student
{
	string name;
	string sex;
	DateTime birth;
	int score;
	public string Name
	{
		get { return name; }
		set {
		if (value != "" && value.Length < 10)
			name = value;
		}
	}

	public string Sex
	{
		get { return sex; }
		set {
			if (value == "男" || value == "女")
			sex = value;
		}
	}

	public DateTime Birth
	{
		get { return birth; }
		set
		{
			if (value !=null)
			birth = value;
		}
	}
	
	public int Score
	{
		get { return score; }
		set
		{
			if (value>=0 && value<=100)
			score = value;
		}
	}
	
	public Student()//無參的建構函式
	{ }
	
	public Student(string n, string s, DateTime b, int sc) {
	name = n;
	sex = s;
	birth = b;
	score = sc;
	}
	
	public string Level(int score) {
		return "A";
	}
}
	
	 
	
	類的呼叫
	
Student student = new Student();
student.Name = "";
student.Sex = "";
student.Level(80);

相關文章