首页 > 编程语言 > 详细

C语言程序设计实验报告(二)

时间:2020-03-13 19:06:55      阅读:68      评论:0      收藏:0      [点我收藏+]

C程序设计实验报告(二)

♦实验项目:2.3.3字符与ASCII码;2.3.4运输符与表达式的应用;2.3.5顺序结构应用程序;3.3.1数学函数的算法;3.3.2鸡兔同笼的算法;3.3.3坐标的算法

♦ 姓名:聂石燕

♦实验地点:家中

♦实验时间:2020.03.10


 

一、实验目的与要求

1、掌握自增++、自减--运算符的正确使用。

2、掌握基本的输入/输出函数的基本功能、调用方法、输入/输出格式控制规定等。

3、掌握结构化程序的算法描述方法。

4、熟练掌握C语言的运算符,即运算符的优先级和结合性、运算规则、运算对象类型等。


 

二、实验内容

1、实验练习:2.3.3字符与ASCII码

1问题的简单描述:输出错误

2实验代码:

#include<stdio.h>
main()
{
    char c,d,e,f;
    printf("请输入一个大写字母:\n");
    scanf("%c",&c);
    d=c+31;
    e=c+32;
    f=c+33;
    printf("小写字母为%c,%c,%c\n",d,e,f);
printf("ASCII值为%d,%d,%d\n",d,e,f);
}
     

 

3问题分析:字符型变量用char,格式符用%c ; ASCII值为整型;大小写字母的ASCII码值相差32 

 


 

2、实验练习:2.3.4运输符与表达式的应用

1问题的简单描述:一个3 位的正整数,不知道怎样去表达其十位数数字。

2实验代码:

 1 #include<stdio.h>
 2 main()
 3 {
 4        int a,b,c,x,y;
 5        printf("请输入一个3位的正整数:\n",x);
 6        scanf("%d",&x);
 7        a=x/100;
 8        b=(x/10)%10;
 9        c=x%10;
10        y=c*100+b*10+a;
11        printf("%d: %d\n",x,y);
12        
13 }

 3问题分析:% 代表取余数, / 表示取整。       


 

3、实验练习:2.3.5顺序结构应用程序

1问题的简单描述:无

2实验代码:

#include<stdio.h>
main()
{
        float x,j,c1,c2,g,h,yf,sf,zh;
/*x代表西药费,j代表检查费,c1材料费,c2代表床位费,g代表观察费,h代表护理费,yf代表应付款,sf代表病人付款,zh代表找回的金额;*/
        printf("请输入西药费,检查费,材料费,床位费,观察费,护理费:\n");
        scanf("%f,%f,%f,%f,%f,%f",&x,&j,&c1,&c2,&g,&h);
        yf=x+j+c1+c2+g+h;
        printf("应付款(元):%.2f\n”,yf);
        printf("病人付款(元):\n");
        scanf("%f",&sf);
        zh=sf-yf;
        printf("计算结果:\n");
        printf("病人付款=%6.2f元\n 应付款=%6.2f元,应找回=%6.2f元\n",sf,yf,zh);
 }      

3问题分析:变量比较多,注意中英文的切换,每个语句结束后不要漏掉 ;  


 

4、实验练习:3.3.1数学函数的算法

1问题的简单描述:if  else语句不太会用。输入-1,得到的是0。

2实验代码:

#include<stdio.h>
main()
{ 
       fioat x,y;
       printf("请输入x的值:");
       scanf("%f",&x);
       if(x<1)
       y=x;
       else
             if(x>=1&&x<10)
             y=2*x-1;
             else
             y=3*x-1;
       printf("y的值为%.2f\n",y);
}

 流程图:

技术分享图片

3问题分析:刚开始条件语句表达错误;当if体的语句为一条简单的语句时,可以省略{ },多于一条时,要用{ }把这些语句括起来。


 

5、实验练习:3.3.2鸡兔同笼的算法

1问题的简单描述:没有得到x,y ;输出提示输入有误。

2实验代码:

#include<stdio.h>
main()
{
       int h,f,x,y;
       printf("鸡兔总头数,鸡兔总脚数:");
       scanf("%d,%d",&h,&f);
       if(h>0&&f>0)
       {
            x=(4*h-f)/2;
            y=(f-2*h)/2;
            printf("鸡有%d 兔有%d\n",x,y);
       }
       else
            printf("输入有错误!\n");
}

 流程图:

技术分享图片

3问题分析: h都要大于0 ;4*h 写成了4h ,漏掉了


 

6、实验练习:3.3.3坐标的算法

1问题的简单描述:根号和平方怎么表示。

2实验代码:

#include<stdio.h>
#include<math.h>
main()
{
      int h;
      float 
 x1=2,y1=2,x2=-2,y2=2,x3=-2,y3=-2,x4=2,y4=-2,x,y,d1,d2,d3,d4;
      printf("请输入一个点(x,y):\n");
      scanf("%f,%f",&x,&y);
      d1=sqrt(pow(x-x1,2)+pow(y-y1,2));
      d2=sqrt(pow(x-x2,2)+pow(y-y2,2));
      d3=sqrt(pow(x-x3,2)+pow(y-y3,2));
      d4=sqrt(pow(x-x4,2)+pow(y-y4,2));
      if(d1>1&&d2>1&&d3>1&&d4>1)
      h=0;
      else
      h=10;
      printf("该塔的高度为%d",h)
}

3问题分析:开方用sqrt( )函数,x的y次方用pow(x,y)表示

 


 

三、实验小结

            这是本学期的的第四周,也是第二次实验课,学习C语言已经有四个周了,我对C语言的学习也越来越有感觉了。 通过本次实验基本掌握了简单的算法描述;用流程图的表达算法思想;运算符的优先级、运算规则、运算对象;算法的结构等。同时,在实验的过程中也暴露出很多的问题,如漏掉乘号 、if 语句不熟悉、课后缺少练习等,查漏补缺、循序渐进。

 

C语言程序设计实验报告(二)

原文:https://www.cnblogs.com/nsy-2019/p/12466266.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!