zoukankan      html  css  js  c++  java
  • 第一次实验报告

    实验项目:

    1.字符与ASCII码
    2.运算符与表达式的应用
    3.顺序结构应用程序
    4.数学函数的算法简述
    5.鸡兔同笼的算法简述
    6.确定坐标的算法简述

    姓名:袁诚 实验地点:教学楼514教室 实验时间:3月19日

    一、实验目的与要求

    1.字符与ASCII码

    ·了解字符在计算机中以ASCII码方式表示;
    ·了解字符的类型、字长其数的表示范围;
    ·熟练使用scanf()输入用户提供的数据;
    ·熟练使用printf()输出变量。

    2.运算符与表达式的应用

    ·掌握算数运算符的使用;
    ·正确定义程序中的变量;
    ·熟练使用scanf()输入用户提供的数据;
    ·熟练使用printf()输出变量。

    3.顺序结构应用程序

    ·掌握算术运算符的使用;
    ·正确定义程序中的变量;
    ·熟练使用scanf()输入用户提供的数据;
    ·熟练使用printf()输出变量。

    4.数学函数的算法简述

    ·用if语句根据条件的真假进行判断;
    ·掌握运算符的运算规则。

    5.鸡兔同笼的算法简述

    ·用if语句根据条件的真假进行判断;
    ·掌握运算符的运算规则。

    6.确定坐标的算法简述

    ·用if语句根据条件的真假进行判断;
    ·掌握运算符的运算规则。

    二、实验内容

    2.3.3实验练习

    1.问题描述
    从键盘输入一个大写字母,要求转换成小写字母输出,并输出这个小写字母相邻的两个字母,以及他们的ASCII码值。
    2.实验代码:
    ``` #include main() { char a,b,c,d; printf("请输入大写字母:"); scanf("%c",&a); b=a+32; c=a+33; d=a+31; printf("小写字母为:%c,%c ,%c ",d,b,c); printf("ASCII码值为:%d,%d,%d ",d,b,c); } ```
    3.问题分析
    问题:实验中,输出函数中的输出方式出现了问题,没有注意到%c才是输出字符型数据。 解决方法:多注意需要输出的数据类型,以及检查代码中的输出方式是否有问题。

    2.3.4实验练习

    1.问题描述
    从键盘输入一个3位整数,将输出该数的逆序数。例如,输入123.输出321.
    2.实验代码:
    ``` #include main() { int a,b,x,y,z; printf("请输入一个3位的正整数:"); scanf("%d",&a) ; x=a%10; y=(a%100)/10; z=a/100; b=x*100+y*10+z; printf("%d:%d",a,b); } ```
    3.问题分析
    问题:实验中,输出的数并不是输入数的逆序数,十位个位或者百位会乱掉顺序。 解决方法:在草稿纸上清晰地列出相应的算法公式,再进行排序。

    2.3.5实验练习

    1.问题描述
    编写一个程序,用于医院收费出纳算账。要求输入所在医院费用(西药费、检查费、材料费、床位费、
    观察费和护理费),打印出因付钱数,再输入病人所付款,打印出应找的钱数(已知某病人,西药费
    268.2元,检查费600元,注射用材料费206元,床位费120,观察费360元,护理费220元)。
    2.实验代码:
    ``` #include main() { float a,b,c,d,e,f,n,x,y; printf("输入西药费,检查费,材料费,床位费,观察费,护理费: "); scanf("%f,%f,%f,%f,%f,%f",&a,&b,&c,&d,&e,&f); n=a+b+c+d+e+f; printf("应付款(元):%.2f",n); printf("病人付款(元):"); scanf("%f",&x); printf("计算结果; "); printf("病人付款=%.2f ",x); printf("应收款=%.2f元",n); y=x-n; printf("应找回=%.2f元",y);

    }

    <h5>3.问题分析</h5>问题:实验中,输出的值不是正确的值,有较大误差。
    解决方法:检查输出与输入的格式是否会影响函数的运算结果,然后将一些不正确的格式改正过来。
    <h3>3.3.1实验练习
    </h3><h5>1.问题描述</h5>有一函数:![](https://img2018.cnblogs.com/blog/1616360/201903/1616360-20190324180032284-1934544296.jpg)
    
    请使用流程图表示该函数的算法。输入x值,输出满足函数关系的y值。并用C语言编写程序进行检验。
    <h5>2.实验代码:</h5>
    

    include <stdio.h>

    main()
    {
    float x,y;
    printf("第1组输出: 请输入x的值:");
    scanf("%f",&x);
    if(x<1)
    {
    y=x;
    }
    else
    {
    if(x<10)
    {
    y=2x-1;
    }
    else
    {
    y=3
    x-1;
    }
    }
    printf("Y的值为%.2f",y);

    }

    <h5>3.问题分析</h5>问题:实验中,不知道该如何实现连续两个的判断语句。
    解决方法:使用if嵌套,在if语句中,内嵌一个if语句。
    <h3>3.3.2实验练习
    </h3><h5>1.问题描述</h5>用流程图描述求解鸡兔同笼问题的算法:已知鸡兔的总头数为h(head),求鸡兔各有多少只?
    <h5>2.实验代码:</h5>
    

    include <stdio.h>

    main()
    {
    int h,f,x,y;
    printf("输入:");
    scanf("%d,%d",&h,&f);
    if(h>0&&f>0)
    {
    x=(4h-f)/2;
    y=(f-2
    h)/2;
    printf("显示:鸡:%d 兔:%d",x,y);
    }
    else
    {
    printf("输入数据有误!");
    }

    }

    <h5>3.问题分析</h5>问题:实验中,不知道如何同时满足两个条件来进行判断。
    解决方法:在if语句的判断中,使用逻辑语句,可以完成多个条件同时判断。
    <h3>3.3.3实验练习
    </h3><h5>1.问题描述</h5>有4个圆塔,圆心分别为(2,2)、(-2,2)、(2,-2)、(-2,-2),圆
    半径为1,如图3-3所示。这4个塔的高度均为10m,塔以外无建筑物。现输入任一点的坐标,若改点坐标在任一圆塔内,<br>则输出圆塔的高度;若该点不在圆塔内,则输出0。
    <h5>2.实验代码:</h5>
    

    include <stdio.h>

    include <math.h>

    main()
    {
    int h,l;
    float x1,y1,x2,y2,x3,y3,x4,y4,d1,d2,d3,d4,m,n;
    printf("请输入一个点:");
    scanf("%f,%f",&m,&n);
    h=10;
    l=0;
    x1=2;y1=2;
    x2=2;y2=-2;
    x3=-2;y3=-2;
    x4=-2;y3=2;
    d1=sqrt((m-x1)(m-x1)+(n-y1)(n-y1));
    d2=sqrt((m-x2)(m-x2)+(n-y2)(n-y2));
    d3=sqrt((m-x3)(m-x3)+(n-y3)(n-y3));
    d4=sqrt((m-x4)(m-x4)+(n-y4)(n-y4));
    if(d1<1||d2<1||d3<1||d4<1)
    {
    printf("该点高度为:%d",h);
    }
    else
    {
    printf("该点高度为:%d",l);
    }

    }

    <h1>三、实验小结</h1>收获:本次实验,我对于scanf函数与printf函数的输出与输入更加熟练与熟悉了,并且对于输入与输出函数<br>中的格式有了更深的了解。对于if语句,我也有了不少的认识,知道了if语句的嵌套如何使用,知道了if语句<br>中可以使用逻辑语句来完成一些更加复杂的判断。
    不足:本次实验中,我经常会有一些小细节不注意,导致会有一些错误迟迟没有发现,浪费了很多的时间。<br>对于知识的掌握也不算太牢固,虽然实验中的大部分知识都知道,但是正真用起来还是不灵活。
  • 相关阅读:
    ASP.NET 2.0 正式版中无刷新页面的开发
    Flex在线录制视频并回放(源码)
    url重写
    在Web应用程序中执行计划任务
    添加类别和修改类别(无限级别分类)
    用C#制作新闻阅读器
    字符串处理
    编程珠玑随笔
    实现元素的全排列
    提高代码质量的三要素
  • 原文地址:https://www.cnblogs.com/ylpforever/p/10589333.html
Copyright © 2011-2022 走看看