用C#语言完成:要求(制作一个通讯录软件): 1. 制作UI界面,包含两个文本输入框,一个文本展示框,两个按键 2. 两个按键分别为“录入“按键与“查询”按键 3. 第一个文本框用于输入姓名 4. 第二个文本框用于输入电话号码 5. 用户可以通过点击录入按键将用户信息记录到一个数组内,并在文本展示框展示“录入成功”【数组初始8位,在存储过程中动态扩展】 6. 如果录入的用户名已经存在,则更新电话号码,并在文本框展示“更新成功” 7. 如果录入时未输入电话号码,则在文本框展示“录入失败,未输入电话号码” 8. 如果录入时未输入用户名,则在文本框展示“录入失败,未输入用户名” 9. 用户可以通过点击查询按键,查询用户名所对应的电话号码,并在文本展示框展示“查询成功,电话为12012131” 10. 如果当前输入的用户名不存在,则在文本展示框展示“用户不存在”
时间: 2024-02-22 19:59:59 浏览: 101
以下是使用C#语言完成的通讯录软件代码:
```
using System;
using System.Windows.Forms;
namespace ContactList
{
public partial class Form1 : Form
{
private string[,] contacts = new string[8, 2]; // 初始数组大小为8
public Form1()
{
InitializeComponent();
}
private void btnAdd_Click(object sender, EventArgs e)
{
string name = txtName.Text.Trim();
string phone = txtPhone.Text.Trim();
if (name == "")
{
MessageBox.Show("录入失败,未输入用户名");
return;
}
if (phone == "")
{
MessageBox.Show("录入失败,未输入电话号码");
return;
}
int index = FindContact(name);
if (index == -1)
{
// 添加新联系人
int len = contacts.GetLength(0);
if (len == contacts.GetLength(1))
{
// 扩展数组
string[,] newArray = new string[len * 2, 2];
for (int i = 0; i < len; i++)
{
newArray[i, 0] = contacts[i, 0];
newArray[i, 1] = contacts[i, 1];
}
contacts = newArray;
}
contacts[len, 0] = name;
contacts[len, 1] = phone;
txtResult.Text = "录入成功";
}
else
{
// 更新联系人电话号码
contacts[index, 1] = phone;
txtResult.Text = "更新成功";
}
}
private void btnQuery_Click(object sender, EventArgs e)
{
string name = txtName.Text.Trim();
if (name == "")
{
MessageBox.Show("查询失败,未输入用户名");
return;
}
int index = FindContact(name);
if (index == -1)
{
txtResult.Text = "用户不存在";
}
else
{
string phone = contacts[index, 1];
txtResult.Text = "查询成功,电话为" + phone;
}
}
// 查找联系人的索引,如果不存在则返回-1
private int FindContact(string name)
{
int len = contacts.GetLength(0);
for (int i = 0; i < len; i++)
{
if (contacts[i, 0] == name)
{
return i;
}
}
return -1;
}
}
}
```
解释:
1. `contacts`是一个二维字符串数组,用于存储联系人信息,第一列为姓名,第二列为电话号码。
2. `btnAdd_Click`方法响应录入按钮的点击事件。首先获取用户输入的姓名和电话号码,如果未输入则提示用户并返回。然后查找数组中是否已经存在该联系人,如果存在则更新电话号码,否则添加新联系人。如果数组已经满了,则扩展数组大小。
3. `btnQuery_Click`方法响应查询按钮的点击事件。首先获取用户输入的姓名,如果未输入则提示用户并返回。然后查找数组中是否存在该联系人,如果不存在则返回“用户不存在”,否则返回该联系人的电话号码。
4. `FindContact`方法用于查找指定姓名的联系人在数组中的索引。如果找到则返回该索引,否则返回-1。
阅读全文