首页 范文大全 古典文学 职场知识 中国文学 公文书信 外国名著 寓言童话 百家讲坛 散文/诗歌 美文欣赏 礼仪知识 民俗风情
  • 范文大全
  • 古典文学
  • 职场知识
  • 中国文学
  • 公文书信
  • 外国名著
  • 寓言童话
  • 百家讲坛
  • 散文/诗歌
  • 美文欣赏
  • 礼仪知识
  • 民俗风情
  • 谜语大全
  • 名言警句
  • 综合性实验实验报告

    时间:2020-11-27 12:51:20 来源:蒲公英阅读网 本文已影响 蒲公英阅读网手机站

    相关热词搜索:实验 综合性 报告

     广 州 大 学

     实

      验

      报

      告

     学

     院

     商学院

      专业、班级

      电子商务

     姓名、学号

     课程名称

     C 程序设计

      项目名称

     设计性实验

      实验时间:

     2012

     年

     6 月

     12

      日

     设计性实验

     实验报告 开课实验室:

     2 0 1 2 年 6 月 1 2 日

     第1页 学院 商 年级、专业、班 11 电子商务 姓名 陈梓君 成绩

     课程 名称 C 程序设计 实验项目 名

     称 设计性实验 指导教师 签名

     一、实验目的 1. 掌握各种程序设计技术的综合应用方法; 2. 掌握对实际应用中的一个具体问题进行需求分析的方法; 3. 掌握采用结构化方法进行简单的系统分析与设计的方法; 4. 培养学生设计一个完整的小应型用系统的能力。

     二、 实验原理( 算法分 析(包括流程图)

     ) 运用结构体、指针和调用函数对仓库的数据进行管理。

     Sum 函数运用:

      输入i=0,z=0,ni<nz=z+huo[i].jiage*huo[i].shuliang;YN

      第2页 shanchu 函数运用:

     输入要删除的产品名称确定删除信息删除n=n-1i=i-1YN Zengjia 函数首先要确定增加产品的数目;最后要 return(n+m); 三、实验过程原始记录(数据、图表、计算等)

     #include "stdafx.h" #include <conio.h> #include <stdlib.h> #include<stdio.h> #include<string.h> struct chanpin

     {

     int huowuhao;

     char huowuming[20];

     char changjia[20];

     float jiage;

     int shuliang;

     char shengchanriqi[80];

     char jinhuoriqi[80]; }; 装 订 线

     第3页 struct chanpin huo[];

     int input(struct chanpin huo[]);

      int sum(struct chanpin huo[],int n);

     void save(struct chanpin huo[],int n);

      int Load(struct chanpin huo[],int n=0);

      int Load1(struct chanpin huo[],int n=0);

      int shanchu(struct chanpin huo[],int n);

      int xiugai(struct chanpin huo[],int n);

      int zengjia(struct chanpin huo[],int n);

      void list(struct chanpin huo[],int n);

     void main() {

     struct chanpin huo[50];

     char ch;

     int length;

     while(1)

      {

      system("cls");

      printf("1. 输入货物信息:\n");

      printf("2. 货物的总价值:\n");

      printf("3. 储存厂商信息:\n");

      printf("4. 删除产品信息:\n");

      printf("5. 修改产品信息:\n");

      printf("6. 增加产品信息:\n");

      printf("7.打印列表:\n");

      printf("8.

     退出\n");

      ch=getch();

     //#include<conio.h>

      if(ch=="8")

     break;

      system("cls"); //#include<stdlib.h>

      switch(ch)

      {

      case "1":

     save (huo,input(huo));

     break;

     case "2":

      length=Load(huo);

     sum(huo,length);

     break;

      case "3":

     length=Load(huo);

     save(huo,length);

     break;

     case"4":

      length=Load(huo);

     length=shanchu(huo,length);

     save(huo,length);

      break;

     case"5":

      length=Load(huo);

     length=xiugai(huo,length);

     save(huo,length);

      break;

      case"6":

     length=Load(huo);

     length=zengjia(huo,length);

     save(huo,length);

      break;

     case"7":

     list(huo, Load(huo));

     break;

      }

     } }

      int input(chanpin huo[]) {

     int i,n;

      system("cls");

      printf("\n 请输入要输入的产品数目:\n");

      scanf("%d",&n); printf("输入厂商信息:\n 货物号

     货物名

     生产厂家

     价格

     数量

     生产日期

     进货日期\n"); for(i=0;i<n;i++)

     scanf("%d %s %s %f %d %s %s",&huo[i].huowuhao,huo[i].huowuming,huo[i].changjia,&huo[i].jiage,

     &huo[i].shuliang,huo[i].shengchanriqi,huo[i].jinhuoriqi);

     return (n); 装 订 线

     } int sum(chanpin huo[],int n) {

     float z;

     int i;

     for(i=0,z=0;i<n;i++)

      z=z+huo[i].jiage*huo[i].shuliang;

     printf("货物的总价值:%f\n",z);

     getch();

     return 0; }

     int Load(chanpin huo[],int n) {

     FILE *fp;

      if((fp=fopen("huo.txt","a+"))==NULL)

      {

     printf("不能打开文件!\n");

     exit(1); }

      while(fread(&huo[n],sizeof(struct chanpin),1,fp)) n++;

     fclose(fp);

      printf("从文件中成功读出记录!!!\n");

      return n;

     } int Load1(chanpin huo[],int n) {

     FILE *fp;

      if((fp=fopen("bkhuo.txt","a+"))==NULL)

      {

     printf("不能打开文件!\n");

     exit(1); }

      while(fread(&huo[n],sizeof(struct chanpin),1,fp)) n++;

      fclose(fp);

      printf("从文件中成功读出记录!!!\n");

      return n;

     }

      void save(struct chanpin huo[],int n) {

     FILE*fp;

     int i;

     if((fp=fopen("huo.txt","wb"))==NULL)

     {

      printf("cannot open file\n");

      return;

     }

     for(i=0;i<n;i++)

      if(fwrite(&huo[i],sizeof(struct chanpin ),1,fp)!=1)

     printf("file write error\n");

      printf("储存成功!!\n");

      fclose(fp); } int shanchu(chanpin huo[],int n) {

     char s[20];

      char ch;

      int i,j,flag=0;

      system("cls");

      printf("请输入要删除的产品名称\n");

      scanf("%s",s);

      for(i=0;i<n;i++)

     {

      if(strcmp(s,huo[i].huowuming)==0)

     {

     flag=1;

      system("cls");

      printf("\n\n 要删除的产品信息如下:\n");

      printf("\n");

      printf("货物号

     货物名

     生产厂家

     价格

     数量

     生产日期

     进货日期\n");

      printf("%d %s %s %f %d %s %s\n",huo[i].huowuhao,huo[i].huowuming,huo[i].changjia,huo[i].jiage,

     huo[i].shuliang,huo[i].shengchanriqi,huo[i].jinhuoriqi);

      printf ("\n");

      printf("确定删除仓库信息吗?(Y/N)\n");

      ch=getchar();

      ch=getchar();

      if(ch=="Y"||ch=="y")

     {

      for(j=i;j<n-1;j++) huo[j]=huo[j+1];

     n=n-1;

     i--;

     printf ("删除成功.\n");

      }

     }

      }

      if(flag==0)

      printf("要删除的产品不存在!!\n");

      getch();

      return n; } int xiugai(chanpin huo[],int n) {

     int i,flag=0;

      char s[20],ch;

      system("cls");

      printf("请输入要修改的产品名称\n");

      scanf("%s",s);

      for(i=0;i<n;i++)

      {

      if(strcmp(s,huo[i].huowuming)==0)

      {

     flag=1;

      system("cls");

      printf("\n 要删除的产品信息如下:\n");

     printf("\n");

      printf("货物号

     货物名

     生产厂家

     价格

     数量

     生产日期

     进货日期\n");

     {

      printf("%d %s %s %f %d %s %s\n",huo[i].huowuhao,huo[i].huowuming,huo[i].changjia,huo[i].jiage,

     huo[i].shuliang,huo[i].shengchanriqi,huo[i].jinhuoriqi); }

      printf ("\n");

      printf("确定修改产品信息吗?(Y/N)\n");

      ch=getchar();

      ch=getchar();

      if(ch=="y"||ch=="Y")

      {

      system("cls");

      printf("请输入修改后的信息:\n");

     printf("请输入产品新的名称:");

      scanf("%s",huo[i].huowuming);

      printf("请输入%s 产品新的货物号:",huo[i].huowuming);

      scanf("%d",&huo[i].huowuhao);

      printf("请输入%s 产品新的生产厂家:",huo[i].huowuming);

      scanf("%s",&huo[i].changjia);

      printf("请输入%s 产品新的价格:",huo[i].huowuming);

      scanf("%f",&huo[i].jiage);

      printf("请输入%s 产品新的数量:",huo[i].huowuming);

      scanf("%d",&huo[i].shuliang);

      printf("请输入%s 产品新的生产日期:",huo[i].huowuming);

      scanf("%s",huo[i].shengchanriqi);

      printf("请输入%s 产品新的进货日期:",huo[i].huowuming);

      scanf("%s",huo[i].jinhuoriqi); } }

     }

      if(flag==0)

      printf("要修改的产品不存在!!\n");

      getchar();

      return n; } int zengjia(chanpin huo[],int n) {

      int i,m;

     system("cls");

      printf("\n 请输入再增加的产品数:\n");

      scanf("%d",&m);

      printf("开始追加记录\n");

      for(i=n;i<n+m;i++)

     { system("cls");

      printf("\n 第%d 个产品的货物号:",i+1);

      scanf("%d",&huo[i].huowuhao);

      printf("第%d 个货物的货物名:",i+1);

      scanf("%s",huo[i].huowuming);

      printf("第%d 个生产厂家:",i+1);

      scanf("%s",&huo[i].changjia);

     printf("第%d 个产品的价格:",i+1);

      scanf("%f",&huo[i].jiage);

      printf("第%d 个产品的数量:",i+1);

      scanf("%d",&huo[i].shuliang);

     printf("第%d 个产品的生产日期:",i+1);

      scanf("%s",huo[i].shengchanriqi);

      printf("第%d 个产品的进货日期:",i+1);

      scanf("%s",huo[i].jinhuoriqi);

     }

     return (n+m);

     } void list(chanpin huo[],int n) {

     int i;

      printf("货物号

     货物名

     生产厂家

     价格

     数量

     生产日期

     进货日期\n");

     for(i=0;i<n;i++) {

      printf("%d %s %s %f %d %s %s\n",huo[i].huowuhao,huo[i].huowuming,huo[i].changjia,huo[i].jiage,

     huo[i].shuliang,huo[i].shengchanriqi,huo[i].jinhuoriqi); }

      printf ("\n"); getchar(); } 四、实验结果及分析 1 程序启动:

     2 输入产品信息:

      3 计算产品总价值:

     打印产品列表:

     4 删除产品信息:

     1.

     产品列表:

     按 N,信息没有删除。

     2

     产品列表:

      产品信息成功删除。

     5 增加产品信息:

     产品列表:

     6 修改产品信息:

      产品列表:

     7 退出程序:

     “ 在写调用函数声明的前面“{ } “后要加上“;“否则出现错误“error C2236: unexpected "struct" "chanpin’ ” 五、附录( 自己实现的源代码) #include "stdafx.h" #include <conio.h> #include <stdlib.h> #include<stdio.h> #include<string.h> struct chanpin

     {

     int huowuhao;

     char huowuming[20];

     char changjia[20];

     float jiage;

     int shuliang;

     char shengchanriqi[80];

     char jinhuoriqi[80]; };

      struct chanpin huo[];

     int input(struct chanpin huo[]);

      int sum(struct chanpin huo[],int n);

     void save(struct chanpin huo[],int n);

      int Load(struct chanpin huo[],int n=0);

      int Load1(struct chanpin huo[],int n=0);

      int shanchu(struct chanpin huo[],int n);

      int xiugai(struct chanpin huo[],int n);

      int zengjia(struct chanpin huo[],int n);

      void list(struct chanpin huo[],int n);

     void main()

     {

     struct chanpin huo[50];

     char ch;

     int length;

     while(1)

     {

      system("cls");

      printf("1. 输入货物信息:\n");

      printf("2. 货物的总价值:\n");

      printf("3. 储存厂商信息:\n");

      printf("4. 删除产品信息:\n");

      printf("5. 修改产品信息:\n");

      printf("6. 增加产品信息:\n");

      printf("7.打印列表:\n");

      printf("8.

     退出\n");

      ch=getch();

     //#include<conio.h>

      if(ch=="8")

     break;

      system("cls"); //#include<stdlib.h>

      switch(ch)

      {

      case "1":

     save (huo,input(huo));

     break;

      case "2":

      length=Load(huo);

     sum(huo,length);

     break;

      case "3":

     length=Load(huo);

     save(huo,length);

     break;

     case"4":

      length=Load(huo);

     length=shanchu(huo,length);

     save(huo,length);

      break;

     case"5":

      length=Load(huo);

     length=xiugai(huo,length);

     save(huo,length);

      break;

      case"6":

      length=Load(huo);

     length=zengjia(huo,length);

     save(huo,length);

      break;

     case"7":

     list(huo, Load(huo));

     break;

      }

     }

     }

      int input(chanpin huo[]) {

     int i,n;

      system("cls");

      printf("\n 请输入要输入的产品数目:\n");

      scanf("%d",&n);

      printf("输入厂商信息:\n 货物号

     货物名

     生产厂家

     价格

     数量

     生产日期

     进货日期\n");

      for(i=0;i<n;i++)

     scanf("%d %s %s %f %d %s %s",&huo[i].huowuhao,huo[i].huowuming,huo[i].changjia,&huo[i].jiage,

     &huo[i].shuliang,huo[i].shengchanriqi,huo[i].jinhuoriqi);

     return (n); }

     int sum(chanpin huo[],int n) {

     float z;

     int i;

     for(i=0,z=0;i<n;i++)

      z=z+huo[i].jiage*huo[i].shuliang;

     printf("货物的总价值:%f\n",z);

     getch();

     return 0; }

     int Load(chanpin huo[],int n) {

     FILE *fp;

      if((fp=fopen("huo.txt","a+"))==NULL)

      {

     printf("不能打开文件!\n");

     exit(1); }

      while(fread(&huo[n],sizeof(struct chanpin),1,fp)) n++;

     fclose(fp);

      printf("从文件中成功读出记录!!!\n");

      return n;

     } int Load1(chanpin huo[],int n) {

     FILE *fp;

      if((fp=fopen("bkhuo.txt","a+"))==NULL)

      {

     printf("不能打开文件!\n");

     exit(1); }

      while(fread(&huo[n],sizeof(struct chanpin),1,fp)) n++;

      fclose(fp);

      printf("从文件中成功读出记录!!!\n");

      return n;

     }

     void save(struct chanpin huo[],int n) {

     FILE*fp;

     int i;

     if((fp=fopen("huo.txt","wb"))==NULL)

     {

      printf("cannot open file\n");

      return;

     }

     for(i=0;i<n;i++)

      if(fwrite(&huo[i],sizeof(struct chanpin ),1,fp)!=1)

     printf("file write error\n");

      printf("储存成功!!\n");

      fclose(fp); } int shanchu(chanpin huo[],int n) {

     char s[20];

      char ch;

      int i,j,flag=0;

     system("cls");

      printf("请输入要删除的产品名称\n");

      scanf("%s",s);

      for(i=0;i<n;i++)

     {

      if(strcmp(s,huo[i].huowuming)==0)

     {

     flag=1;

      system("cls");

      printf("\n\n 要删除的产品信息如下:\n");

      printf("\n");

      printf("货物号

     货物名

     生产厂家

     价格

     数量

     生产日期

     进货日期\n");

      printf("%d %s %s %f %d %s %s\n",huo[i].huowuhao,huo[i].huowuming,huo[i].changjia,huo[i].jiage,

     huo[i].shuliang,huo[i].shengchanriqi,huo[i].jinhuoriqi);

      printf ("\n");

      printf("确定删除仓库信息吗?(Y/N)\n");

      ch=getchar();

      ch=getchar();

      if(ch=="Y"||ch=="y")

      {

      for(j=i;j<n-1;j++) huo[j]=huo[j+1];

     n=n-1;

     i--;

     printf ("删除成功.\n");

      }

     }

      }

      if(flag==0)

      printf("要删除的产品不存在!!\n");

      getch();

      return n; } int xiugai(chanpin huo[],int n) {

     int i,flag=0;

      char s[20],ch;

      system("cls");

      printf("请输入要修改的产品名称\n");

      scanf("%s",s);

      for(i=0;i<n;i++)

      {

      if(strcmp(s,huo[i].huowuming)==0)

      {

     flag=1;

      system("cls");

      printf("\n 要删除的产品信息如下:\n");

     printf("\n");

      printf("货物号

     货物名

     生产厂家

     价格

     数量

     生产日期

     进货日期\n");

     {

      printf("%d %s %s %f %d %s %s\n",huo[i].huowuhao,huo[i].huowuming,huo[i].changjia,huo[i].jiage,

     huo[i].shuliang,huo[i].shengchanriqi,huo[i].jinhuoriqi); }

      printf ("\n");

      printf("确定修改产品信息吗?(Y/N)\n");

      ch=getchar();

      ch=getchar();

      if(ch=="y"||ch=="Y")

      {

      system("cls");

      printf("请输入修改后的信息:\n");

      printf("请输入产品新的名称:");

      scanf("%s",huo[i].huowuming);

      printf("请输入%s 产品新的货物号:",huo[i].huowuming);

      scanf("%d",&huo[i].huowuhao);

      printf("请输入%s 产品新的生产厂家:",huo[i].huowuming);

      scanf("%s",&huo[i].changjia);

      printf("请输入%s 产品新的价格:",huo[i].huowuming);

      scanf("%f",&huo[i].jiage);

      printf("请输入%s 产品新的数量:",huo[i].huowuming);

      scanf("%d",&huo[i].shuliang);

      printf("请输入%s 产品新的生产日期:",huo[i].huowuming);

      scanf("%s",huo[i].shengchanriqi);

      printf("请输入%s 产品新的进货日期:",huo[i].huowuming);

      scanf("%s",huo[i].jinhuoriqi);

      }

     }

     }

      if(flag==0)

      printf("要修改的产品不存在!!\n");

      getchar();

      return n; } int zengjia(chanpin huo[],int n)

     第19页

      {

      int i,m;

     system("cls");

      printf("\n 请输入再增加的产品数:\n");

      scanf("%d",&m);

      printf("开始追加记录\n");

      for(i=n;i<n+m;i++)

     { system("cls");

      printf("\n 第%d 个产品的货物号:",i+1);

      scanf("%d",&huo[i].huowuhao);

      printf("第%d 个货物的货物名:",i+1);

      scanf("%s",huo[i].huowuming);

     printf("第%d 个生产厂家:",i+1);

      scanf("%s",&huo[i].changjia);

     printf("第%d 个产品的价格:",i+1);

      scanf("%f",&huo[i].jiage);

      printf("第%d 个产品的数量:",i+1);

     scanf("%d",&huo[i].shuliang);

     printf("第%d 个产品的生产日期:",i+1);

      scanf("%s",huo[i].shengchanriqi);

     printf("第%d 个产品的进货日期:",i+1);

      scanf("%s",huo[i].jinhuoriqi);

     }

     return (n+m);

     } void list(chanpin huo[],int n) {

     int i;

      printf("货物号

     货物名

     生产厂家

     价格

     数量

     生产日期

     进货日期\n");

     for(i=0;i<n;i++) {

      printf("%d %s %s %f %d %s %s\n",huo[i].huowuhao,huo[i].huowuming,huo[i].changjia,huo[i].jiage,

     huo[i].shuliang,huo[i].shengchanriqi,huo[i].jinhuoriqi); }

      printf ("\n"); getchar(); }

     六、联系方式(e-mail )

    • 范文大全
    • 职场知识
    • 精美散文
    • 名著
    • 讲坛
    • 诗歌
    • 礼仪知识