第一次作业
一.计算机18秋-分支结构
7-9高速公路超速罚款
1.实验代码
#include<stdio.h> int main() { int s,l,m; double i; scanf("%d %d",&s,&l); m=s-l; i=m*100.0/l; if(i<10 || s<l) { printf("OK"); } else if(i<50) { printf("Exceed %.0f%%. Ticket 200",i); } else { printf("Exceed %.0f%%. License Revoked",i); } return 0; }
2.设计思路
(1)文字描述
第一步:定义变量车速(s), 限速(l), 车速与限速的差(m), 超速百分比(i)
第二步:读取输入的车速和限速的数值,计算出超速百分比i
第三步:判断百分比属于的区间
(2)流程图
3,(1)错误提示
(2)遇到的问题:%使用不正确。
解决办法:去掉%之前多余的空格
二,循环1 7-1统计学生的平均成绩与及格人数
1.实验代码
#include<stdio.h> int main() { double total; int i,j; int student[1000]; float average,sum=0; int count=0; scanf("%lf",&total); if(total!=0) { for (i=1;i<=total;i++) { scanf("%d",&student[i]); sum=sum+student[i]; if(student[i]>=60) { count=count+1; } } average=sum/total; printf("average = %.1lf\n",average); printf("count = %d",count); } else { printf("average = 0.0\n"); printf("count = 0"); } return 0;
2.设计思路
(1)文字描述
第一步:输入数据,依次储存
第二步:计算成绩平均值
第三步:将同学成绩和及格线进行比较并将及格人数累加
第四步:输出成绩均值和及格人数
(2)流程图
3,(1) 错误提示
(2) 遇到的问题:把l 打成1,把average 打错,导致答案错误 ,没有在英文环境下编译,导致编译错误。
解决办法:把1改成l
三,循环2 7-3求整数的位数及个位数字之和
1,实验代码
#include <stdio.h> int main(void) { 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,设计思路
(1)文字描述
第一步:定义变量整数number,余数temp,sum和值,和长度i
第二步:计算余数,获得末位数
第三步:将末位数累加至sum
第四步:长度加1,调整n
第五步:输出和值sum,长度i
(2)流程图
3,(1)错误提示
(2)遇到的问题:变量混淆
解决方法:运用英文单词进行区分
四,总结和学习进度条
1,总结这几周所学内容,遇到的问题以及解决方法
(1)所学内容:
do -while 和while 循环语句的区别
switch 语句中break 的作用
if.条件语句
(2)遇到的问题:
不能熟练的掌握循环结构
分不清内外层循环
对double 和float 时常分不清
时常忘记空格
(3)解决方法:
通过做pta 归纳,总结。
通过中国大学mooc 进行学习
2,点评:
3,这几周的代码行数和时间,博客字数和时间,涉及的知识点。
(1)表格:
(2)折线图: