这个作业属于那个课程 |
c语言程序设计|| |
这个作业要求在哪里 |
C语言I作业07 |
我在这个课程的目标是 |
熟练掌握分支结构和switch语句的使用 |
这个作业在那个具体方面帮助我实现目标 |
认识并学会使用switch语句 |
参考文献 |
C语言I作业07 |
PTA实验作业
题目一
7-11 程序设计联考
数据处理
- 数据表达:在这道题目上运用了变量A和num,为了便于区分考生,考生账号的第一位是学校代号。1代表Hunan Agricultural University,2代表Jishou University,3代表Huaihua University,4代表Aerospace University,5代表Ocean University。
- 数据处理:这里用到了全新的分支结构用到的语句——switch语句,运用了表达式num=A/100000
实验代码截图
伪代码
include<stdio.h>
int main()
{
int 定义1-6位的正整数A,学生账号num;
scanf("%d",输入1-6位的正整数);
num = A / 100000;
switch (num)
{
case 1(如果学生账号开头是1):printf("Hunan Agricultural University"); break;
case 2(如果学生账号开头是2) :printf("Jishou University"); break;
case 3(如果学生账号开头是3) :printf("Huaihua University"); break;
case 4(如果学生账号开头是4) :printf("Aerospace University"); break;
case 5(如果学生账号开头是5) :printf("Ocean University"); break;
default(如果是其他条件):printf("Other University"); break;
}
return 0;
}
造测试数据
输入数据 |
输出数据 |
说明 |
22456 |
Other University |
该考生在其他学校 |
112546 |
Hunan Agricultural University |
该考生在 Hunan Agricultural University |
251426 |
Jishou University |
该考生在 Jishou University |
PTA提交列表及说明
- 部分正确:default:printf("Other University");break;中的Other University没有空格
题目二
7-12 统计学生成绩
数据处理
- 数据表达:用到了变量N,i,grade,sum,以及A,B,C,D,E这些,输入在第一行中给出一个正整数N(≤1000),即学生人数;第二行中给出N个学生的百分制成绩,其间以空格分隔。在一行中输出A、B、C、D、E对应的五分制成绩的人数分布,数字间以空格分隔,行末不得有多余空格。
- 数据处理:和上面那道题一样用到了switch语句,还有if语句和for语句,用到了表达式sum=grade/10;
实验代码截图
伪代码
include<stdio.h>
int main()
{
int 定义学生人数N,i,学生成绩grade,sum,五分制A,B,C,D,E,开始都为0
scanf("%d",输出学生人数);
如果学生人数大于0
for (i = 1; i <= N; i++)
{
scanf("%d", 输出学生成绩);
sum = grade / 10;
switch (sum)
{
case 10(如果学生成绩是10):A++; break;
case 9(如果学生成绩是9):A++; break;
case 8(如果学生成绩是8):B++; break;
case 7(如果学生成绩是7):C++; break;
case 6(如果学生成绩是6):D++; break;
default(如果学生成绩都不是以上):E++; break;
}
}
printf("%d %d %d %d %d", A, B, C, D, E);
return 0;
}
造测试数据
输入数据 |
输出数据 |
说明 |
7 78 88 97 74 66 77 64 |
1 1 3 2 0 |
A一人,B一人,C三人,D两人,E零人 |
6 74 85 96 40 52 44 |
1 1 1 0 3 |
A一人,B一人,C一人,D零人,E三人 |
8 74 55 63 99 74 85 55 81 |
1 2 2 1 2 |
A一人,B两人,C两人,D一人,E两人 |
PTA提交列表及说明
- 答案错误:scanf("%d",&N);中写成了grade,出现了两次输出成绩,导致答案错误
代码互评
同学代码
我的代码
- 我和这位同学的代码基本上有些相同,除了在设置变量上有所不同
- 不过在结构上我的看法是我的结构相比于他要工整一些,不过都各有特色,属于自己的风格就是最好的
同学代码
我的代码
- 这位同学和我在使用语句上都用到了新学到的switch语句和以前的for语句
- 不过这个同学在使用switch语句上比较繁琐,也就是过多的使用case,可以稍微简便一点点
学习进度
学习进度条
目前比较迷惑的问题 |
学到的知识点简介 |
代码行 |
这周所花的时间 |
周/日期 |
switch语句在分支结构上的使用 |
switch语句的简单使用 |
880 |
6.5h |
11.6 |
累计代码和博客字数
学习内容感悟和体会
学习感悟
- 作业现在能够及时并且能迅速完成
- 学到了全新的分支结构有关的语句——switch语句
学习体会
- c语言学习过去了两个多月,感觉有了许许多多的认识和感受
- 作业虽说越来越难,但是效率提升了很多,能够在指定时间完成甚至可以提前完成
- 以前出现的低级错误到了现在越来越少
- 以后的难度会越来越高,所以效率需要更上一层楼,争取有多余的时间去预习c语言有关的学习内容