王思雨(第一次作业)

时间:2021-10-04 21:58:33

一.分支结构

7-1 计算存款利息 (10 分)

本题目要求计算存款利息,计算公式为interest=money×(1+rate)year​​money,其中interest为存款到期时的利息(税前),money是存款金额,year是存期,rate是年利率。

输入格式:

输入在一行中顺序给出三个正实数money、year和rate,以空格分隔。

输出格式:

在一行中按“interest = 利息”的格式输出,其中利息保留两位小数。

输入样例:

1000 3 0.025

输出样例:

interest = 76.89

1.插入代码

#include<stdio.h>
#include<math.h>
int main()
{
  float money,year,rate,interest;
  scanf("%f%f%f",&money,&year,&rate);
  interest = money*pow((1 + rate),year)-money;
  printf("interest = %.2f",interest);
  
  
  
  
  
  
  return 0;
}

2、设计思路:

(1)文字描述:

第一步:定义所需变量:为存款到期时的利息(税前)interest,存款金额money, 存期year,年利率rate

第二步:利用scanf函数对存款金额money, 存期year,年利率rate进行赋值;

第三步:列出计算公式 interest = money*pow((1 + rate),year)-money

第四步:利用printf函数打印利息interest,注意,因为要求小数点后保留两位,所以用%.2f的形式;

(2)流程图王思雨(第一次作业)

王思雨(第一次作业)

 

3.本题调试过程碰到问题及解决办法

(1)错误提示:

a、POW函数格式错误,无法运行;

b、字符与运算符没有用空格键间隔开来,如图:

 王思雨(第一次作业)

(2)解决办法:

a、使用正确的pow运算形式:pow((1 + rate),year)

b、规范书写,将其隔开,如图:

王思雨(第一次作业)

二、计算机18秋_循环1

7-6 求1到100的和 (10 分)

本题要求编写程序,计算表达式 1 + 2 + 3 + ... + 100 的值。

输入格式:

本题无输入。

输出格式:

按照以下格式输出:

sum = 累加和
1.插入代码
#include<stdio.h>
int main()
{    
  int i,sum = 0;
  for(i = 1;i <= 100;i++){
     sum = sum + i;
  }
  printf("sum = %d\n",sum);
  return 0;
  
}

2、设计思路:

(1)文字描述:

第一步:定义所需变量:循环数值 i ,累加和 sum ;

第二步:利用for循环,将 i 定为循环变量,对sum进行累加求和一百次

第三步:利用printf函数将sum的数值打印出来;

(2)流程图王思雨(第一次作业)

王思雨(第一次作业)

 

3.本题调试过程碰到问题及解决办法

(1)错误提示:

a、变量书写错误:误将循环变量 i 书写成了 t;

b、便捷运算符使用错误:错误地将 sum = sum + i 改写成为 sum += t,如图:

王思雨(第一次作业)

 

(2)解决办法:

a、将变量更正

b、规范书写,将sum = sum + i正确书写,如图:

王思雨(第一次作业)

三、计算机18秋-循环2

7-7 寻找250 (10 分)

王思雨(第一次作业)

对方不想和你说话,并向你扔了一串数…… 而你必须从这一串数字中找到“250”这个高大上的感人数字。

输入格式:

输入在一行中给出不知道多少个绝对值不超过1000的整数,其中保证至少存在一个“250”。

输出格式:

在一行中输出第一次出现的“250”是对方扔过来的第几个数字(计数从1开始)。题目保证输出的数字在整型范围内。

输入样例:

888 666 123 -233 250 13 250 -222

输出样例:

5
1.插入代码
#include<stdio.h>
int main()
{
  int a,b=0,c;
  while(a!=250)
  {
      scanf("%d",&a);
      b++;
  }
  printf("%d",b);
  return 0;
}

2、设计思路:

(1)文字描述:

第一步:定义所需变量:a,b,c, 并将数值0赋予b ;

第二步:利用while循环,将 a 定为循环变量,在while循环中利用scanf函数对a赋值,在a不等于250的情况下持续循环,每一次循环b + 1

第三步:利用printf函数将b的数值打印出来,b数值即为对方扔过来的第几个数字(计数从1开始);

(2)流程图王思雨(第一次作业)

王思雨(第一次作业)

 

3.本题调试过程碰到问题及解决办法

(1)错误提示:

a、没有对变量b进行赋值,程序无法进行或数值错误 ;

b、部分“;”并未打出,修改过程中误将输入法选成中文,程序无法运行,如图:

王思雨(第一次作业)

王思雨(第一次作业)

(2)解决办法:

a、将数值0赋予b

b、将字符“;”用中文输入法写入,如图:

王思雨(第一次作业)

四、总结和学习进度条

1、总结这几周所学内容、遇到的问题以及解决方法:

(1)所学内容:这几周主要对分支结构、循环结构以及函数进行了初步学习,通过课堂上老师的讲解以及课下对代码的积累,对C语言有了进一步的了解,初步了解了for,while,if等语句的意义及书写方式

包括整体变量与局部变量的区别等内容有了初步认知。

(2)遇到的问题:

a、在pta部分循环作业中对循环的嵌套掌握不熟练;

b、在部分难点运算中有时不能对主循环与内循环的位置进行确认,出现了好几次的代码混乱的情况;

c、敲击代码过程中经常出现忘,漏“;”的情况,正在加强练习;

(3)解决方法:

a、反复练习,多做多练;

b、通过宏观的流程图对代码进行编程;

c、通过观看中国大学MOOC的网课,对函数数进行复习。

2、点评:

a.范朋翔

b.黄兴宇

c.张学友

3、这几周的代码行数和时间、博客字数和时间、涉及的知识点。

(1)表格:

 王思雨(第一次作业)

(2)折线图:

王思雨(第一次作业)