国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目錄
代碼詳解
項(xiàng)目特點(diǎn)
學(xué)習(xí)收獲
代碼測試
未來改進(jìn)
總結(jié)
首頁 后端開發(fā) C++ 練習(xí) C:構(gòu)建一個簡單的電話簿應(yīng)用程序

練習(xí) C:構(gòu)建一個簡單的電話簿應(yīng)用程序

Apr 03, 2025 pm 08:15 PM
c語言 ai switch c語言編程 2025

練習(xí) C:構(gòu)建一個簡單的電話簿應(yīng)用程序

學(xué)習(xí)C語言編程的最佳途徑之一就是動手實(shí)踐。本文將帶您逐步完成一個我最近完成的項(xiàng)目:一個簡單的電話簿應(yīng)用程序。此應(yīng)用演示了C語言中的文件處理和基本數(shù)據(jù)管理,允許您添加、查看和刪除聯(lián)系人。


代碼詳解

以下是完整代碼:

#include <stdio.h>
#include <string.h>

// 函數(shù)聲明
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您想執(zhí)行什么操作?\n");
        printf("1. 創(chuàng)建新聯(lián)系人\t 2. 查看電話簿\t 3. 刪除聯(lián)系人\t 4. 退出\n");
        scanf("%d", &choice);

        switch (choice) {
            case 1:
                // 添加新聯(lián)系人
                printf("很好,讓我們創(chuàng)建一個新聯(lián)系人:\n");
                printf("請輸入聯(lián)系人的姓名:\n");
                scanf("%s", name);
                printf("現(xiàn)在輸入電話號碼:\n");
                scanf("%s", number);
                addcontact(name, number);
                break;
            case 2:
                // 查看電話簿
                printf("這是您的電話簿:\n");
                viewcontacts();
                break;
            case 3:
                // 刪除聯(lián)系人
                printf("請輸入要刪除的聯(lián)系人的姓名:\n");
                scanf("%s", name);
                deletecontact(name);
                break;
        }
    } while (choice != 4); // 循環(huán)直到用戶選擇“退出”

    return 0;
}

// 向電話簿添加聯(lián)系人的函數(shù)
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("聯(lián)系人已創(chuàng)建!\n");
    fclose(pfile);
}

// 查看電話簿中所有聯(lián)系人的函數(shù)
void viewcontacts() {
    char filecontent[200];
    FILE *pfile;
    pfile = fopen("phonebook.txt", "r");

    while (fgets(filecontent, sizeof(filecontent), pfile)) {
        printf("\n%s", filecontent);
    }

    fclose(pfile);    
}

// 從電話簿中刪除聯(lián)系人的函數(shù)
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("聯(lián)系人已刪除。");
}

項(xiàng)目特點(diǎn)

該程序?qū)崿F(xiàn)了三個核心功能:

  1. 添加聯(lián)系人:
    • 允許用戶輸入姓名和電話號碼。
    • 將聯(lián)系人信息存儲到名為 phonebook.txt 的文件中。
  2. 查看聯(lián)系人:
    • 讀取并顯示 phonebook.txt 文件中存儲的所有聯(lián)系人信息。
  3. 刪除聯(lián)系人:
    • 根據(jù)用戶輸入的姓名刪除聯(lián)系人。
    • 通過創(chuàng)建臨時(shí)文件過濾掉已刪除的聯(lián)系人,然后替換原始文件。

學(xué)習(xí)收獲

通過這個練習(xí),我鞏固了以下C語言知識:

  1. 文件處理: 熟練運(yùn)用 fopen、fclose 等文件操作函數(shù),并處理文件打開失敗的情況。
  2. 字符串操作: 使用 strcmpsscanf 等函數(shù)進(jìn)行字符串比較和解析。
  3. 基本數(shù)據(jù)管理: 學(xué)習(xí)如何在簡單的文本文件中存儲和管理數(shù)據(jù),以及通過創(chuàng)建臨時(shí)文件來更新文件內(nèi)容。

代碼測試

  1. 將代碼復(fù)制到 .c 文件中(例如 phonebook.c),并使用C編譯器(如 GCC)編譯:
gcc -o phonebook phonebook.c
  1. 運(yùn)行編譯后的程序:
./phonebook
  1. 按照屏幕提示添加、查看或刪除聯(lián)系人。
  2. 打開 phonebook.txt 文件驗(yàn)證數(shù)據(jù)是否正確存儲。

未來改進(jìn)

這個程序是一個良好的開端,未來可以考慮以下改進(jìn):

  1. 輸入驗(yàn)證: 驗(yàn)證電話號碼的有效性(例如,只包含數(shù)字),防止重復(fù)姓名。
  2. 用戶界面改進(jìn): 提供更清晰的提示信息,允許輸入包含多個單詞的姓名(使用 fgets 代替 scanf)。
  3. 增強(qiáng)文件處理: 考慮數(shù)據(jù)加密以提高安全性,使用更結(jié)構(gòu)化的文件格式(如 CSV 或 JSON)。
  4. 高級功能: 添加搜索功能,按字母順序排序聯(lián)系人。

總結(jié)

這個練習(xí)幫助我深入理解了C語言的文件處理和基本數(shù)據(jù)管理。這是一個簡單但實(shí)用的程序,可以作為更復(fù)雜項(xiàng)目的基礎(chǔ)。如果您是C語言初學(xué)者,強(qiáng)烈推薦您嘗試一下!這是一個有趣且有益的學(xué)習(xí)過程。

以上是練習(xí) C:構(gòu)建一個簡單的電話簿應(yīng)用程序的詳細(xì)內(nèi)容。更多信息請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機(jī)

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強(qiáng)大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

領(lǐng)漲2025加密市場的前二十大代幣排行榜(最新更新) 領(lǐng)漲2025加密市場的前二十大代幣排行榜(最新更新) Jul 10, 2025 pm 08:48 PM

2025年最具潛力的二十大加密資產(chǎn)包括BTC、ETH、SOL等,主要覆蓋公鏈、Layer 2、AI、DeFi和游戲等多個賽道。1.BTC憑借數(shù)字黃金屬性和ETF普及持續(xù)引領(lǐng)市場;2.ETH因智能合約平臺地位和升級鞏固生態(tài);3.SOL以高性能公鏈和開發(fā)者社區(qū)脫穎而出;4.LINK作為預(yù)言機(jī)龍頭連接現(xiàn)實(shí)數(shù)據(jù);5.RNDR構(gòu)建去中心化GPU網(wǎng)絡(luò)服務(wù)AI需求;6.IMX專注Web3游戲提供零Gas費(fèi)環(huán)境;7.ARB以成熟Layer 2技術(shù)和龐大DeFi生態(tài)領(lǐng)先;8.MATIC通過多鏈演進(jìn)成為以太坊價(jià)值層

USDC、DAI、TUSD區(qū)別與優(yōu)缺點(diǎn)對比(最近更新) USDC、DAI、TUSD區(qū)別與優(yōu)缺點(diǎn)對比(最近更新) Jul 10, 2025 pm 09:09 PM

USDC、DAI和TUSD的核心區(qū)別在于發(fā)行機(jī)制、抵押資產(chǎn)和風(fēng)險(xiǎn)特征。1.USDC是中心化穩(wěn)定幣,由Circle發(fā)行,以現(xiàn)金和短期國債為抵押,優(yōu)點(diǎn)是合規(guī)透明、流動性強(qiáng)、穩(wěn)定性高,但存在中心化審查和單點(diǎn)故障風(fēng)險(xiǎn);2.DAI是去中心化穩(wěn)定幣,通過MakerDAO協(xié)議生成,抵押品為加密資產(chǎn),具備抗審查、鏈上透明、無需許可等優(yōu)勢,但也面臨系統(tǒng)性風(fēng)險(xiǎn)、對中心化資產(chǎn)依賴及復(fù)雜性問題;3.TUSD是中心化穩(wěn)定幣,強(qiáng)調(diào)實(shí)時(shí)鏈上儲備證明,提供更高頻透明度驗(yàn)證,但市場份額較小,流動性較弱。三者在抵押物類型、去中心化

鏈上資金流向大曝光:聰明錢正在下注哪些新代幣? 鏈上資金流向大曝光:聰明錢正在下注哪些新代幣? Jul 16, 2025 am 10:15 AM

普通投資者可通過追蹤“聰明錢”發(fā)現(xiàn)潛力代幣,其為高盈利地址,關(guān)注其動向能提供領(lǐng)先指標(biāo)。1.使用Nansen、Arkham Intelligence等工具分析鏈上數(shù)據(jù),查看聰明錢的買入與持倉情況;2.通過Dune Analytics獲取社區(qū)創(chuàng)建的儀表板,監(jiān)測資金流向;3.關(guān)注Lookonchain等平臺獲取實(shí)時(shí)情報(bào)。近期聰明錢正布局再質(zhì)押與LRT賽道、DePIN項(xiàng)目、模塊化生態(tài)及RWA協(xié)議,如某LRT協(xié)議獲大量早期存款,某DePIN項(xiàng)目被持續(xù)積累,某游戲公鏈獲產(chǎn)業(yè)金庫支持,某RWA協(xié)議吸引機(jī)構(gòu)入場

穩(wěn)定幣DAI適合什么人使用_去中心化穩(wěn)定幣使用場景解析 穩(wěn)定幣DAI適合什么人使用_去中心化穩(wěn)定幣使用場景解析 Jul 15, 2025 pm 11:27 PM

DAI適合重視去中心化理念、積極參與DeFi生態(tài)、需要跨鏈資產(chǎn)流動性及追求資產(chǎn)透明與自治的用戶。1. 去中心化理念支持者信任智能合約與社區(qū)治理;2. DeFi用戶可用于借貸、質(zhì)押、流動性挖礦;3. 跨鏈用戶可實(shí)現(xiàn)多鏈資產(chǎn)靈活轉(zhuǎn)移;4. 治理參與者可通過投票影響系統(tǒng)決策。其主要場景包括去中心化借貸、資產(chǎn)避險(xiǎn)、流動性挖礦、跨境支付及社區(qū)治理,同時(shí)需注意系統(tǒng)風(fēng)險(xiǎn)、抵押波動風(fēng)險(xiǎn)和技術(shù)門檻問題。

最適合亞洲用戶的加密貨幣平臺TOP5(2025最新排行榜) 最適合亞洲用戶的加密貨幣平臺TOP5(2025最新排行榜) Jul 11, 2025 pm 09:42 PM

在全球數(shù)字資產(chǎn)交易的浪潮中,選擇一個安全、高效且符合自身需求的交易平臺至關(guān)重要,特別是對于身處亞洲的用戶而言,面對眾多平臺、復(fù)雜的功能和不斷變化的監(jiān)管環(huán)境,如何慧眼識珠,找到最適合自己的加密貨幣平臺成為了許多人的難題。本篇文章旨在為您深入剖析2025年最適合亞洲用戶的TOP5加密貨幣平臺,助您在數(shù)字資產(chǎn)的世界里穩(wěn)健前行。

歐易新版本v6.127一鍵更新教程_歐易新版本v6.127安卓快速更新操作 歐易新版本v6.127一鍵更新教程_歐易新版本v6.127安卓快速更新操作 Jul 11, 2025 pm 10:09 PM

歐易最新版本為v6.1271,更新教程為:1、 卸載舊版或非官方APK;2. 點(diǎn)擊文章提供的官方下載地址下載最新APK;3. 開啟手機(jī)安裝權(quán)限;4. 安裝并登錄驗(yàn)證功能。建議使用v6.127.0或更高版本,若當(dāng)前版本低于v6.124或來自第三方平臺,應(yīng)立即切換至官方渠道以保障交易安全與功能穩(wěn)定。

加密幣最新行情預(yù)測(2025年-2030年) 加密幣最新行情預(yù)測(2025年-2030年) Jul 11, 2025 pm 08:51 PM

2025-2030年主要加密資產(chǎn)價(jià)格潛力受技術(shù)發(fā)展、市場周期和宏觀經(jīng)濟(jì)驅(qū)動。1.比特幣(BTC)因減半事件和ETF推出,預(yù)計(jì)2025年牛市突破歷史高點(diǎn),2030年或達(dá)新數(shù)量級;2.以太坊(ETH)受益于網(wǎng)絡(luò)升級和生態(tài)擴(kuò)張,長期價(jià)值看漲;3.Solana、BNB、Chainlink等項(xiàng)目則依賴生態(tài)發(fā)展與技術(shù)穩(wěn)定性,整體市場將走向成熟但伴隨高風(fēng)險(xiǎn)。

歐易o(hù)kex安卓正版2025 最新官方版本 v6.128.0 歐易o(hù)kex安卓正版2025 最新官方版本 v6.128.0 Jul 10, 2025 pm 09:24 PM

歐易o(hù)kex是一款專業(yè)的數(shù)字資產(chǎn)交易與管理工具,為廣大用戶提供安全、穩(wěn)定、可靠的交易服務(wù)。它支持多種主流數(shù)字資產(chǎn)的交易,并提供豐富的金融工具和產(chǎn)品,幫助用戶輕松管理和配置自己的數(shù)字資產(chǎn)。

See all articles