L'une des meilleures façons d'apprendre la programmation C consiste à effectuer des exercices pratiques. Cet article vous guidera étape par étape à travers un projet que j'ai récemment réalisé : créer une application simple d'annuaire téléphonique. Ce programme vous permet d'ajouter, d'afficher et de supprimer des contacts et démontre la gestion des fichiers et la gestion des données de base en C.
Voici le code complet de l'application annuaire téléphonique :
<code class="language-c">#include <stdio.h> #include <string.h> // 函数声明 void addContact(char name[], char number[]); void viewContacts(); void deleteContact(char name[]); int main() { int choice; char name[20]; char number[20]; printf("-- 欢迎使用您的电话簿! -- \n"); do { // 显示菜单 printf("\n您想执行什么操作?\n"); printf("1. 创建新联系人\t 2. 查看电话簿\t 3. 删除联系人\t 4. 退出\n"); scanf("%d", &choice); switch (choice) { case 1: // 添加新联系人 printf("很好,让我们创建一个新的联系人:\n"); printf("输入联系人的姓名:\n"); scanf("%s", name); printf("现在输入电话号码:\n"); scanf("%s", number); addContact(name, number); break; case 2: // 查看电话簿 printf("这是您的电话簿:\n"); viewContacts(); break; case 3: // 删除联系人 printf("输入要删除的联系人的姓名:\n"); scanf("%s", name); deleteContact(name); break; } } while (choice != 4); // 循环直到用户选择“退出” return 0; } // 向电话簿添加联系人的函数 void addContact(char name[], char number[]) { FILE *pFile; pFile = fopen("Phonebook.txt", "a"); if (pFile == NULL) { printf("打开电话簿时出错。"); return; } fprintf(pFile, "姓名: %s \t 电话: %s\n", name, number); printf("联系人已创建!\n"); fclose(pFile); } // 查看电话簿中所有联系人的函数 void viewContacts() { char fileContent[200]; FILE *pFile; pFile = fopen("Phonebook.txt", "r"); while (fgets(fileContent, sizeof(fileContent), pFile)) { printf("\n%s", fileContent); } fclose(pFile); } // 从电话簿中删除联系人的函数 void deleteContact(char name[]) { FILE *pFile, *pTrash; char line[200], contactName[20], contactNumber[20]; pFile = fopen("Phonebook.txt", "r"); pTrash = fopen("Trash.txt", "w"); if (pFile == NULL || pTrash == NULL) { printf("打开文件时出错。"); return; } while (fgets(line, sizeof(line), pFile)) { sscanf(line, "姓名: %s \t 电话: %s\n", contactName, contactNumber); if (strcmp(name, contactName) != 0) { fputs(line, pTrash); } } fclose(pFile); fclose(pTrash); // 将旧的电话簿替换为更新后的版本 remove("Phonebook.txt"); rename("Trash.txt", "Phonebook.txt"); printf("联系人已删除。"); }</code>
Ce programme met en œuvre trois fonctions clés :
Ajouter un contact :
Afficher le contact :
Supprimer le contact :
Traitement de fichiers en langage C :
Traitement des chaînes :
Gestion des données de base :
<code class="language-bash">gcc -o phonebook phonebook.c</code>
<code class="language-bash">./phonebook</code>
Ce programme est un excellent point de départ, mais voici quelques améliorations que vous pouvez essayer :
Vérification des entrées :
UI améliorée :
Gestion améliorée des fichiers :
Fonctionnalités avancées :
Cet exercice m'a aidé à renforcer ma compréhension du traitement de fichiers et de la gestion de base des données en langage C. Il s'agit d'un programme simple mais pratique qui peut servir de base à des projets plus complexes. Si vous débutez en C, essayez-le : c'est une façon amusante et enrichissante de pratiquer la programmation !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!