大一C语言第一次实验:小学生教学系统

简介: 高级语言程序设计报告 打印版报告截止上交日期:2014年11 月 15 日电子版报告发至2629610662@qq.com, 邮件标题写明报告次数序号姓名序号34姓名许恺照片 成绩 E-MAIL及电话18810556775实习题目第一次作业: 函数七章实验题之素数探求2-6七章实验题之小学生计算机辅助教学系统(用模块化程序设计方法完成六章之任务6即可)此2题单独编程,即不在ACM系统中完成。

高级语言程序设计报告

 

打印版报告截止上交日期:201411 15

电子版报告发至2629610662@qq.com, 邮件标题写明报告次数序号姓名

序号

34

姓名

许恺

照片

 

成绩

 

E-MAIL及电话

18810556775

实习题目

第一次作业: 函数

  1. 七章实验题之素数探求2-6
  2. 七章实验题之小学生计算机辅助教学系统(用模块化程序设计方法完成六章之任务6即可)
  3. 此2题单独编程,即不在ACM系统中完成。
  4. 要求综合运用本章所学内容(注释、起名规则、缩进等)。

 

 

  1. 你的代码、注释及运行结果贴图。
  2. 设计及调试过程遇到的问题及解决方案。
  3. 心得体会和自我对程序的评价。

任务六

一、 代码及注释

//编辑人:许恺

//编辑题目:小学生教学系统

//时间: 12月2日

 

#include <stdlib.h>

#include <stdio.h>

#include <time.h>

int Add(int a);

int jianfa(int a);

int chengfa(int a);

int chufa(int a);

double pingjia(int d);

double pingjia1(int d);

int main()

{

  int e,a,b,c,d,f,g=0;

  do

  {

    for(e=1;e<=10;e++)             //出十道题

    {

      srand(time(NULL));

      b=rand()%4+1;             //随机加减乘除

      switch(b)

      {

        case 1:f=Add(a);

                 break;

        case 2:f=jianfa(a);

           break;

        case 3:f=chengfa(a);

           break;

        case 4:f=chufa(a);

           break;

        }

      if(f==1)   g=g+10;          //算总分和正确率

    }

    printf("%d %d%%\n",g,g);

      }while(g<=75);

  return 0;

  }

int Add(int a)     //加法运算块

{

  int b,c,d;

  srand(time(NULL));

  b=rand()%10+1;

  c=rand()%10+1;

  d=b+c;

  printf("%d+%d=?\n",b,c);

  scanf("%d",&a);

     if(a==d)                       //判断正误并返回数值

    {

    pingjia(d);         

      return 1;                    

  }

  else

  {

    pingjia1(d);

    return 0;}

  }

int jianfa(int a)               //减法运算块

{

int b,c,d;

do                           //防负数抽取

{

    srand(time(NULL));

b=rand()%10+1;

c=rand()%10+1;

}while(b<c);                   

d=b-c;     

printf("%d-%d=?\n",b,c);

scanf("%d",&a);

if(a==d)                              //判断正误并返回数值

{pingjia(d);

    return(1);}

else

{

pingjia1(d);

return 0;}

}

int chengfa(int a)

{

int b,c,d,e;

srand(time(NULL));

b=rand()%10+1;

c=rand()%10+1;

d=b*c;

printf("%d*%d=?\n",b,c);

scanf("%d",&a);

    if(a==d)                              //判断正误并返回数值

    {pingjia(d);

    return 1;

}

else

{

pingjia1(d);

return 0;}

}

int chufa(int a)

{

int b,c,d,e;

do                                //防除不尽抽取

{

srand(time(NULL));

b=rand()%10+1;

c=rand()%10+1;

    }while(b<c||b%c!=0);

d=b/c;

printf("%d/%d=?\n",b,c);

scanf("%d",&a);

    if(a==d)                             //判断正误并返回数值

    {pingjia(d);

    return 1;

}

else

{

pingjia1(d);

return 0;}

}

double pingjia(int d)                 //赞扬的评价系统

{

srand(time(NULL));

d=rand()%4+1;

switch(d)

{

case 1:printf("Very good!\n");

       break;

case 2:printf("Excellent!\n");

   break;

case 3:printf("Nice work!\n");

   break;

case 4:printf("Keep up the good work!\n");

   break;

    }

}

double pingjia1(int d)                //做错了的评价系统

{

srand(time(NULL));

d=rand()%4+1;

switch(d)

{

case 1:printf("No.Please try again.\n");

       break;

case 2:printf("Wrong.Try once more.\n");

   break;

case 3:printf("Don't give up!\n");

   break;

case 4:printf("Not correct.Keep trying.\n");

   break;

    }

}

二、 运行结果贴图

 

 

三、 设计及调试过程中遇到的问题及解决方案

    遇到了有关switch语句和随机数不会使用的情况,主要是书看的少,经过看书之后已解决。另外,还犯了for语句没有赋初值的错误,被波波老师纠正,也已改正。一开始在主函数中连续使用if使程序不美观,看书后改用switch.还有函数命名方面实在恶心,由于本人英语水平有限,目前还未解决。

四、 心得体会和自我对程序的评价

        做事不要拖延,看起来很难,当走出第一步,就可以用复制粘贴去跑了,程序基本完整美观最大缺憾就是交的时间太晚,其实说的是系统,也就那么回事,以后几百行的程序也不在话下,用心去编,都没问题。但是对c的一些语句和技巧不太了解,需要更加努力,总的来说还行,已达到内心的标准。加油!!

相关文章
|
28天前
|
监控 网络协议 API
C语言系统编程
C语言系统编程
|
1月前
|
存储 编译器 C语言
初识C语言——详细入门(系统性学习day4)
初识C语言——详细入门(系统性学习day4)
|
1月前
|
存储 Linux C语言
Linux系统下C语言的构造数据类型
Linux系统下C语言的构造数据类型
12 0
|
1月前
|
Linux C语言 开发者
Linux系统下C语言的高阶编程
Linux系统下C语言的高阶编程
15 0
|
1月前
|
Linux C语言
Linux系统下C语言的队列操作
Linux系统下C语言的队列操作
23 0
|
1月前
|
编译器 程序员 开发工具
c语言从入门到实战——在系统学习C语言之前所需要了解的知识
C语言是一种通用的、过程式的计算机编程语言,支持结构化编程、词汇变量作用域和递归等功能,其设计提供了低级别的存取权限,并且要求程序员管理所有的内存细节。C语言的基本构成包括数据类型(如整型、浮点型、字符型等)、运算符(如算术运算符、关系运算符、逻辑运算符等)、控制结构(如顺序结构、选择结构、循环结构等)以及函数等。此外,C语言还提供了指针的概念,这是其他许多编程语言所不具备的。指针是一个变量,其值为另一个变量的地址,通过指针可以间接访问和操作内存中的数据。C语言也支持数组、结构体、联合体等复合数据类型,以及文件操作、动态内存分配等高级功能。
49 0
|
1月前
|
编译器 Linux C语言
c语言结构体知识系统详解
c语言结构体知识系统详解
48 0
|
4月前
|
存储 C语言
C语言第六十弹----设计函数判断系统大小端字节序
C语言第六十弹----设计函数判断系统大小端字节序
|
1月前
|
存储 Linux C语言
Linux系统下C语言的文件操作
Linux系统下C语言的文件操作
17 0
|
15天前
|
机器学习/深度学习 C语言
【C语言】函数的系统化精讲(三)1
【C语言】函数的系统化精讲(三)