第一次作业
一.计算机18秋_分支结构:7-1计算存款利息
1.实验代码
1 #include<stdio.h> 2 #include<math.h> 3 int main() 4 { 5 float year; 6 float interest,rate,i,money,a; 7 if(scanf("%f %f %f",&money,&year,&rate)) 8 { 9 a=1+rate; 10 i=pow(a,year); 11 interest=money*i-money; 12 printf("interest = %.2f",interest); 13 14 } 15 return 0; 16 17 }
2.设计思路
(1) 第一步:进行函数声明与变量定义。定义题目中涉及的的相关变量---年份,利息,利率;同时定义两个单精度浮点值i和a。
第二步:输入三个float型变量
第三步:利用题目中所给公式interest=money×(1+rate)year−money和换元法计算
第四步:输出利息
(2) 流程图
3.本题调试过程碰到问题及解决方法
(1)所遇到的问题
① 用;来表示语句的结束。
② 求a的b次方用pow函数,使用需要在头文件加入。
③ 最后的利润interest为实数,存款年份不一定是整数,可以为实数,应该定义为doube或float。
(2)解决方案
反复敲打自己认为对的代码,从错误中寻找遗漏的知识点,寻找类似题型进行训练并看书得到弥补。
二:计算机18秋_循环1:7-1 统计学生平均成绩与及格人数
1.实验代码
1 #include<stdio.h> 2 int main() 3 { 4 int N,i,a,count=0,sum=0; 5 double average; 6 scanf("%d",&N); 7 if(N==0) 8 { 9 printf("average = 0.0\n"); 10 printf("count = 0"); 11 } 12 else 13 { 14 for(i=0;i<N;i++) 15 { 16 scanf("%d",&a); 17 sum = sum + a; 18 if(a>=60) 19 count++; 20 } 21 average = 1.0*sum/N; 22 printf("average = %.1f\n",average); 23 printf("count = %d\n",count); 24 } 25 return 0; 26 }
2.设计思路
(1) 第一步:进行函数声明与变量定义。定义i为循环变量,a输入的学生成绩,count计数初始值为0,sum成绩和值,平均值average。添加一个循环作用为循环输入学生成绩
第二步:输入N
第三步:if-else语句判断N是否等于0。如果N=0输出,则count=0,average=0。如果N不等于0则令i=0,输入a,则开始计算计算sum=sum+a。
第四步:添加for循环,若输入人数不为0,进入该循环。计算成绩和值(sum=sum+a)如果成绩大于60即为及格成绩,count+1。
第五步:再次使用if语句判断a是否大于等于60,若符合,则count+1;判断i是否小于N,是则进行循环直至结束,循环结束后计算平均分。
第六步:输出平均值和及格人数。
(2) 流程图
3.本题调试过程碰到问题及解决办法
(1)所遇到的问题
① 用;来表示语句的结束。
② 求a的b次方用pow函数,使用需要在头文件加入。
③ 前后变量需一致
(2)解决方法
反复核对代码的大小写,中英文,空格,分号及变量。
三.计算机18秋—循环2:7-3 求整数的位数及各位数字之和
1.实验代码
1 #include <stdio.h> 2 3 int main(void) 4 { 5 int number, temp, i = 0, sum = 0; 6 7 scanf("%d", &number); 8 temp = number; 9 while (temp) { 10 sum += temp % 10; 11 temp /= 10; 12 i++; 13 } 14 printf("%d %d\n", i, sum); 15 16 return 0; 17 }
2.设计思路
(1)第一步:进行函数声明与变量定义,定义整数型number, i = 0, sum = 0
第二步:输入number
第三步:判断number是否为真,利用循环来进行位数的计算,求它的位数及其各位数字之和
第四步:输出i,sum
(2)流程图
3.本题调试过程碰到问题及解决办法
在不断的扎实中成长
四.总结和学习进度条
1.总结
(1)for循环:适合于循环次数是已知的。最好选择for循环。
while:适合于循环次数是未知的。最好选择while循环。
do while:适合于循环至少执行一次的。最好选择do while循环.【注意:至少执行一次。因为先执行后判断表达式2的。】
(2)else不可以单独使用,它与其前最近一个尚未配对的if配对。
(3)break语句只能用于switch语句和循环。
刚开始学习c语言,有诸多不适应,有时候不能很好的理解老师所讲,不能很好的消化知识点。但经过课下的复习和题型的掌握,对于个别题型已经能做到轻车熟路,反复看书中的知识点和例子,复习老师在群里下发的ppt,能更好的理解知识点,收到事半功倍的效果。
邀请:李靖,袁于纯,杨仕奇
3.表格、折线图
周数 | 编写代码行数 | 编写代码时间/时 | 写博客字数 | 写博客时长 | 知识点 |
第九周 | 1000 | 6 | 0 | 0 | 分支结构 |
第十周 | 1200 | 8 | 0 | 0 | 循环 |
第十一周 | 2000 | 14 | 0 | 0 | 循环 |
第十二周 | 2200 | 14 | 2200 | 6 | 函数 |