首页 > 解决方案 > 如何更新结构中的现有元素?

问题描述

我正在开发一个必须像通讯录一样工作的程序。但是,我在尝试使用允许用户更新现有联系人信息的功能时遇到了麻烦。我曾尝试修改和使用现有函数(因为我有一个创建、搜索和删除联系人的函数)来执行此操作。下面的代码是我试图解决问题的方法。

编码:

void updateContact(){
    //Variables
    addressbook tempBook1;
    FILE* fp;
    fp = fopen("contact.txt", "r");
    char add[30], city[20], state[20], zip[10], email[30];
    char name[20];
    char name1[20], phone[20];
    int menuChoice;


    //Prompt Output
    system("cls");
    outputSearchPrompt()
    scanf("%s", name);

    //Search and Update Contact
    while (fscanf(fp, "%s %s %s %s %s %s %s \n", name1, phone, add, city, state, zip, email) != EOF) {
        if (strcmp(name, name1) == 0) {
            displayMenu()
            printf("Enter the number of what you want to update");
            printf("or enter anything else to exit:");
            scanf("%d", &menuChoice);

            switch (menuChoice) {
            case 1:
                printf("Enter the updated name:");
                //scanf("%s", tempBook1.name);
                break;
            //More Menu Options for All Elements
            default:
                printf("Okay");
            }

        }
    }
    fclose(fp);
    printf("\n\tPRESS ANY KEY TO CONTINUE");
    _getch();
    main();
}

标签: cfiledata-structuresmethodsstructure

解决方案


推荐阅读