c语言文件写入txt失败

编译没有报错但是运行这个功能时像一个空函数一样没有实现保存为文档的功能。
函数代码,结构体定义和程序运行测试如下
需要更多请留言(•̀⌄•́)

img

img

img

int main()
{
    int input = 0;
    //创建通讯录
    struct contact con;
    //初始化通讯录
    InitContact(&con);
    do
    {
        //菜单
        menu();
        printf("请选择:\n");
        scanf("%d", &input);
        switch (input)
        {
        case add:
            Addcontact(&con);//添加
            break;
        case del:
            DelContact(&con);//删除
            break;
        case search:
            SearchContact(&con);//查找
            break;
        case modify:
            ModifyContact(&con);//修改
            break;
        case show:
            Show_contact(&con);//显示
            break;
        case sort:
            Sort_contact(&con);//排序
            break;
        case exit:
            printf("退出程序!\n");
            break;
        case 7:
            writeExcel;//保存为excel表格 
            break;
        default:
            printf("输入有误!\n");
            break;
        }
    } while (input);
    return 0;
}

你关键代码没有贴出来,也就是你怎么用switch去根据输入判断,然后调用writeExcel函数的调用代码
最好你把完整代码贴一下

【以下回答由 GPT 生成】

问题的原因在于代码中的writeExcel函数并没有被正确定义和调用,导致保存功能没有实际执行。为了解决这个问题,您可以按照以下步骤进行修改:

  1. 首先需要明确您希望将数据保存为什么样的文档格式,例如保存为文本文件(.txt)还是其他格式(例如Excel表格)。

  2. 如果您希望将数据保存为文本文件,可以使用C语言中的文件操作来实现。在保存之前,需要先将通讯录中的数据按照一定格式组织起来,例如每一条通讯录信息用一行表示,每个字段之间用逗号或制表符分隔。然后,打开一个文件(使用fopen函数),将数据写入文件中(使用fprintf函数),最后关闭文件(使用fclose函数)。

下面是示例代码:

```c #include

void writeTextFile(const struct contact con) { FILE file = fopen("contacts.txt", "w"); // 打开文件以写入模式 if (file == NULL) { printf("无法打开文件!\n"); return; }

   for (int i = 0; i < con->size; i++)
   {
       fprintf(file, "%s, %s, %s\n", con->people[i].name, con->people[i].phone, con->people[i].email);
   }

   fclose(file); // 关闭文件
   printf("保存成功!\n");

} ```

case 7的情况下调用writeTextFile函数,如下所示:

c case 7: writeTextFile(&con); // 保存为文本文件 break;

  1. 如果您希望将数据保存为其他格式(例如Excel表格),则需要使用相应的库或工具来实现。C语言本身并没有内置处理Excel的功能,因此您可以考虑使用第三方库(例如libxlsxwriter)或调用外部程序(如Python脚本)来处理Excel操作。但是这些方法涉及到额外的学习和库的安装,需要进一步研究和实践。

总结:根据您的描述,可以推测您想要实现的是将数据保存为文本文件的功能。以上是一个简单的示例代码,可以基于这个代码进行修改和扩展,以满足您的需求。希望能帮助您解决问题,如果有任何疑问,请随时提问。



【相关推荐】



如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^