第一次作业

#include<stdio.h>int main()
{
    float x,y;
    scanf("%f",&x);
    if(x!=0)
    {
        y=1/x;
        printf("f(%.1f) = %.1f",x,y);
    }
    else
    {
        printf("f(%.1f) = 0.0",x,y);
    }
}

这是分支结构的计算分段函数[1],以上是正确答案

基本思路是,第一步我们应该知道得数会是一个小数,所以我们需要用float,而不是int,第二部我们发现此题是一个分段函数,所以应该考虑到用if-else语句,这道题我们可以将他分成两段,所以不用考虑if-else if-else语句,根据题目要求我们就可以得到我们想要的答案。

流程图如下

这是第一次完成的程序,但是出现了错误,是因为else的后面不能加修饰的句子

所以进行了一次修改,但是忽略了结果会是小数的可能性,用了%d,这样答案就会是0,所以我立刻改成了float浮点数,最后结果正确了

二.

#include<stdio.h>
int main()
{
    int i;
    int sum=0;
    for(i=1;i<=100;i++)
    {
        sum=sum+i;
    }
    printf("sum = %d",sum);
    return 0;
}

这是循环1,7-6求1-100的和的正确答案

这道题的基本思路是,第一步设置一个变量i,sum,把sum的初始值设成是0,第二部运用for循环语句,将i从1加到100,第三步,输出sum的值

流程图如下:

第一次做这道题的时候,我没有设sum的初始量,虽然编译的结果是对的,但是运行的结果是5051,而不是正确结果5050.最后即使改正错误,做出了正确答案

#include<stdio.h>
int main()
{
 int number,temp,i=0,sum=0;
 scanf("%d",&number);
 temp=number;
 while(temp)
 {
  sum+=temp%10;
  temp/=10;
  i++;
 }
 printf("%d %d\n",i,sum);
 return 0;
}

这是循环2,7-3求整数的位数及各位数字的和

这道题的基本思路是:第一步:设num,i,sum,temp为变量,其中i=0,sum=0,temp是任意变量,第二步:使用while循环,while循环中包括(sum+=temp%10;temp/=10;i++;)最后输出答案。

第一次做出来的程序的错误是因为while语句后面没有语句,之后我及时修改成功,完成了这道题

流程图如下:

三.总结学习和进度条

1.这几周学习了循环和函数,学了很多知识,但是遇到的问题也非产多,比如在学习循环是会考虑不到应该怎么样才能是现实循环结构,有时候不知道应该用哪种循环语句,总是会混淆。在学习函数的时候遇到的问题就更多了,因为学习函数的时候还会涉及到之前学过的知识,由于之前的基础没有打牢,所以听起来会有一些吃力。主观原因还有自己的代码量不是太多,没有很好的了解C语言这门课程,还没有真正的了解它的套路,和学习它的方法。有时候甚至会看不懂一些程序,但是我会请教一些学长,或者查一些学习资料,我应该找个机会多了解这门语言,尽快的适应它的规律,来更好的问我打好基础。

2.https://www.cnblogs.com/congziqi123/p/10028452.html 丛梓祺

  https://www.cnblogs.com/zyn-66/p/9984819.html 章宇楠

https://www.cnblogs.com/wsaldh/p/10020798.html 梁德辉

我邀请丛梓祺,陈清涛,章宇楠来邀请

本周 代码量 知识点
上周 30 循环
上周 50 函数
posted @ 2018-11-28 22:41  张虹泽  阅读(180)  评论(5编辑  收藏  举报