C语言实训报告

时间:2024.4.13

甘肃机电职业技术学院

C语言程序设计

     实 训 报 告

 

一、课题名称:电子词典

电子词典是一个常用的学习工具,该系统能完成一个简单的电子英汉词典的功能,如:单词的查找、词语的添加、删除词语和修改词语等功能。

二、设计目的

1、通过了解理论知识与实际需求相结合,编程解决一些日常中实际的问题,培养初步的独立分析和设计功能。

2、了解应用程序设计解决实际问题的具体过程和实现方法,掌握应用C语言进行程序设计的基本规范;

3、重点掌握C语言的程序编写、函数设计、算法设计和程序调试方法

4、初步掌握系统开发过程的问题分析、系统设计、程序编码、测试等基本方法忽然技能。

三、设计任务

1、在计算机中建立有限规模的电子英汉词典(文件),本词典采用一个包含N个数据的结构体数组,每个数组的结构应当包括:英文单词、中文单词。

2、能输入新词汇

3、能删除词汇

4、能查找词汇

5、能修改词汇信息

四、设计要求

1、用C语言实现程序设计并进行调试;

2、画出查询模块的流程图;

3、系统的各个功能模块要求用函数的形式实现;

4、界面友好(良好的人机互交)。

5、完成设计说明书(A4)。

五、运行环境

1、Windows XP系统

2、TurboC  编译环境

详细设计

    电子词典流程图:

   

七、代码设计

电子词典:

#include<stdio.h>

    #include<string.h>

    main()

    {   static int n=32;

     char m;

         struct

          {

           char eng[10];

           char ci[15];

           char yin[10];

           char chi[30];

         }word[500]={{"good","a","good","hao"},

         {"ball","n","bo:","qiu"},

         {"cat","n","cat""mao"},

         {"cattle","n","katl","niu"},

         {"clean","adj+d+v","kli:n","1.gan jin 2.gongzheng"},

          {"a","num","ei","yi ge"},

         {"finally","ad","fai'nens","zuizhong"},

         {"fine","adj+ad+v+n","fain","1.shushi2.hao"},

          {"finish","v+n","finish","wancheng"},

          {"girl","n","ge:l","nvhai"},

          {"five","v","giv","gei"},

          {"go","n+v","gou","zou"},

          {"help","int+n","help","bangzhu"},

          {"he","pron","hi:","ta"},

          {"here","ad+ini","hie","zheli"},

          {"high","aadj+ad+n","hai","gao"},

         {"ice","n","ais","bing"},

          {"idea","n","ai'die","zhuyi"},

         {"in","v","in:","zailimian"},

          {"kill","v","kil","shasi"},

         {"king","n","king","guowang"},

          {"kiss","v+n","kis","wen"},

          {"knight","n+v","nait","qishi"},

         {"late","adj+ad","leit","1.chi de 2.yihoude"},

         {"left","adj+ad+n","left","zuobian"},

          {"line","n+v","lain","xian"},

         {"name","n+v","neim","mingzi"},

          {"mission","v","mision","rengwu"}};

                         clrscr();

    loop:

   for(;;)

         {     clrscr();

          printf("\n\t   ****Please make a choise****\n");

          printf("\n\n\t 1.Add the new word\n");

          printf("\t 2.Del word\n");

          printf("\t 3.find word\n");

          printf("\t 4.Exit the process\n\n");

          printf("  Please choose 1~4 to enter\n");

          printf("  Please press the key:");

          scanf("%c",&m);

          switch(m)

         {

     case '1':

          {

         char j[10],k[15],l[10],p[30];

         ++n;

         printf("\n  Add new word");

         printf("\n\n  please enter the Danci: ");

         scanf("      %s",j);

         printf("\n  Enter the Cixing:");

         scanf("     %s",k);

         printf("\n  Enter the Yingbiao:");

         scanf("     %s",l);

                printf("\n  Enter the Chinese:");

         scanf("     %s",p);

         strcpy(word[n].eng,j);

         strcpy(word[n].ci,k);

         strcpy(word[n].yin,l);

         strcpy(word[n].chi,p);

         printf("\n    Please check it:");

                    printf("\n\n    English.   %s",word[n].eng);

                    printf("\n\n    Cixing:    %s", word[n].ci);

                    printf("\n\n    Yinbiao:   %s", word[n].yin);

                    printf("\n\n    Chinese:   %s\n\n",word[n].chi);

            printf("\n    Please press any key with Enter key back!");

                                 scanf("%s",m);

}  goto loop;

case '2':

             {

             char r[10];

             int s,t,u,z=0,x=0;

             printf("  Please press the English you want to del:");

             scanf("%s",r);

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

               {

               if(s<=n-1)

                {

                 if(strcmp(word[s].eng,r)==0)

                 {

                             x=1;

                   for(t=s;t<n;t++)

                   {

                   strcpy(word[t].eng, word[t+1].eng);

                   strcpy(word[t].ci, word[t+1].ci);

                   strcpy(word[t].yin, word[t+1].yin);

                   strcpy(word[t].chi, word[t+1].chi);

               }

 }

                 }

              else

                { if(strcmp(word[n].eng,r)==0)

                    z=1;

                 else

                  z=0;

                }

               }

                if(z==1||x==1)

              {

              printf("\n\n  Del sucessful!!\n");

              n--;

              printf("\n    Please press any key with Enter key back!");

   scanf("%s",m);

              }

                        else

                {

                 printf("\n\n     Del failed!!");

               printf("\n    Please press any key with Enter key back!");

               scanf("%s",m);

                 }

           }

             break;

case '3':

             {

                int l;clrscr();

            printf("\n\nSearch the word\n");

           printf("1.Search by English:\n");

           printf("2.Search by Chinese:\n");

           printf("Other key back\n");

          printf(" Please choose one:");

                  scanf("%d",&l);

                  switch(l)

              {   case 1:

                 {  char r[10],m[1]; int s;

                    printf("\n    Please enter the English word:");

                              scanf("%s",r);

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

{

                       if(s<=n-1)

                         if(strcmp(word[s].eng,r)==0)

                           break;

                         else

                           continue;

                       else

                         if(strcmp(word[n].eng,r)==0)

                           break;

                         else

                           {

                                      char m[1];

                                      printf("\n    No this word!!\n    Please press any key with Enter key back!");

                                      scanf("%s",m);

                                      goto loop;

  }

                       }

printf("\n\n    English.   %s", word[s].eng);

                    printf("\n\n    Cixing:    %s", word[s].ci);

                    printf("\n\n    Yinbiao:   %s", word[s].yin);

                    printf("\n\n    Chinese:   %s", word[s].chi);

                         printf("\n\n\n    Please press any key with Enter key back!");

                                      scanf("%s",m);

                }  goto loop;

                         case 2:

                {  char r[10],m[1]; int s;

                    printf("\n    Please enter the Chinese:");

                              scanf("%s",r);

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

                    {    if(s<=n-1)

                         if(strcmp(word[s].chi,r)==0)

                           break;

                         else

                           continue;

                      else

                         if(strcmp(word[n].chi,r)==0)

                           break;

                      else

                           {

                                      char m[1];

                       printf("\n    No this word!!\n    Please press any key with Enter key back!");

                                      scanf("%s",m);

                                      goto loop;

                           }

                       }

                   printf("\n    English.   %s", word[s].eng);

                   printf("\n\n    Cixing:    %s", word[s].ci);

                   printf("\n\n    Yinbiao:   %s", word[s].yin);

                   printf("\n\n    Chinese:   %s", word[s].chi);

                         printf("\n\n\n Please press any key with Enter key back!");

                         scanf("%s",m);

                default: goto loop;break;

                }

                           }

                          }

                    case '4': exit(0);

                   default:  break;

       }

}

}

八、设计总结

     为期一星期的C语言实训已经基本结束,但是给我的影响是相当大的。通过这次实训,使我明白C语言这门课程光仅仅是听课是远远不够的,上机训练也不容忽视。
    通过上机训练,才能够明白自己知识的不足,才能够有的放矢,更加深刻的理解C语言中的知识点。 

通过实训,我找到了许多知识漏点,学到了很多以前不懂的知识,以前认为自己已经懂了的知识点也理解更加深刻了。尤其是遇到了自己当时不知道如何编写的C语言题目如何编写,通过自己的学习和同同学的交流后,试编和改错,最后能够顺利的编写出来,带来的也有成就感。并增加了我们对C语言的兴趣和学好C语言的信心。
    与同学们交流的过程中,了解了程序的多种解决方法,知道了不同编写方法有不同的特点。总结C语言实训的几个重要作用:
1.加深对课堂讲授内容的理解
   课堂上要讲授许多关于C语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用C语言这个工具解决实际问题,又必须掌握它。通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握C语言的语法规定。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差。
    2.熟悉程序开发环境、学习计算机系统的操作方法
    一个C语言程序从编辑、编译、连接到运行,都要在一定的外部操作环境下才能进行。所谓"环境"就是所用的计算机系统硬件、软件条件,只有学会使用这些环境,才能进行程序开发工作。通过上机实验,熟练地掌握C语言开发环境,为以后真正编写计算机程序解决实际问题打下基础。同时,在今后遇到其它开发环境时就会触类旁通,很快掌握新系统的使用。
3.学习上机调试程序
    完成程序的编写,决不意味着万事大吉。你认为万无一失的程序,实际上机运行时可能不断出现麻烦。如编译程序检测出一大堆错误。有时程序本身不存在语法错误,也能够顺利运行,但是运行结果显然是错误的。开发环境所提供的编译系统无法发现这种程序逻辑错误,只能靠自己的上机经验分析判断错误所在。
    通过这次为数不多的几天计算机实践学习,我们更好的了解了一些关于C语言的知识,理解巩固了我们C语言的理论知识。 C语言这门课程对于我们应用电子专业的同学也相当重要,我们会再将来继续学习并熟悉这门课程

更多相关推荐:
C语言实验报告范文

计算机科学与技术系C语言实验报告实验名称:指针及其应用日期:得分:指导老师:专业:班次:姓名:学号:实验目的(1)掌握变量的指针及其基本用法。(2)掌握一维数组的指针及其基本用法。(3)掌握指针变量作为函数的参…

C语言实训报告

C语言程序设计与数据结构实训报告课题名称通讯录管理系统专业软件技术开发方向班级软件G083学号姓名徐阳指导教师黄爽20xx年12月25日目录1课程设计目的12课程设计题目13课程设计报告内容14结论105结束语...

C语言实验报告标准格式

暨南大学本科实验报告专用纸课程名称高级语言程序设计成绩评定实验项目名称结构体和共用体指导教师张晓刚实验项目编号8060151108实验项目类型综合性实验地点C301学生姓名苟长弘学号20xx051282学院信息...

C语言实验报告书写格式及模板

大学学院实验报告专业名称实验室实验课程C实验名称姓名学号同组人员实验日期语言程序设计程序设计12345678

c语言实验报告模板完成版

高级语言程序设计学生实验报告专业计算机科学与技术学号姓名1实验一C程序的运行环境和使用方法1实验目的1了解所用的计算机系统的基本操作方法学会独立使用该系统2了解在该系统上如何编辑编译连接和运行一个C程序3通过运...

C语言实验报告范本

实验报告课程名称C语言程序设计实验项目顺序结构程序设计实验仪器计算机系别信息与通信工程学院专业通信班级学号通信120420xx010934学生姓名王浩鑫实验日期20xx年4月13日成绩指导教师一实验目的1234...

c语言实验报告范本

说明下面的模板中黑体字标明的部分是我加的注释大家要按注释来写报告实验项目名称符号函数的实现此条要求写清楚一实验目的熟练掌握ififelseifelseif语句格式及使用方法掌握if语句中的嵌套关系和匹配原则利用...

C语言实训报告模板

XXXX大学课程名称项目名称学院姓名学号指导教师实训报告C语言程序设计课设BBCC系统专业成绩年月日目录第1部分课程设计题目与要求2222第2部分学生BBCC系统的设计与功能实现333333第3部分课程设计总结...

C语言实训报告模板

北京化工大学C语言实训实习报告题目学生姓名所在系院专业名称高玲玲学号20xx014212学生信息管理系统信息技术与科学学院测控技术与仪器年级测控100120xx0710北京化工大学信息科学与技术学院C语言实训实...

C语言上机实验报告_书写格式

实验报告课程名称C语言程序设计实验项目实验一顺序结构程序设计实验仪器系别光电学院专业电信班级学号学生姓名实验日期20xx年10月17日成绩指导教师一实验目的1掌握C语言中基本的输入输出函数的使用方法2掌握pri...

C语言实验报告模板

C程序设计实验报告班级一班姓名赵东珠日期20xx年10月7日星期二同组人薛莲指导教师刘宝超评分一实验名称数组应用程序设计实验二实验内容问题描述1改正下列程序的错误使之具有如下功能输入10个整数按每行3个数输出这...

C语言实验报告

上机要求禁止玩游戏看视频及从事与课程无关的活动实验内容按照指导书内容填写可以把自己上机编写的程序遇到的问题解决办法写上得到高分的条件在有输入输出的程序部分应该写上输入输出的结果以表示程序能正确工作实验一编程环境...

c语言实训报告(40篇)