我的这个修改函就是把文件的信息改成一堆乱码,文件的信息存infor txt ,需要自己建立一个 ?

```void change(int n)
{
    char a[50];
    int i;
    FILE *file = fopen("infor.txt", "a+");
    for (i = 1; i < 666; i++)
    {
        if (fgets(a, 100, file) != NULL)
        {
            if (i == n)
            {
            break;
            }
        }
    }
    fclose(file);

    char str2[99];
    char*temp = strtok(a, " ");
    while (temp)
    {
        i=0;
        strcpy(&str2[i],temp);
        i++;
        temp = strtok(NULL, " ");
    }
    system("cls");
    printf("\n请问您要更改什么值?\n");
    printf("--------------------------------------------------------\n");
    printf("1.卡号  2.姓名  3.时间  4.消费额  5.消费地点  6.消费类型\n--------------------------------------------------------\n请选择序号:");
    int num;
    char str1[100];
    scanf("%d", &num);
    printf("请输入新的值:");
    scanf("%s",str1);
    switch (num)
    {
    case 1:
        strcpy(&str2[0],str1);
        break;
    case 2:
        strcpy(&str2[1],str1);
        break;
    case 3:
        strcpy(&str2[2],str1);
        break;
    case 4:
        strcpy(&str2[3],str1);
        break;
    case 5:
        strcpy(&str2[4],str1);
        break;
    case 6:
        strcpy(&str2[5],str1);
        break;
    }
    del(n);
    FILE *new_file = fopen("infor.txt", "a+");
    for (i = 0; i < 6; i++) {
        fprintf(new_file,"%s",&str2[i]);
        if (i != 6) {
            fprintf(new_file, " ");
        }
    }
    fclose(new_file);

}
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐