C语言通讯录程序:从入门到精通
C语言通讯录程序:从入门到精通
想学习如何使用C语言编写一个功能完备的通讯录程序吗?这篇文章为你提供一个简单的示例代码,并详细解释每个步骤,帮助你快速入门C语言编程。
代码示例
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_CONTACTS 100
typedef struct {
char name[50];
char phone[20];
} Contact;
Contact contacts[MAX_CONTACTS];
int numContacts = 0;
void addContact() {
if (numContacts == MAX_CONTACTS) {
printf('通讯录已满,无法添加新联系人。\n');
return;
}
Contact newContact;
printf('请输入联系人姓名:');
scanf('%s', newContact.name);
printf('请输入联系人电话:');
scanf('%s', newContact.phone);
contacts[numContacts++] = newContact;
printf('联系人已成功添加到通讯录。\n');
}
void displayContacts() {
if (numContacts == 0) {
printf('通讯录为空。\n');
return;
}
printf('通讯录中的联系人:\n');
for (int i = 0; i < numContacts; i++) {
printf('%d. 姓名:%s,电话:%s\n', i + 1, contacts[i].name, contacts[i].phone);
}
}
int main() {
int choice;
while (1) {
printf('\n通讯录程序\n');
printf('1. 添加联系人\n');
printf('2. 显示联系人\n');
printf('3. 退出\n');
printf('请选择操作:');
scanf('%d', &choice);
switch (choice) {
case 1:
addContact();
break;
case 2:
displayContacts();
break;
case 3:
printf('感谢使用通讯录程序,再见!\n');
exit(0);
default:
printf('无效的选择,请重试。\n');
}
}
return 0;
}
代码解释
-
包含头文件:
stdio.h: 包含标准输入输出函数,如printf和scanf。stdlib.h: 包含内存分配函数malloc和free,以及程序控制函数exit。string.h: 包含字符串操作函数,如strcpy和strlen。
-
定义常量和结构体:
MAX_CONTACTS: 定义通讯录最大联系人数量为 100。Contact: 定义一个名为Contact的结构体,包含name和phone两个成员,分别存储联系人的姓名和电话号码。
-
声明全局变量:
contacts: 定义一个Contact类型的数组,用于存储所有联系人信息。numContacts: 记录当前通讯录中的联系人数量。
-
实现函数:
addContact(): 添加联系人到通讯录。displayContacts(): 显示通讯录中所有联系人信息。
-
主函数
main():- 使用循环不断提示用户选择操作。
- 根据用户的选择调用相应的函数。
进阶学习
- 文件操作: 学习如何将联系人数据保存到文件,以及从文件中读取数据,实现数据持久化。
- 搜索和排序: 实现按姓名或电话号码搜索联系人,以及对联系人进行排序的功能。
- 动态内存分配: 使用
malloc和free函数动态分配内存,突破固定联系人数量的限制。 - 图形用户界面 (GUI): 学习使用 GUI 库,如 GTK+ 或 Qt,创建更友好的用户界面。
通过不断学习和实践,你可以使用C语言创建功能强大的通讯录程序,甚至其他更复杂的应用程序。
原文地址: https://www.cveoy.top/t/topic/bWT6 著作权归作者所有。请勿转载和采集!