找回密码
 立即注册
首页 业界区 安全 实验报告1(switch语句,二维数组)

实验报告1(switch语句,二维数组)

这帜 前天 13:01
一、实验目的:
熟练使用switch语句
熟练使用二维数组
二、实验仪器或设备:
操作系统:Windows11
编程环境:Dev-cpp 5.11
三、算法总体设计
(1)项目一:运输公司对用户计算运费
·用到的算法的目的:计算并输出基于给定每千克基本运费、货物重量、运输距离以及运输距离对应的折扣后的总运费。
·从用户输入中读取每千克基本运费(p)、货物重量(w)和运输距离(s)。
·如果运输距离(s)大于3000,则设置运输段数(c)为12。否则,根据运输距离(s)除以250的结果,向上取整(实际上是整数除法后的结果,因为c是整数类型)来计算运输段数(c)。
·使用switch语句根据运输段数(c)来确定折扣率(d)。折扣率是一个百分比值,表示从总运费中减去的比例。
·总运费计算公式为:f = p * w * s * (1 - d / 100)。利用此公式计算出总运费。
(2)项目二 求出每个学生的平均成绩和每门课程的平均成绩
·用到算法的目的:用户输入每个学生的每门课程成绩。计算每个学生的平均成绩和每门课程的平均成绩。输出每个学生的平均成绩和每门课程的平均成绩。
·使用了二维数组来存储成绩,便于按学生和课程进行索引。
四、实验步骤(包括主要步骤、命令分析等)
项目一 :运输公司对用户计算运费
  1. 1 #include<stdio.h>
  2. 2 int main(){
  3. 3 int c,s;
  4. 4 float p,w,d,f;
  5. 5 printf("输入每千克基本运费,货物重,距离:");
  6. 6 scanf("%f,%f,%d",&p,&w,&s);//用户输入信息(严格按照%f,%f,%d格式)
  7. 7 if(s>3000){
  8. 8 c=12;
  9. 9 }
  10. 10 else
  11. 11 {
  12. 12 c=s/250;
  13. 13 }
  14. 14 switch(c){
  15. 15 case 0:d=0;break;
  16. 16 case 1:d=2;break;
  17. 17 case 2:
  18. 18 case 3:d=5;break;
  19. 19 case 4:
  20. 20 case 5:
  21. 21 case 6:
  22. 22 case 7:d=8;break;
  23. 23 case 8:
  24. 24 case 9:
  25. 25 case 10:
  26. 26 case 11:d=10;break;
  27. 27 case 12:d=15;break;
  28. 28 }
  29. 29 f=p*w*s*(1-d/100);//利用题目中所给公式
  30. 30 printf("总运费=%.2f\n",f);
  31. 31 }
复制代码
项目二: 求出每个学生的平均成绩和每门课程的平均成绩
[code] 1 #include 2 #define Std 2 3 #define Course 3 4 int main() { 5     int i,j; 6     float score[Std +1][Course+1]; 7      float student_avg[Std];  8      float course_total[Course] = {0}; 9     for(i=0; i

相关推荐

您需要登录后才可以回帖 登录 | 立即注册