关于c语言读取文件信息到链表,怎么操作?

问题:在读取文件数据到链表时好像出错了,除了"w+"的打开方式会让打印函数在程序运行,其他的打开方式在程序运行后不显示。图片说明

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<malloc.h>
struct stu {
    int id;
    int age;
    char name[10];
    int score;
    struct stu *next;
};
void printf_stu(struct stu * head)//打印函数
{
    struct stu *p = head;
    printf("学生成绩\n");
    printf("%-2s  %-2s\n", "学号", "成绩");
    while (p != NULL) {
        printf("%d   %d\n", p->id, p->score);
        p = p->next;
    }
}
struct stu * create(int n) {//输入链表函数
    int i;
    struct stu *head = NULL, *p, *q = NULL;
    for (i = 1; i <= n; i++) {
        if ((p = (struct stu *)malloc(sizeof(struct stu))) == NULL) {
            printf("不能分配!");
            exit(0);
        }
        p->next = NULL;
        printf("第%d个学生的信息:", i);
        scanf("%d%d", &p->id, &p->score);
        if (i == 1) head = p; else q->next = p;
        q = p;
    }
    return head;
}
void open_in(struct stu *head) {//输入文件函数1
    FILE *fp;
    struct stu *p = head;
    fp = fopen("c://学生信息表.txt", "w");
    fprintf(fp, "%s  %s\n", "学号", "成绩");
    while (p != NULL) {
        fprintf(fp, "%d  %d\n", p->id, p->score);
        p = p->next;
    }
    fclose(fp);
}
void open_inpp(struct stu *head) {//输入文件函数2
    FILE *fp;
    struct stu *p = head;
    fp = fopen("c://学生信息表.txt", "a+");
    fprintf(fp, "%s  %s\n", "学号", "成绩");
    while (p != NULL) {
        fprintf(fp, "4%d  4%d\n", p->id, p->score);
        p = p->next;
    }
    fclose(fp);
}
struct stu *createlink()//读取文件数据函数
{
    struct stu *head = (struct stu *)malloc(sizeof(struct stu));
    int t, y;
    struct stu *p;
    struct stu *q;
    FILE * fp;
    p = q = head;
    fp = fopen("c://学生信息表.txt", "r");
    while (fscanf(fp, "%d  %d\n", &t, &y) != EOF)
    {
        q = (struct stu*)malloc(sizeof(struct stu));
        q->id = t;
        q->score = y;
        p->next = q;
        p = q;
    }
    p->next = NULL;
    head = p;
    return head;
}
void main() {
    int n, i,sel;
    struct stu *head = NULL,*p;
    for (i = 1; i > 0; i++) {
        printf("1-输入学生数据   2-添加学生数据\n");
        printf("3-打印学生数据");
        printf("请输入选择(1-3)\n");
        scanf("%d", &sel);
        switch (sel) {
        case 3:
            head = createlink();
            printf_stu(head);
            break;
        case 2:
            open_inpp(head);
            break;
        case 1: printf("输入n:");
            scanf("%d", &n);
            head = create(n);
            open_in(head);
            break;
        }
        printf("1-回到上一页  2-结束\n");
        scanf("%d", &sel);
        if (sel > 1) break;
    }
    system("pause");
}

1个回答

fp = fopen("c://学生信息表.txt", "a+");
路径是反斜杠,不是除号斜杠

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

Python+OpenCV计算机视觉

C语言链表与文件 从文件读数据到链表里

#include<stdio.h> #include<stdlib.h> #include<string.h> #include<malloc.h> //定义全局变量 int isEmpty=0;//标志,判断链表是否为空 //!!!定义单链表结构体!!! typedef struct Node{ int NUM;//类型总数 char NAME[100];//各类型名称 int num; //各类型下的货物总数 struct Node*next; }Node; //函数声明 Node*create(int n,Node*L); Node*input(Node*L); Node*output(Node*L); Node*outnum(Node*L); Node*outname(Node*L); Node*current(Node*L); void search(Node*L); void print(Node*L); void searchnum(Node*L); void searchname(Node*L); void display(int n,Node*L); //========新增加的函数======== Node*append(Node*L); //主函数 void main() { //创建文件 FILE*fp; fp = fopen("storehouse.txt","w"); fwrite(); fclose(fp); int x; int n;//初次输入的大小 Node *L; if(!(L=(Node *)malloc(sizeof(Node)))) //分配空间 { printf("\n"); exit(1); } printf("欢迎使用我的仓库管理系统!\n"); while(1) { //主菜单开始 printf("==========================\n"); printf("1.显示货物类型列表\n"); printf("2.增加货物类型\n"); printf("3.删除货物类型\n"); printf("4.货物入库\n"); printf("5.货物出库\n"); printf("6.库存显示\n"); printf("7.退出\n"); printf("==========================\n"); //主菜单结束 printf("选择1-7:"); scanf("%d",&x); switch(x) { case 1:;break; case 2:printf("请输入最初的货物类型数量:\n"); scanf("%d",&n); create(n,L); break; case 3:;break; case 4:;break; case 5:;break; case 6:display(n,L);break; case 7:;break; default:printf("input error!\nplaese input1-7"); } } } =========================== 想要读入货物信息:货物名称 货物价格 所属类型?这个怎么搞! [图片说明](https://img-ask.csdn.net/upload/201805/29/1527585662_34177.png) //函数 //1.创建链表节点 Node*create(int n,Node*L) { Node*pTail=L; L->next=NULL; Node*p; //利用尾插建立单链表 int i; for(i=1;i<=n;i++) { p=(Node*)malloc(sizeof(Node)); if(p==NULL) { printf("申请内存空间失败!\n"); } printf("请输入第%d种类型编号:",i); scanf("%d",&p->NUM); printf("请输入第%d种类型名称:",i); scanf("%s",&p->NAME); printf("请输入第%d种类型库存:",i); scanf("%d",&p->num); putchar('\n'); pTail->next=p; pTail=p; } p->next=NULL; return L; } //货物显示函数 void display(int n,Node*L) { Node*p; p=(Node*)malloc(sizeof(Node)); p=L->next;; int i=0; for(i=0;i<n;i++) //{ //while(p!=NULL) { printf("第%d种类型名称:",p->NUM); printf("%s\n",p->NAME); printf("第%d种类型库存:",p->NUM); printf("%d\n",p->num); putchar('\n'); p=p->next; //} } }

c语言读取文件出现一串乱码

c语言读取文件数据时最后出现一串乱码怎么办![图片](https://img-ask.csdn.net/upload/201603/11/1457701905_263874.jpg)![图片](https://img-ask.csdn.net/upload/201603/11/1457701930_642613.jpg)

c语言怎么把一个双向链表写入文件

用c语言这一个双向链表,然后用fwrite写入文件,用fread读取,这个过程和单链表是一样的吗?

从txt文件中读取数据存入到链表,即使文件没有内容也会存上数字和乱码

代码如下: ``` contacts* read(char* filename)//把文件读入链表 { FILE* fp; if ((fp = fopen("people.txt","r")) == NULL)//以可读写方式打开文件,如果没有则建立一个 { printf ("文件打开失败!\n"); exit (1); } contacts *head, *q, *p, *h; head = NULL; p = (contacts*)malloc(sizeof(contacts)); if(NULL == p) { printf("内存分配错误"); exit(1); } q = p; //开始时,p和q均指向第1个结点 while (!feof(fp))//创建链表, 并把文件内容输入 { n++; if (n == 1) { head = p; } else { q->next = p; } q = p;//q是最后一个结点 p = (contacts*)malloc(sizeof(contacts)); fscanf(fp,"%d %s %s",&p->no,&p->name,&p->sex); /*int i=0; for(i=0;i<8;i++) { fscanf(fp,"%s",&p->phonenumber[i]); } fscanf(fp,"%s %d %d %d",&p->address,&p->byear,&p->bmonth,&p->bday);*/ }; q->next = NULL;//输入完毕后,q->next为NULL h = head; fclose(fp); return h; } void browse(contacts* head)//显示程序中所有记录的信息。 { while(head)//当head不为空的时候 { printf("\n==================================\ \n序号:%d\ \n姓名:%s 性别:%s",head->no,head->name,head->sex); /*printf("\n电话号码:\n"); int i; for(i=0; i<8; i++) { if(strlen(head->phonenumber[i]) == 0) { continue; } else { printf("%s\n",head->phonenumber[i]); } } printf("住址:%s ",head->address); printf("生日:%d年%d月%d日",head->byear,head->bmonth,head->bday);*/ printf("\n==================================\n"); head = head->next; } } ``` 运行结果 ![图片说明](https://img-ask.csdn.net/upload/201903/02/1551542218_627768.jpg) 为啥会这样。

c语言如何把链表数据写入文件?

在写一个通讯录管理系统,然后要把联系人的信息结构体放到链表中,然后将链表里的信息写入文件中,下次打开时还能从该文件读出数据。 链表头指针TEL,结构体中有name,tel,style,mail 四项,存入“telephone.txt"中。 我是这样写的 /*退出程序时将数据写回telephone.txt进行更新*/ void ReadBack() { FILE *TEL = fopen("telephone.txt","wt+"); ID *te = id->next; while (te != NULL) { fwrite(id,sizeof(ID),1,TEL); te = te->next; } fclose(TEL); } 结果文件中是一串乱字 是 屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯?f 请给出代码,本人初学,多谢!

C语言动态链表写入文件

struct Txl { char name[20]; long long tel; struct Txl *next; }; int n; struct Txl *creat(void) { struct Txl *p1,*p2,*head; n=0; p1=p2=(struct Txl*)malloc(LEN); memset(p1,0,sizeof(LEN)); memset(p2,0,sizeof(LEN)); printf("姓名\t"); scanf("%s",&p1->name); fflush(stdin); printf("电话\t"); scanf("%lld",&p1->tel); fflush(stdin); head=NULL; while(p1->tel!=0) { n=n+1; if(n==1)head=p1; else p2->next=p1; p2=p1; p1=(struct Txl*)malloc(LEN); memset(p1,0,sizeof(LEN)); printf("姓名\t"); scanf("%s",&p1->name); fflush(stdin); printf("电话\t"); scanf("%lld",&p1->tel); fflush(stdin); } p2->next=NULL; return(head); } void prin(struct Txl *head){...}//输出。。。 void save(struct Txl *head) { int i; struct Txl *p; FILE *fp; p=head; if((fp=fopen("1.txt","wb"))==NULL) { printf("不能打开文件"); return; } for(i=0;i<n;i++) { if(fwrite(p,LEN,1,fp)!=1) { printf("写入失败"); } p=p->next; } fclose(fp); } void main(){...}

文件内容读出为链表,求教,和文件内容不一样啊

#include<stdio.h> #include<stdlib.h> #include <string.h> int n1,n2; struct stu{ int num; char name[20]; float score[6]; float sum; float ave; struct stu *next; }; struct stu *readfile(FILE *fp){ struct stu *p,*q,*top; char name[20]; int num,i; float sum,ave,score[6]; FILE *pc; if((fp=fopen("www.txt","r"))==NULL){ printf("File open error!"); exit(0); } top=(struct stu*)malloc(sizeof(struct stu)); fscanf(fp,"%-10d%-20s",&(top->num),&(top->name)); for(i=0;i<n2;i++){ fscanf(fp,"%-10.1f",&top->score[i]); } fscanf(fp,"%-10.1f%-10.1f",&top->sum ,&top->ave ); q=top; while(!feof(fp)){ p=(struct stu*)malloc(sizeof(struct stu)); fscanf(fp,"%-10d%-20s",&(p->num),&(p->name)); for(i=0;i<n2;i++){ fscanf(fp,"%-10.1f",&p->score[i]); } fscanf(fp,"%-10.1f%-10.1f",&p->sum ,&p->ave ); p->next=NULL; q->next=p; q=p; } return top; }![图片说明](https://img-ask.csdn.net/upload/201612/18/1482067608_300570.png)

关于c语言文件的读取和修改

直接从文件中读取到屏幕 查询 修改 和把文件以链表的形式写入内存在查询 读取 修改 哪个效率高呢? 把文件写入到链表也需要时间吧

c语言,为什么用fread 读入文件 链表 每次都会多一个节点?

做文件输入输出的时候,用的是结构体链表,放入的链表只有两个一个是头, 另一个是有内容的(头无内容)。但是每次读出的时候总会多出一个节点, 结构体 和 读入 读出 代码如下 ``` typedef struct vip //定义VIP用户的结构体 { char card[19]; char name[11]; char tel[14]; int time; char date[13]; char key[11]; struct vip *next; }vip; typedef struct cus //定义登陆用户的结构体(包括临时和VIP) { char card[19]; int lie; //位置; char date[13]; //上机日期 time_t upt; //上机时间 time_t downt; //下机时间 int in; //押金 int realin; //实际收入 int flag; //1 激活状态 0 未激活(下机)状态 int identify; //1 VIP 用户 2 临时用户 char tel[14]; struct cus *next; }cus; void load(vip *head1,cus *head2,int longth) //装载VIP 和 临时登陆 的 记录 { FILE *fp1,*fp2; vip *p1,*tail1 = head1; cus *p2,*tail2 = head2; fp1 = fopen("vip.bin","rb") if((fp2 = fopen("day.bin","rb")) == NULL) { return ; } while(!feof(fp1)) { p1 = (vip *)malloc(sizeof(vip)*1); fread(p1,sizeof(vip),1,fp1); tail1 ->next = p1; tail1 = p1; tail1 ->next = NULL; // longth ++; printf("1"); } while(!feof(fp2)) { p2 = (cus *)malloc(sizeof(cus)*1); fread(p2,sizeof(cus),1,fp2); tail2 ->next = p2; tail2 = p2; tail2 ->next = NULL; } close(fp1); close(fp2); } void a(vip *head1,cus *head2) //信息保存 { FILE *fp1,*fp2; vip *p1 = head1 ->next; cus *p2 = head2 ->next; fp1 = fopen("vip.bin","wb"); fp2 = fopen("day.bin","wb"); while(p1 != NULL) { fwrite(p1,sizeof(vip),1,fp1); p1 = p1 ->next; } while(p2 != NULL) { fwrite(p2,sizeof(cus),1,fp2); p2 = p2 ->next; } close(fp1); close(fp2); } ``` 当我运行程序时,(保存的时候 只有两个 节点,并且尾next为空),保存两个节点,第二次读取的时候却有三个节点,不知道问题出在了哪里。求大神帮忙看看!!!!!

用fscanf和fgets从文件读取数据存储到链表失败是为什么??

我建立了链表结构,然后从文件导入数据,然后输出链表内容,发现输出的内容顺序不对内容也有点地方出错了! (下面是代码) #include <iostream> #include<fstream> #include<stdlib.h> #include<string.h> #include<stdio.h> typedef struct node{ char question[200]; char option_A[50]; char option_B[50]; char option_C[50]; char option_D[50]; char answer[3]; char respond[3]; char analysis[200]; int length; struct node *next; }LNODE,*LinkList; int main(void) { LNODE *L; L=new LNODE; L->next=NULL; L->length=0; LNODE *p; LNODE *q; q=L; int i; FILE *tk; if((tk=fopen("//Users//apple//Documents//Test System//test question.txt","r"))==NULL) { printf("File open error!\n"); exit(0); } while(!feof(tk)) { fgets(q->question,sizeof(LNODE),tk); fgets(q->option_A,sizeof(LNODE),tk); fgets(q->option_B,sizeof(LNODE),tk); fgets(q->option_C,sizeof(LNODE),tk); fgets(q->option_D,sizeof(LNODE),tk); fgets(q->answer,sizeof(LNODE),tk); fgets(q->analysis,sizeof(LNODE),tk); p=new LNODE; p->next=NULL; q->next=p; q=q->next; } if(fclose(tk)) { printf("Can not close the file!\n"); exit(0); } q=L; while(q->next) { printf("%s",q->question); printf("%s",q->option_A); printf("%s",q->option_B); printf("%s",q->option_C); printf("%s",q->option_D); printf("%s",q->answer); printf("%s",q->analysis); q=q->next; } } (这是文档里的内容) 在数据结构中,从逻辑结构上可以把数据结构分成() A.动态结构和静态结构 B.紧凑结构和非紧凑结构 C.线性结构和非线性结构 D.内部结构和外部结构 C 略 与数据元素本身的形式,内容,相对位置,个数无关的是数据的() A.存储结构 B.存储实现 C.逻辑结构 D.运算实现 C 略 通常要求同一逻辑结构中的所有数据元素具有相同的特性,这意味着() A.数据具有同一特点 B.每个数据元素都一样 C.不仅每个数据元素所包含的数据项都一样,而且对应数据项的类型要一致 D.数据元素所包含的数据项的个数要相等 C 只有这样系统才能高效统一的对数据进行管理。 算法的时间复杂度取决于() A.问题的规模 B.待处理的数据的初态 C.计算机的配置 D.A和B D 略 顺序表中第一个元素的储存地址是100,每个元素的长度为2,则第5个元素的地址是() A.100 B.108 C.100 D.120 B 100+(5-1)*2==108 线性表若采用链式存储结构,要求内存中可用存储单元的地址() A.部分是连续的 B.一定是不连续的 C.必须是连续的 D.连续或不连续都可以 D 因为链表有指针跟踪从而连不连续都可以。 用链接方式存储的队列,在进行删除运算时() A.仅修改头指针 B.仅修改尾指针 C.头尾指针都一定要修改 D.头尾指针可能都要修改 D 一般只修改头指针,但是删除的结点若为最后一个时,则要重新对尾指针赋值。 一个递归算法必须包括() A.递归部分 B.终止条件和递归部分 C.迭代部分 D.终止条件和迭代部分 D 略 串是一种特殊的线性表,其特殊性体现在() A.可以顺序储存 B.可以链式储存 C.数据元素是单个字符 D.数据元素可以是多个字符 C 串是一种内容受限的线性表。 把一棵树转化为二叉树后,这棵二叉树的形态是() A.唯一的 B.有多种 C.有多种,但根结点都没有左孩子 D.有多种,但根结点都没有右孩子 A 略。 利用二叉链表存储树,则根结点的右指针() A.指向最左孩子 B.指向最右孩子 C.非空 D.为空 C 右指针指向兄弟结点。 在以下的存储形式中,不是树的存储形式的是() A.双亲表示法 B.孩子链表表示法 C.孩子兄弟表示法 D.顺序存储表示法 D 常用孩子兄弟表示法转化为二叉树进行储存。 在一个无向图,所有顶点的度数之和等于图的边数的()倍 A.1/2 B.1 C.2 D.4 A 略 折半查找与二叉排序树的时间性能() A.相同 B.完全不同 C.有时不相同 D.数量级都是O(log2n) C 要看初始数据的状态。 堆的形状是一棵() A.二叉排序树 B.满二叉树 C.完全二叉树 D.平衡二叉树 C 略 若一组记录的排序码为(46,79,56,38,40,84),则利用堆排序的方式建立的初始堆为() A.79,46,56,38,40,84 B.84,79,56,38,40,46 C.84,79,56,46,40,38 D.84,56,79,40,46,38 C 画出图去找矛盾。 快速排序在下列()最易发挥作用 A.被排序的数据中具有多个相同的排序码 B.被排序的数据已经基本有序 C.被排序的数据完全无序 D.被排序的数据中的最大值和最小值相差悬殊 C 完全无序时用快速排序。 (这是输出后的内容,第一行与原文档的根本不同,而且后面也有很多乱的错误的) ![图片说明](https://img-ask.csdn.net/upload/201812/31/1546187214_133620.jpeg) 有哪位大神指导一下小白!!

c语言空txt文件读出乱码

新建的空的txt文件,读取telephone.txt到链表,显示所有信息时读出的是一堆乱码,但是txt文件里没有存放任何数据。 /*读取telephone.txt文件中的内容创建学生链表*/ ID* create() { ID *head; ID *p1,*p2; p2 = (ID*)malloc(LENTEL); head = p2; FILE *fp; if((fp = fopen("telephone.txt","r")) == NULL) { printf("联系人文件打开错误,请将telephone.txt放置与程序同一目录下!\n"); exit(0); } while(!feof(fp)) { p1 = (ID*)malloc(LENTEL); fscanf(fp,"%s%s%s%s\n",p1->name,p1->tele,p1->style,p1->mail); p1->next = NULL; p2->next = p1; p2 = p1; } fclose(fp); return head; } //显示所有联系人 void Print_Inquire_All() { void menu_print_out(); ID *p1 = id->next; menu_print_out(); printf("姓名 电话 分类 邮箱\n"); while (p1!=NULL) { printf("%s\t%s\t%s\t%s\n",p1->name,p1->tele,p1->style,p1->mail); p1 = p1->next; } system("pause"); }

从文件中读取创立链表没问题,但是将链表重新导入文件时出现多余数据?

``` char order_num[20], movie_name[40]; SYSTEMTIME sys; int r = 0 , count=0, hall, row, column; FILE *fp; order info[200], *head, *p ,*p1 , *p2; head = NULL; GetLocalTime( &sys ); if(!(fp=fopen("C:\\Users\\18092\\Desktop\\c_project\\documents\\orders.txt","r"))) { printf("Open error!\n"); exit(1); } fscanf(fp,"%s %s %s %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d", info[0].u_account , info[0].order_num , info[0].movie_name,&info[0].hall_num, &info[0].date.year, &info[0].date.month ,&info[0].date.day, &info[0].start_time.hour, &info[0].start_time.min, &info[0].end_time.hour, &info[0].end_time.min, &info[0].row, &info[0].column, &info[0].pay, &info[0].pay_date.year, &info[0].pay_date.month, &info[0].pay_date.day, &info[0].pay_time.hour, &info[0].pay_time.min, &info[0].sign); while(!feof(fp)) { p=(order*)malloc(sizeof(order)); strcpy(p->u_account,info[r].u_account); strcpy(p->order_num,info[r].order_num); strcpy(p->movie_name,info[r].movie_name); p->hall_num = info[r].hall_num; p->date.year = info[r].date.year; p->date.month = info[r].date.month; p->date.day = info[r].date.day; p->start_time.hour = info[r].start_time.hour ; p->start_time.min = info[r].start_time.min ; p->end_time.hour = info[r].end_time.hour ; p->end_time.min = info[r].end_time.min ; p->row = info[r].row; p->column = info[r].column; p->pay = info[r].pay; p->pay_date.year = info[r].pay_date.year; p->pay_date.month =info[r].pay_date.month; p->pay_date.day =info[r].pay_date.day; p->pay_time.hour =info[r].pay_time.hour; p->pay_time.min =info[r].pay_time.min; p->sign =info[r].sign; head = order_InsertList(head,p); r++; fscanf(fp,"%s %s %s %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d", info[r].u_account , info[r].order_num , info[r].movie_name,&info[r].hall_num, &info[r].date.year, &info[r].date.month ,&info[r].date.day, &info[r].start_time.hour, &info[r].start_time.min, &info[r].end_time.hour, &info[r].end_time.min, &info[r].row , &info[r].column, &info[r].pay, &info[r].pay_date.year, &info[r].pay_date.month , &info[r].pay_date.day, &info[r].pay_time.hour, &info[r].pay_time.min, &info[r].sign); } fclose(fp); printf("****************************************************************************************************\n"); printf("| 用户账号 | 订单号 | 电影名 |放映厅号| 日期 | 时间 | 座位 |价格| 购买日期 | 购买时间 |\n"); printf("****************************************************************************************************\n"); for(p1 = p2 = head ;p1 != NULL;p1 = p2) { if( ((strcmp( account , p1->u_account ) == 0) && (p1->sign == 1)) && (((p1->date.month > sys.wMonth) || ((p1->date.month == sys.wMonth) && (p1->date.day > sys.wDay))) || (((p1->date.month == sys.wMonth) && (p1->date.day == sys.wDay) && (p1->start_time.hour > sys.wHour)) || ((p1->date.month == sys.wMonth) && (p1->date.day == sys.wDay) && (p1->start_time .hour == sys.wHour) && (p1->start_time .min > sys.wMinute)))) ) { printf("%-12s|%-12s|%-12s|%-2d|%4d年%2d月%2d日|%02d:%02d--%02d:%02d|%d行 %d列|%4d|%4d年%2d月%2d日|%02d:%02d|\n", p1->u_account ,p1->order_num , p1->movie_name,p1->hall_num , p1->date.year, p1->date.month ,p1->date.day, p1->start_time.hour, p1->start_time.min, p1->end_time.hour, p1->end_time.min, p1->row , p1->column, p1->pay,p1->pay_date.year, p1->pay_date.month , p1->pay_date.day, p1->pay_time.hour, p1->pay_time.min); printf("****************************************************************************************************\n"); count++; } p2 = p1->next ; } if(!count) { printf("未找到可退的订单!\n"); system("pause"); } else { printf("请输入您退订订单的单号:\n"); scanf("%s",order_num); for(p1 = p2 = head ;p1 != NULL;p1 = p2) { if( strcmp( order_num , p1->order_num ) == 0) { p1->sign = 0; hall = p1->hall_num ; row = p1->row ; column = p1->column ; strcpy(movie_name, p1->movie_name); } p2 = p1->next ; } if(!(fp=fopen("C:\\Users\\18092\\Desktop\\c_project\\documents\\orders.txt","w"))) { printf("Open error!\n"); exit(1); } for(p1 = p2 = head ;p1 != NULL;p1 = p2) { p2 = p1->next ; fprintf(fp,"%s %s %s %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d\n", p1->u_account , p1->order_num , p1->movie_name, p1->hall_num, p1->date.year, p1->date.month , p1->date.day, p1->start_time.hour, p1->start_time.min, p1->end_time.hour, p1->end_time.min, p1->row , p1->column, p1->pay, p1->pay_date.year, p1->pay_date.month , p1->pay_date.day, p1->pay_time.hour ,p1->pay_time.min ,p1->sign); } fclose(fp); printf("退票成功!\n"); seat_cover(hall, row, column, movie_name); system("pause"); system("cls"); } } `````` typedef struct movie{ //电影信息结构 char movie_num[40]; //电影编号 char movie_name[60]; //电影名 int price; //电影单价 struct{ int year; int month; int day; }date; //日期 struct{ int hour; int min; }start_time; //开始时间 struct{ int hour; int min; }end_time; //结束时间 int hall_num; //放映厅号 char seat[ROW*COLUMN]; //座位表 struct movie *next; //指针 }movie; ``` ``` if(!(fp=fopen("C:\\Users\\18092\\Desktop\\c_project\\documents\\orders.txt","w"))) { printf("Open error!\n"); exit(1); } for(p1 = p2 = head ;p1 != NULL;p1 = p2) { p2 = p1->next ; fprintf(fp,"%s %s %s %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d\n", p1->u_account , p1->order_num , p1->movie_name, p1->hall_num, p1->date.year, p1->date.month , p1->date.day, p1->start_time.hour, p1->start_time.min, p1->end_time.hour, p1->end_time.min, p1->row , p1->column, p1->pay, p1->pay_date.year, p1->pay_date.month , p1->pay_date.day, p1->pay_time.hour ,p1->pay_time.min ,p1->sign); } fclose(fp); ![图片说明](https://img-ask.csdn.net/upload/202006/03/1591194089_869499.jpg) ![图片说明](https://img-ask.csdn.net/upload/202006/03/1591194052_379705.png)![图片说明](https://img-ask.csdn.net/upload/202006/03/1591194060_666858.png) 求大佬帮小弟解决一下!读取前的文件是没有圈起来的部分!创建的链表输出也没问题!

怎么用fscanf把文件的数据读入链表?

我下面这段代码是哪里出错了? 写入文件没有问题 把文件里的东西写入链表 之后在输出链表 只输出第一行数据 之后都是0 #include "stdio.h" #include "stdlib.h" int n=0; struct stu { int num; char name[100]; float score; struct stu *next; }; void str(struct stu *h) { while(h!=NULL) { printf("%d %s %f\n",h->num,h->name,h->score); h=h->next; } } void w(struct stu *h) { FILE *file; char fname[100]; int i; struct stu *pthis,*head,*p1,*p2; printf("请输入要写入的文件名\n"); scanf("%s",fname); file=fopen(fname,"w"); if(file==NULL) { printf("打开文件错误\n");return; } printf("\n\n链表内容将被写入文件\n"); if(h==NULL) { printf("错误,没有数据!\n"); return; } pthis=h; while(pthis!=NULL) { fprintf(file,"%d %s %f",pthis->num,pthis->name,pthis->score); //fwrite(pthis,sizeof(struct stu),1,file); pthis=pthis->next; } fclose(file); file=fopen(fname,"r"); p1=p2=(struct stu *)malloc(sizeof(struct stu)); fscanf(file,"%d %s %f",&p1->num,p1->name,&p1->score); head=p1; //fread(p1,sizeof(struct stu),1,file); //printf("%d %s %f",p1->num,p1->name,p1->score); while(n>0) { p1=(struct stu *)malloc(sizeof(struct stu)); p2->next=p1; fscanf(file,"%d %s %f",&p1->num,p1->name,&p1->score); //p2->next=p1; p2=p1; n--; } str(head); fclose(file); } main() { struct stu *head,*p1,*p2; head=NULL; p1=p2=(struct stu *)malloc(sizeof(struct stu)); printf("依次输入学号、姓名、成绩\n"); scanf("%d%s%f",&p1->num,p1->name,&p1->score); head=p1; while(p1->num!=0) { n++; p1=(struct stu *)malloc(sizeof(struct stu)); printf("依次输入学号、姓名、成绩\n"); scanf("%d%s%f",&p1->num,p1->name,&p1->score); p2->next=p1; p2=p1; } str(head); fflush(stdin); w(head); }

怎么把这样的文件文本按照姓名分数的形式读入链表?

程序运行起来,检测是否存在data.txt,如果存在,读取文件内容,并保存在链表中!再一一输出,输出结束问是否要更新文件,支持数据修改(如某学生分数修改成100分),支持数据添加(加入一个学生的成绩)! 如果不存在data.txt,用链表记录输入的学生名字,分数;将链表数据导入到文件中!并退出程序! 要求: 用键值对保存文件实现一个程序 保存的文件手动打开看到如: readline; name1:zhangsan score1:100 name2:lisi score2:90 name3:wangwu score3:60 ............... ...............

c语言读写文件时出现的问题

为什么我我读文件只能出现第一个数据。其他的数据都不会出现。![图片说明](https://img-ask.csdn.net/upload/201609/06/1473176549_597768.png) --------- ![图片说明](https://img-ask.csdn.net/upload/201609/06/1473176569_324374.png) ---------一下是源码 #include<stdio.h> #include<stdlib.h> #define N 30 #include<string.h> struct recipe{ char food[10]; float price; struct recipe *next; }; struct recipe* creat() { int x; int i=0; struct recipe *head,*p,*tail; head=tail=NULL; printf("请输入新添加的菜品数量:"); scanf("%d",&x); for(i=0;i<x;i++){ p=(struct recipe *)malloc(sizeof(struct recipe)); if(p==NULL) { printf("分配内存失败."); exit(1); } p->next=NULL; printf("请输入菜品的名称:"); scanf("%s",p->food); printf("请输入菜品价格:"); scanf("%f",&p->price); if(head==NULL) { head=p; tail=p; } else { tail->next=p; tail=p; } } return head; } void displayRecipe(struct recipe *p) { printf("\t\t菜名--------------------------------价格\n"); while(p!=NULL) { printf("\t\t%s-------------------------------%f\n",p->food,p->price); p=p->next; } } int choosemenu(){ printf("\t\t\t[1]输入新的菜品信息\n"); printf("\t\t\t[2]查看现有菜品信息\t\n"); printf("\t\t\t[3]将现有菜品价格从小到大排序\t\n"); printf("\t\t\t[4]查找现有菜品信息\t\n"); printf("\t\t\t[5]删除现有菜品信息\t\n"); printf("\t\t\t[6]保存修改菜品信息\t\n"); printf("\t\t\t[7]退出菜品信息管理系统\t\n"); printf("\t\t\t[8]读取已有文件信息.\t\n"); printf("\t\t\t[9]清屏。\t\n"); printf("\t\t\t请选择: \n"); return 0; } struct recipe *Newsth(struct recipe *p) { struct recipe *m; if((m=(struct recipe *)malloc(sizeof(struct recipe)))==NULL) { printf("分配内存失败"); exit(1); } printf("请输入新输入的菜品名称:"); scanf("%s",m->food); printf("请输入新输入的菜品价格:"); scanf("%f",&m->price); m->next=p; return m; } struct recipe *sort(struct recipe *b) { struct recipe *p,*pre_min,*min,*first,*tail; first=NULL; while(b->next!=NULL) { for(p=b,min=b;p->next!=NULL;p=p->next) { if((p->next->price)<(min->price)) { pre_min=p;//保留当前所找到最小节点的前驱节点 min=p->next;//保留当前最小节点 } } if(b==min) { b=b->next; } else { pre_min->next=min->next;//将当前最小节点移出链表 } if(first==NULL) { first=min; tail=first; } else { tail->next=min; tail=min; } } if(b->next==NULL) { tail->next=b; tail=b; } return first; } void search(struct recipe *d) { char name[10]; printf("请输入需要查找的菜品名称:"); scanf("%s",name); while(strcmp(d->food,name)!=0) { d=d->next; if(d==NULL){ printf("输入有误,请重新输入.\n"); break;} } if(d!=NULL) printf("你要查找的菜品信息为%s,价格为%f\n",d->food,d->price); } struct recipe *Delete(struct recipe *h) { struct recipe *f,*j,*start; char target[10]; start=h; start->next=h->next; printf("请输入你想要删除的菜品的名称:"); scanf("%s",target); while(strcmp(h->food,target)!=0) { if(h->next->next==NULL) j=h; h=h->next; } if(h->next==NULL) { j->next=NULL; free(h); } else{ strcpy(h->food,h->next->food); h->price=h->next->price; f=h->next; if(h->next->next!=NULL) h->next=h->next->next; else h->next=NULL; free(f); } return start; } void save(struct recipe *g) { FILE *fp; if((fp=fopen("d:\\recipe.txt","w"))==NULL) { printf("无法打开文件.\n"); exit(0); } while(g!=NULL) { fprintf(fp,"\t\t%s\t\t\t%f\n",g->food,g->price); g=g->next; } fclose(fp); } void read(struct recipe *j){ FILE *f; if((f=fopen("d://recipe.txt","r"))==NULL) { printf("无法读取文件.\n"); exit(0); } while(j!=NULL) { fscanf(f,"\t\t%s\t\t\t%f\n",j->food,&j->price); printf("\t\t%s\t\t\t%f\n",j->food,j->price); j=j->next; } fclose(f); } void cls() { system("cls"); } void main(){ int n=0; struct recipe *head=NULL; printf("--------------------欢迎进入订餐管理系统--------------------------\n"); printf("-------首次进入请确认你已写好菜品信息--------\n"); head=creat(); system("cls"); while(n!=7){ choosemenu(); scanf("%d",&n); switch(n){ case 1:head=Newsth(head); break; case 2:displayRecipe(head); break; case 3:head=sort(head); break; case 4:search(head); break; case 5:head=Delete(head); break; case 6:save(head); break; case 7:printf("Thanks for your use!\n\n\n\n"); break; case 8:read(head); break; case 9:cls(); break; default:choosemenu(); printf("输入有误,请重新输入.\n"); } } system("pause"); }

C语言:合并有序双向链表问题

从txt文件中读取5 4 2 3 1 10 6 8 7 9 到数组中,建立了两个递增排序的双向链表,内容分别为 1 2 3 4 5和6 7 8 9 10,现在想将两个链表合并输出一个递增的双向链表,但是!输出的链表少了1 和 6 两个数字,麻烦大佬看一下合并时哪里出了问题 ``` #include "stdafx.h" #include <stdlib.h> #include <string.h> #include <iostream> using namespace std; #include<fstream> #include<stdio.h> /* C program to insetail nodes in doubly linked list such that list remains in ascending order on printing from left to right */ struct LinkList // A linked list node { int data; struct LinkList *prior; struct LinkList *next; }; // Function to insetail new node void nodeInsetail(struct LinkList **head, struct LinkList **tail, int key) { struct LinkList *p = new LinkList; p->data = key; p->next = NULL; // If first node to be insetailed in doubly // linked list if (*head == NULL) { *head = p; *tail = p; (*head)->prior = NULL; return; } // If node to be insetailed has value less // than first node if ((p->data) < ((*head)->data)) { p->prior = NULL; (*head)->prior = p; p->next = (*head); (*head) = p; return; } // If node to be insetailed has value more // than last node if ((p->data) > ((*tail)->data)) { p->prior = (*tail); (*tail)->next = p; (*tail) = p; return; } // Find the node before which we need to // insert p. LinkList *temp = (*head)->next; while ((temp->data) < (p->data)) temp = temp->next; // Insert new node before temp (temp->prior)->next = p; p->prior = temp->prior; temp->prior = p; p->next = temp; } // Function to print nodes in from left to right void printList(struct LinkList *temp) { while (temp != NULL) { printf("%d ", temp->data); temp = temp->next; } } // Driver program to test above functions int main() { int num[10],i,j=0; int datalen=0; ifstream file("linklist.txt"); while( ! file.eof() ) file>>num[datalen++]; file.close(); struct LinkList *La = NULL, *pa = NULL; for(int i=0;i<5;i++) { nodeInsetail(&La, &pa,num[i]); } printf("\nDoubly linked listA on printing:"); printList(La); struct LinkList *Lb = NULL, *pb = NULL; for(int i=5;i<10;i++) { nodeInsetail(&Lb, &pb,num[i]); } printf("\nDoubly linked listB on printing:"); printList(Lb); printf("\n"); struct LinkList *Lc=NULL;//头 struct LinkList *pc=NULL;//备用地址 struct LinkList *q=NULL; Lc=(struct LinkList*)malloc(sizeof(struct LinkList)); pc=Lc;//备用合并链表起始地址 pa=La; pb=Lb; (这里有问题!) while(pa&&pb) { if(pa->data<pb->data) { Lc->next=pa; pa->prior=Lc; pa=pa->next; Lc=Lc->next; } else if(pa->data==pb->data) { Lc->next=pa; pa->prior=Lc; Lc=pa; pa=pa->next; q=pb->next; free(pb); pb=q; } else if(pa->data>pb->data) { Lc->next=pb; pb->prior=Lc; pb=pb->next; Lc=Lc->next; } } Lc->next=pa?pa:pb; free(Lb); printf("the result is:"); pa=pc->next; while(pa) { printf("%d ",pa->data); pa=pa->next; } return 0; } 执行结果如下(工作停止) Doubly linked listA on printing:1 2 3 4 5 Doubly linked listB on printing:6 7 8 9 10 the result is:1 2 3 4 5 -572662307 请按任意键继续. . . ``` 之前写的是pa=La->next; pb=Lb->next; 总是少了1 和 6

C语言读取文件出现疑似C盘路径的东西..

发生如下错误 ![图片说明](https://img-ask.csdn.net/upload/201606/04/1465045260_137756.jpg) 以下是部分源代码。。期末的图书管理系统的大作业的= = typedef struct book { char AN[10]; /*登录号*/ char name[20]; /*书名*/ char author[20]; /*作者名*/ char clc[10]; /*分类名*/ char company[20]; /*出版单位*/ char date[20]; /*出版日期*/ char price[10]; /*价格*/ struct book *next; }Booklist,*Pointer; int num=0;//全局变量的定义 Pointer Head=NULL;//头指针为空 FILE *fp;//指向文件的指针 void Read()/*读入文本文件的函数*/ {Pointer p,q; int m=0; char file[20]; printf("请输入文件路径及文件名:"); scanf("%s",file); if((fp=fopen(file,"r+"))==NULL) { printf("不能打开文件!\n"); return; } m=m+1; if(m==1) { p=(Pointer)malloc(sizeof(Booklist)); Head=p;//将p的地址赋给头指针Head fscanf(fp,"%s\t%s\t%s\t%s\t%s\t%s\t%s\t\n",&p->AN,&p->name,&p->author,&p->clc,&p->company,&p->date,&p->price); do {num=num+1;//记录书籍信息量 if(num==1) //区别开链表开头与中间的处理方法 Head->next=p; else q->next=p; q=p; p=(Pointer)malloc(sizeof(Booklist)); fscanf(fp,"%s\t%s\t%s\t%s\t%s\t%s\t%s\t\n",&p->AN,&p->name,&p->author,&p->clc,&p->company,&p->date,&p->price);//读入文件数据 }while(!feof(fp));//检查文件是否结束,若是则停止读入,否则继续读入 q->next=p; p->next=NULL;//链表结尾处理 num=num+1; } printf("写入数据成功,可返回浏览其信息。"); fclose(fp); return; } void Scan(Pointer Head) //显示图书信息函数 { Pointer p; p=Head; if(p==NULL) printf("记录为空");//检测是否有图书信息 else { printf("\n\t共有%d条记录",num); while(p!=NULL) { printf("\n\n\t\t登录号:%-10s",p->AN);//显示图书信息 printf("\n\t\t书名: %-20s",p->name); printf("\n\t\t作者名: %-20s",p->author); printf("\n\t\t分类号: %-10s",p->clc); printf("\n\t\t出版单位:%-20s",p->company); printf("\n\t\t出版时间:%-20s",p->date); printf("\n\t\t价格: ¥%-10s",p->price); p=p->next; } printf("\n\t\t请按任意键回到主菜单"); return; } }

c语言存储链表数据问题

给你一个链表的头指针pHead,将一个结构体中的数据,比如: struct{ int num; char name[20]; char sex[10]; } 存储到磁盘中,然后下次启动程序之后又可以读取出来。 初次学习c语言,麻烦给出代码,谢谢

我想用C语言读取如下dat文件,并且想把数据保存到一个二维数组中,求解啊,不太会

我想用C语言读取如下dat文件,第一个我不太清楚如何跳过前面几行读取数据,并且想把数据保存到一个二维数组中,求解啊,不太会 TITLE = "title" VARIABLES = X, Y, Z, "pressure", "pressure-coefficient" ZONE T="airfoil2", N=39000, E=37600, ET=QUADRILATERAL, F=FEBLOCK 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01 1.2692199647426605e-01

2019 Python开发者日-培训

2019 Python开发者日-培训

150讲轻松搞定Python网络爬虫

150讲轻松搞定Python网络爬虫

设计模式(JAVA语言实现)--20种设计模式附带源码

设计模式(JAVA语言实现)--20种设计模式附带源码

YOLOv3目标检测实战:训练自己的数据集

YOLOv3目标检测实战:训练自己的数据集

java后台+微信小程序 实现完整的点餐系统

java后台+微信小程序 实现完整的点餐系统

三个项目玩转深度学习(附1G源码)

三个项目玩转深度学习(附1G源码)

初级玩转Linux+Ubuntu(嵌入式开发基础课程)

初级玩转Linux+Ubuntu(嵌入式开发基础课程)

2019 AI开发者大会

2019 AI开发者大会

玩转Linux:常用命令实例指南

玩转Linux:常用命令实例指南

一学即懂的计算机视觉(第一季)

一学即懂的计算机视觉(第一季)

4小时玩转微信小程序——基础入门与微信支付实战

4小时玩转微信小程序——基础入门与微信支付实战

Git 实用技巧

Git 实用技巧

Python数据清洗实战入门

Python数据清洗实战入门

使用TensorFlow+keras快速构建图像分类模型

使用TensorFlow+keras快速构建图像分类模型

实用主义学Python(小白也容易上手的Python实用案例)

实用主义学Python(小白也容易上手的Python实用案例)

程序员的算法通关课:知己知彼(第一季)

程序员的算法通关课:知己知彼(第一季)

MySQL数据库从入门到实战应用

MySQL数据库从入门到实战应用

机器学习初学者必会的案例精讲

机器学习初学者必会的案例精讲

手把手实现Java图书管理系统(附源码)

手把手实现Java图书管理系统(附源码)

极简JAVA学习营第四期(报名以后加助教微信:eduxy-1)

极简JAVA学习营第四期(报名以后加助教微信:eduxy-1)

.net core快速开发框架

.net core快速开发框架

玩转Python-Python3基础入门

玩转Python-Python3基础入门

Python数据挖掘简易入门

Python数据挖掘简易入门

微信公众平台开发入门

微信公众平台开发入门

程序员的兼职技能课

程序员的兼职技能课

Windows版YOLOv4目标检测实战:训练自己的数据集

Windows版YOLOv4目标检测实战:训练自己的数据集

HoloLens2开发入门教程

HoloLens2开发入门教程

微信小程序开发实战

微信小程序开发实战

Java8零基础入门视频教程

Java8零基础入门视频教程

相关热词 c# 按行txt c#怎么扫条形码 c#打包html c# 实现刷新数据 c# 两个自定义控件重叠 c#浮点类型计算 c#.net 中文乱码 c# 时间排序 c# 必备书籍 c#异步网络通信
立即提问