C语言第一次实验报告

一.实验题目,设计思路,实现方法

1  实验题目

7-7 计算火车运行时间

本题要求根据火车的出发时间和达到时间,编写程序计算整个旅途所用的时间。

4-7 求平方与倒数序列的部分和

本题要求对两个正整数mnmn)编写程序,计算序列和m2​​+1/m+(m+1)2​​+1/(m+1)++n2​​+1/n

4-2-6 到底是不是太胖了

据说一个人的标准体重应该是其身高(单位:厘米)减去100、再乘以0.9所得到的公斤数。真实体重与标准体重误差在10%以内都是完美身材

(即 | 真实体重 − 标准体重 | < 标准体重×10%)。已知市斤是公斤的两倍。现给定一群人的身高和实际体重,请你告诉他们是否太胖或太瘦了。

2.设计思路

7-7 计算火车运行时间

将数据拆分成两组,分别计算小时还有分钟数,注意临界情况还有进制问题。

4-7 求平方与倒数序列的部分和

根据题目给出的式子,找到项与项之间的关系,分开循环计算并求和。

4-2-6 到底是不是太胖了

写出三个结果对应的条件判断式子,用while语句进行循环。

3.实现方法

1.首先说明7-7 计算火车运行时间

数据拆分后进行求余与除法运算,注意分钟数不足时要从小时数退一位。

2.说明4-7 求平方与倒数序列的部分和

关键在于循环体语句的写法。先把存储和的变量初始化为0,用for循环两个分开语句计算平方项的和与分数项的和,随后将两个存储和的变量相加。

3.最后说明4-2-6 到底是不是太胖了

这题重点是while语句的使用,表达式的值非0是 执行循环,然后三个if分支判断与打印结果。

二.源程序(可只截取最关键的部分)

7-7 计算火车运行时间

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
int h1,h2,m1,m2;
    int t1,t2;
    scanf ("%d%d",&t1,&t2);
    h1=t1/100;h2=t2/100;
    m1=t1%100;m2=t2%100;
    if(m1<m2)
    {
        printf ("%02d:%02d",h2-h1,m2-m1);
    }
    if(m1>m2)
    {
        printf("%02d:%02d",h2-h1-1,m2+60-m1);
    }
    if(h1==h2 && m1==m2)
    {
        printf("00:00");
    }
    if(h1!=h2 && m1==m2)
    {
        printf("%02d:00",h2-h1);
    }
    return 0;

4-7 求平方与倒数序列的部分和

复制代码
 scanf ("%d %d",&m,&n);
  S=0,result=0,sum=0;
  for (i=m;i<=n;i++){
    result=result+1.0/i;
    sum=sum+pow (i,2);
    S=result+sum;
  }
复制代码

4-2-6 到底是不是太胖了

复制代码
    while(n--)
{    
  scanf("%lf %lf",&h,&w);
    c=(h-100)*1.8 ;
    if(fabs(w-c)<c*0.1){
        printf("You are wan mei!\n");
    }
    if(fabs(w-c)>=c*0.1 && w<c){
        printf("You are tai shou le!\n");
    }
    if(fabs(w-c)>=c*0.1 && w>c){
            printf("You are tai pang le!\n");
    }
复制代码

三.遇到的问题及解决方法,心得体会

 对于题目的分析要全面考虑临界值要 准确。如果循环体出错且测试结果 与题目要求相差甚远,应该尽早重来,这样能避免按照老思路而钻牛角尖阻碍解题进程。多多积累联系能增强我们的 问题分析与解决能力。要保证代码的整洁度问题,若代码凌乱不堪,则很容易在调试代码的时候无从下手。

posted on 2017-10-30 23:38  十号风球  阅读(566)  评论(0编辑  收藏  举报