日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

c语言实现文件数据删除视频,如何用c语言实现删除文件中指定的数据;例如

發(fā)布時間:2025/3/20 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c语言实现文件数据删除视频,如何用c语言实现删除文件中指定的数据;例如 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

匿名用戶

1級

2012-05-21 回答

你的描述不清晰,B1和B2兩個結(jié)構(gòu)數(shù)組,到底要刪除哪個?B[2]是肯定不對的,這兩個數(shù)組的長度都是2,下標(biāo)只能是0和1,即B1[0], B1[1], B2[0], B2[1]。

你還是先把問題說清楚了,這個程序不難寫。

追問:

不好意思漏掉了! 是要刪除B2[1].name 和 B2[1].point

麻煩大俠指教!

追答:

還不是很清楚,文件里存了哪幾條數(shù)據(jù)?數(shù)據(jù)在B1和B2里是如何存放的。以B2為例,B2[0]或B2[1],每個里存放一條數(shù)據(jù)還是用鏈表串起來的多條數(shù)據(jù)?

我按如下的假設(shè)實(shí)現(xiàn):

文件中vip的數(shù)據(jù)以文本方式存儲(假設(shè)文件名為vip.txt),每一條數(shù)據(jù)存一個會員姓名和會員積分信息,用空格分給,每條記錄結(jié)束是一個回車符。數(shù)據(jù)讀取出來之后放入B2[1]為頭的鏈表中,然后將B2[1]代表的數(shù)據(jù)刪除(即第一條記錄),把其余部分的數(shù)據(jù)重新寫入到文件中。

前面的定義略

main()

{

FILE *fp;

struct vip *ptr, buf;

fp = fopen("vip.txt", "r");

if(fp == NULL) {

printf("Can not open file vip.txt\n");

exit(-1);

}

ptr = NULL;

/* 讀取vip.txt中的數(shù)據(jù),存放在B2[1]為頭的鏈表中 */

while(fscanf(fp, "%s %d", buf.name, &buf.point) != EOF) {

if(ptr = NULL)

ptr = &B2[1];

else {

ptr->next = (struct vip *)malloc(sizeof(struct vip));

ptr = ptr->next;

}

strcpy(ptr->name, buf.name);

ptr->point= buf.point;

ptr->next = NULL;

}

fclose(fp);

/* 將文件中的內(nèi)容顯示在屏幕上 */

ptr = &B2[1];

while(ptr) {

printf("%s %d\n", ptr->name, ptr->point);

ptr = ptr->next;

}

/* 刪除B2[1]的內(nèi)容 */

fp = fopen("vip.txt", "w"));

if(fp == NULL) {

printf("Can not write file vip.txt\n");

/* 釋放列表中分配的內(nèi)存空間,很簡單,實(shí)現(xiàn)略 */

exit(-2);

}

/* 刪除第一條記錄,用第二條記錄的值代替第一條 */

ptr = B2[1]->next;

if(ptr != NULL) {

strcpy(B2[1].name, ptr->name);

B2[1].point = ptr->point;

B2[1].next = ptr->next;

free(ptr);

}

/* 將新的鏈表保存到文件中 */

ptr = &B2[1];

while(ptr) {

fprintf(fp, "%s %d\n", ptr->name, ptr->point);

ptr = ptr->next;

}

fclose(fp);

/* 釋放分配的內(nèi)存,實(shí)現(xiàn)略 */

}

總結(jié)

以上是生活随笔為你收集整理的c语言实现文件数据删除视频,如何用c语言实现删除文件中指定的数据;例如的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。