ImageVerifierCode 换一换
格式:DOC , 页数:25 ,大小:102KB ,
资源ID:3524198      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/3524198.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(课程设计:学生成绩管理系统.doc)为本站上传会员【a199****6536】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

课程设计:学生成绩管理系统.doc

1、课程设计:学生成绩管理系统 一:课程设计目的 通过本次课程设计,进一步熟悉掌握以下知识:数据类型号、分支控制、循环控制、函数的定义及调用、结构体及数组、指针、文件操作、编译预处理等。达到系统理解、综合运用课程知识的学习目标;学会用C语言程序解决实际问题的方法;掌握程序的局部测试、调试方法,建立程序系统调试、测试的基本概念和思想,学会较大程序的系统测试、调试方法。 二:总体设计内容 (一)、 仔细阅读系统要求,首先将此系统化分为如下模块(即如下函数) 1、输入初始的学生信息:其中包括学生的姓名、学号和性别以及学生的语文、数学、英语和计算机等相关信息;可用函数cin(stu *p1)

2、来实现此操作。 2、查询模块:可用stu *lookdata(stu *p1) 来实现。找到就输出此学生全部信息包括学生的语文、数学、英语和计算机等的成绩。 3、插入模块:可用insert( )函数来实现。其中通过学号的大小来比较的,并且以此来排序。 4、输出学生的信息以及成绩:通过学生的姓名来查看学生的语文、数学、英语和计算机等相关成绩,同时也可以分别通过caverage() 、maverage() 、eaverage() 和comaverage() 来输出语文、数学、英语和计算机等成绩的平均分数、最高和最低分数。 5、退出系统:可用一个函数exit

3、来实现,首先将信息保存到文件中,释放动态创建的内存空间,再退出此程序。 (二)、系统主模块结构图: 三:详细设计 (一)、 界面设计 此系统界面采用图形和数字化菜单设计。 主界面设计如下: 学生成绩管理系统 请选择相应的数字执行相应的功能: 1:是否输入其他数据 2:查看数据 3:插入数据 4:查找数据 5:更新数据 6:保留数据 7:显示或打印数据 8:语文成绩状况 9:数学成绩状况 10:英语成绩状况 11:计算机成绩状况 12:? 13:退出系统 (二)、 数据结构设计:

4、 程序设计中用到的结构体类型: 学生信息结构体类型: typedef struct student{ char name[MAX]; int num[MAX]; char sex[MAX]; int chinese; int mathematic; int english; int computer; struct student *next; } (三)、模块功能说明(如函数功能、入口及出口参数说明,函数调用关系描述等) (四)、调试与测试 问题一、学生初始信息模块: 其中

5、包括学生的姓名、学号和性别以及学生的语文、数学、英语和计算机等相关信息;可用函数cin(stu *p1)来实现此操作。当正确输入存在的学生学号,系统进行判断时,提示不存在此学生。 解决办法及步骤: 1、一个个输出所有的学生的学号,检查文件中是否有此学生,发现有。 2、既然有此学生,那么检查循环判断是否有此学生的语句发现没有错 3、输出用于循环检查语句中的学生信息,发现乱码 4、仔细分析乱码的原因,最后发现是变量的类型错误,错将学生类型的结构体指针变量定义为了其他类型的指针变量。 问题二、查询模块: 可用stu *lookdata(stu *p1)

6、 来实现。找到就输出此学生全部信息包括学生的语文、数学、英语和计算机等的成绩。当正确输入查找信息时,系统却不能够得到所要查找的学生信息以及学生的语文、数学、英语和计算机的成绩。 解决办法及步骤: 1、检查所编写的程序代码是否完全正确,若不是,则改之,然后再继续正确输入查找信息看能否得到所要查找的学生信息以及学生的语文、数学、英语和计算机的成绩。 2、检查当我们在输入查找信息时,看是否我们输入的信息有误,若是这样的话,我们应当仔细输入查找信息。 (五)、源程序清单和执行结果 #include #include #include

7、ib.h> #define LEN sizeof(struct scorenode) #define DEBUG #include struct scorenode {int number;/*学号*/ char name[10];/*姓名*/ float yuwen;/*语文成绩*/ float yingyu;/*英语成绩*/ float shuxue;/*数学成绩 */ struct scorenode *next; }; typedef struct scorenode score; int n,k;/*n,k为全局变量,本程序中的函数均可

8、以使用它*/ /*==============================================================================================*/ score *creat2311(void) /*函数creat2311,功能:创建链表,此函数带回一个指向链表头的指针*/ { score*head; score *p1,*p2,*p3,*max; int i,j; float fen;    char t[10];   n=0;     p1=p2=p3=(score *)malloc(LEN);head=p

9、3; /*开辟一个新单元*/      printf("请输入学生资料,输0退出!\n"); repeat1: printf("请输入学生学号(学号应大于0):");/*输入学号,学号应大于0*/      scanf("%d",&p1->number);     while(p1->number<0)   {getchar();    printf("输入错误,请重新输入学生学号:");      scanf("%d",&p1->number);}        /*输入学号为字符或小于0时,程序报错,提示重新输入学号*/   if(p1->number==0)   go

10、to end;/*当输入的学号为0时,转到末尾,结束创建链表*/   else   {   p3=head;   if(n>0)   {for(i=0;inumber!=p3->number)     p3=p3->next;     else     {printf("学号重复,请重输!\n");     goto repeat1;     /*当输入的学号已经存在,程序报错,返回前面重新输入*/       }    }      }         }      printf("请输入学生姓名:")

11、      scanf("%s",&p1->name);/*输入学生姓名*/      printf("请输入语文成绩(0~100):");/*输入语文成绩,成绩应在0-100*/      scanf("%f",&p1->yuwen);    while(p1->yuwen<0||p1->yuwen>100) {getchar();   printf("输入错误,请重新输入语文成绩");/*输入错误,重新输入语文成绩直到正确为止*/         scanf("%f",&p1->yuwen);}      printf("请输入英语成绩(0~100):");/*输入英语成

12、绩,成绩应在0-100*/      scanf("%f",&p1->yingyu);    while(p1->yingyu<0||p1->yingyu>100) {getchar();   printf("输入错误,请重新输入英语成绩");/*输入错误,重新输入英语成绩直到正确为止*/         scanf("%f",&p1->yingyu);}      printf("请输入数学成绩(0~100):");/*输入数学成绩,成绩应在0-100*/      scanf("%f",&p1->shuxue);    while(p1->shuxue<0||p1->shu

13、xue>100) {getchar();   printf("输入错误,请重新输入数学成绩");         scanf("%f",&p1->shuxue);}/*输入错误,重新输入数学成绩直到正确为止*/     head=NULL; while(p1->number!=0)   {    n=n+1; if(n==1)     head=p1; else    p2->next=p1;    p2=p1;    p1=(score *)malloc(LEN);    printf("请输入学生资料,输0退出!\n"); repeat2:printf("

14、请输入学生学号(学号应大于0):");     scanf("%d",&p1->number);/*输入学号,学号应大于0*/      while(p1->number<0)   {getchar();    printf("输入错误,请重新输入学生学号:");      scanf("%d",&p1->number);}      /*输入学号为字符或小于0时,程序报错,提示重新输入学号*/   if(p1->number==0)   goto end;/*当输入的学号为0时,转到末尾,结束创建链表*/   else   {   p3=head;   if(n>

15、0)   {for(i=0;inumber!=p3->number)    p3=p3->next;    else    {printf("学号重复,请重输!\n");     goto repeat2;     /*当输入的学号已经存在,程序报错,返回前面重新输入*/    }    }      }         }   printf("请输入学生姓名:");      scanf("%s",&p1->name);/*输入学生姓名*/     printf("请输入语文成绩(0~100):");      

16、scanf("%f",&p1->yuwen);/*输入语文成绩,成绩应在0-100*/     while(p1->yuwen<0||p1->yuwen>100)   {getchar();   printf("输入错误,请重新输入语文成绩");       scanf("%f",&p1->yuwen);}/*输入错误,重新输入语文成绩直到正确为止*/     printf("请输入英语成绩(0~100):");     scanf("%f",&p1->yingyu);/*输入英语成绩,成绩应在0-100*/     while(p1->yingyu<0||p1->yingyu>

17、100)   {getchar();   printf("输入错误,请重新输入英语成绩");       scanf("%f",&p1->yingyu);}/*输入错误,重新输入英语成绩直到正确为止*/     printf("请输入数学成绩(0~100):");      scanf("%f",&p1->shuxue);/*输入数学成绩,成绩应在0-100*/     while(p1->shuxue<0||p1->shuxue>100)   {getchar();   printf("输入错误,请重新输入数学成绩");       scanf("%f",&p1->shux

18、ue);}/*输入错误,重新输入数学成绩直到正确为止*/     } end: p1=head;     p3=p1;   for(i=1;inext;          if(max->number>p1->number)       {       k=max->number;       max->number=p1->number;       p1->number=k;

19、       /*交换前后结点中的学号值,使得学号大者移到后面的结点中*/              strcpy(t,max->name);       strcpy(max->name,p1->name);       strcpy(p1->name,t);     /*交换前后结点中的姓名,使之与学号相匹配*/       fen=max->yuwen;       max->yuwen=p1->yuwen;       p1->yuwen=fen;             /*交换前后结点中的语文成绩,使之与学号相匹配*/           fen=max->

20、yingyu;       max->yingyu=p1->yingyu;       p1->yingyu=fen;    /*交换前后结点中的英语成绩,使之与学号相匹配*/             fen=max->shuxue;       max->shuxue=p1->shuxue;       p1->shuxue=fen;            /*交换前后结点中的数学成绩,使之与学号相匹配*/       }             }    max=head;p1=head;/*重新使max,p指向链表头*/   } p2->next=NULL

21、/*链表结尾*/      printf("输入的学生数为:%d个!\n",n);      return(head); } /*==============================================================================================*/ /*==============================================================================================*/ score *load2311(score *head)

22、/*函数load2311,功能:从文件读入学生记录*/ {     score *p1,*p2;       int m=0;       char filepn[10];   FILE *fp;      printf("请输入文件路径及文件名:");     scanf("%s",filepn);/*输入文件路径及名称*/     if((fp=fopen(filepn,"r+"))==NULL) {   printf("不能打开文件!\n");   return 0; }     fscanf(fp,"        考试成绩管理系统         \n");

23、     fscanf(fp,"作者:周纯钢 班级:  信息023  学号:11 \n");       fscanf(fp,"-----------------------------------------\n");   fscanf(fp,"|学号\t|姓名\t|语文\t|英语\t|数学\t|\n");       fscanf(fp,"-----------------------------------------\n");/*读入表格域*/   printf("        考试成绩管理系统         \n");     printf("  作者:周纯钢 班级:

24、  信息023  学号:11 \n");       printf("-----------------------------------------\n");   printf("|学号\t|姓名\t|语文\t|英语\t|数学\t|\n");       printf("-----------------------------------------\n");/*打印表格域*/   m=m+1;     if(m==1)   {      p1=(score *)malloc(LEN); /*开辟一个新单元*/   fscanf(fp,"%d%s%f%f%f",&p1-

25、>number,p1->name,&p1->yuwen,&p1->yingyu,&p1->shuxue);       printf("|%d\t|%s\t|%.1f\t|%.1f\t|%.1f\t|\n",p1->number,p1->name,p1->yuwen,p1->yingyu,p1->shuxue);    /*文件读入与显示*/   head=NULL;     do   {   n=n+1;   if(n==1) head=p1;   else p2->next=p1;   p2=p1;   p1=(score *)malloc(LEN);  /*开辟一个新

26、单元*/        fscanf(fp,"%d%s%f%f%f\n",&p1->number,p1->name,&p1->yuwen,&p1->yingyu,&p1->shuxue);         printf("|%d\t|%s\t|%.1f\t|%.1f\t|%.1f\t|\n",p1->number,p1->name,p1->yuwen,p1->yingyu,p1->shuxue);         /*文件读入与显示*/   }while(!feof(fp));   p2->next=p1;   p1->next=NULL;   n=n+1; }printf(

27、"-----------------------------------------\n");/*表格下线*/   fclose(fp);/*结束读入,关闭文件*/     return (head); } /*==============================================================================================*/ /*======================================================================================

28、/ score *add2311(score *head,score *stu) /*函数add2311,功能:追加学生资料,并且将所有学生资料按学号排序*/ { score *p0,*p1,*p2,*p3,*max;    int i,j; float fen;    char t[10];   p3=stu=(score *)malloc(LEN);/*开辟一个新单元*/   printf("\n输入要增加的学生的资料!");   repeat4: printf("请输入学生学号(学号应大于0):");   scanf("%d",&stu->nu

29、mber);   /*输入学号,学号应大于0*/     while(stu->number<0)   {getchar();    printf("输入错误,请重新输入学生学号:");      scanf("%d",&stu->number);}/*输入错误,重新输入学号*/     /******************************************************/    if(stu->number==0)   goto end2;/*当输入的学号为0时,转到末尾,结束追加*/   else   {   p3=head;   i

30、f(n>0)   {for(i=0;inumber!=p3->number)     p3=p3->next;     else     {printf("学号重复,请重输!\n");     goto repeat4;     /*当输入的学号已经存在,程序报错,返回前面重新输入*/       }    }      }         }      /******************************************************/     printf("输入学生姓名:"

31、);       scanf("%s",stu->name);        /*输入学生姓名*/     printf("请输入语文成绩(0~100):");       scanf("%f",&stu->yuwen);   /*输入语文成绩,成绩应在0-100*/     while(stu->yuwen<0||stu->yuwen>100)   {getchar();    printf("输入错误,请重新输入语文成绩");      scanf("%f",&stu->yuwen);}    /*输入错误,重新输入语文成绩直到正确为止*/     printf("请输入英

32、语成绩(0~100):");       scanf("%f",&stu->yingyu);/*输入英语成绩,成绩应在0-100*/     while(stu->yingyu<0||stu->yingyu>100)   {getchar();    printf("输入错误,请重新输入英语成绩");       scanf("%f",&stu->yingyu);}/*输入错误,重新输入英语成绩直到正确为止*/     printf("请输入数学成绩(0~100):");       scanf("%f",&stu->shuxue);/*输入数学成绩,成绩应在0-100*/  

33、   while(stu->shuxue<0||stu->shuxue>100)   {getchar();    printf("输入错误,请重新输入数学成绩");        scanf("%f",&stu->shuxue);}/*输入错误,重新输入数学成绩直到正确为止*/ p1=head; p0=stu; if(head==NULL) {head=p0;p0->next=NULL;}/*当原来链表为空时,从首结点开始存放资料*/ else/*原来链表不为空*/ {   if(p1->next==NULL)/*找到原来链表的末尾*/   {   p1->next=

34、p0;     p0->next=NULL;/*将它与新开单元相连接*/   }     else   {    while(p1->next!=NULL)/*还没找到末尾,继续找*/    {     p2=p1;p1=p1->next;    }       p1->next=p0;       p0->next=NULL;   } } n=n+1; p1=head; p0=stu;   for(i=1;i

35、 max=p1;      p1=p1->next;          if(max->number>p1->number)       {       k=max->number;       max->number=p1->number;       p1->number=k;       /*交换前后结点中的学号值,使得学号大者移到后面的结点中*/              strcpy(t,max->name);       strcpy(max->name,p1->name);       strcpy(p1->name,t);     /*交换前后结点中

36、的姓名,使之与学号相匹配*/       fen=max->yuwen;       max->yuwen=p1->yuwen;       p1->yuwen=fen;             /*交换前后结点中的语文成绩,使之与学号相匹配*/           fen=max->yingyu;       max->yingyu=p1->yingyu;       p1->yingyu=fen;    /*交换前后结点中的英语成绩,使之与学号相匹配*/             fen=max->shuxue;       max->shuxue=p1->shux

37、ue;       p1->shuxue=fen;            /*交换前后结点中的数学成绩,使之与学号相匹配*/       }             }    max=head;p1=head;/*重新使max,p指向链表头*/   } end2: printf("现在的学生数为:%d个!\n",n);   return(head); } /*==============================================================================================*/ /*=====

38、/ score *search2311(score *head) /*函数search2311,功能:查询学生成绩*/ {int number; score *p1,*p2; printf("输入要查询的学生的学号,"); scanf("%d",&number); while(number!=0) {   if(head==NULL)   {printf("\n没有任何学生资料!\n");re

39、turn(head);}   printf("-----------------------------------------\n");   printf("|学号\t|姓名\t|语文\t|英语\t|数学\t|\n");   printf("-----------------------------------------\n");/*打印表格域*/   p1=head;     while(number!=p1->number&&p1->next!=NULL)   {p2=p1;p1=p1->next;}       if(number==p1->number)  

40、    {printf("|%d\t|%s\t|%.1f\t|%.1f\t|%.1f\t|\n",p1->number,p1->name,p1->yuwen,p1->yingyu,p1->shuxue);        printf("-----------------------------------------\n");}/*打印表格域*/       else         printf("%d不存在此学生!\n",number);          printf("输入要查询的学生的学号,");       scanf("%d",&number); } prin

41、tf("已经退出了!\n"); return(head);} /*==============================================================================================*/ /*==============================================================================================*/ score *del2311(score *head)/*函数del2311,功能:删除学生资料*/ { score *p1,

42、p2; int number; printf("输入要删除的学生的学号(输入0时退出):"); scanf("%d",&number); getchar(); while(number!=0)/*输入学号为0时退出*/ {   if(head==NULL)   {   printf("\n没有任何学生资料!\n");   return(head);   }      p1=head;      while(number!=p1->number&&p1->next!=NULL)   /*p1指向的不是所要找的首结点,并且后面还有结点*/   {   

43、p2=p1;p1=p1->next;   } /*p1后移一个结点*/       if(number==p1->number)     /*找到了*/     {   if(p1==head)    head=p1->next;   /*若p1指向的是首结点,把地二个结点地址赋予head*/   else     p2->next=p1->next;   /*否则将下一个结点地址 赋给前一结点地址*/   printf("删除:%d\n",number);n=n-1;   }   else   printf("%d不存在此学生!\n",number);  

44、 /*找不到该结点*/         printf("输入要删除的学生的学号:");   scanf("%d",&number);   getchar(); } #ifdef DEBUG printf("已经退出了!\n"); #endif printf("现在的学生数为:%d个!\n",n); return(head); } /*==============================================================================================*/ /*===============

45、/ void print2311(score *head) /*函数print2311,功能:显示学生成绩*/ { score *p; if(head==NULL)          {printf("\n没有任何学生资料!\n");} else {printf("%d\n",n); printf("-----------------------------------------\n"); printf("|学号

46、\t|姓名\t|语文\t|英语\t|数学\t|\n"); printf("-----------------------------------------\n");/*打印表格域*/ p=head;     do    {printf("|%d\t|%s\t|%.1f\t|%.1f\t|%.1f\t|\n",p->number,p->name,p->yuwen,p->yingyu,p->shuxue);       printf("-----------------------------------------\n");/*打印表格域*/      p=p->next;}whi

47、le (p!=NULL);/*打印完成了*/ } } /*==============================================================================================*/ /*==============================================================================================*/ score *statistics2311(score *head)   /*函数statistics2311,功能:统计学生成绩*/

48、{   float sum1=0,sum2=0,sum3=0,ave1=0,ave2=0,ave3=0,max=0,min;   score *p;   int x,y=0,i=0;      p=head;      printf("1个人总分和平均分\t2单科平均分\t3总分最高分\t4总分最低分\n");       scanf("%d",&x);     getchar(); switch(x)   /*用switch语句实现功能选择*/ { case 1: if(head==NULL)     {printf("\n没有任何学生资料!\n");retu

49、rn(head);}/*链表为空*/      else   {     printf("---------------------------------------------------------\n");       printf("|学号\t|姓名\t|语文\t|英语\t|数学\t|总分\t|平均分\t|\n");       printf("---------------------------------------------------------\n");/*打印表格域*/     while(p!=NULL)     {     sum1=p->yuwe

50、n+p->yingyu+p->shuxue;  /*计算个人总分*/                             ave1=sum1/3;/*计算个人平均分*/                  printf("|%d\t|%s\t|%.1f\t|%.1f\t|%.1f\t|%.1f\t|%.1f\t|\n",p->number,p->name,p->yuwen,p->yingyu,p->shuxue,sum1,ave1);     /*打印结果*/           printf("-----------------------------------------

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服