作者p221071889 (LiLo)
看板C_and_CPP
标题[问题] 请帮我修改一下这个麻烦的sqrtˊˋ
时间Wed Oct 21 15:51:12 2009
程式码在这里
↓
http://nopaste.info/4fd89abd59.html
上面是一个很简单的gradebook
下面的函数是在算标准差
可是我的语法不知道哪里错了....
请大家帮我看看给个建议好嘛
谢谢阿ˇ
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.138.241.90
1F:推 ledia:问题很多, 你学到哪, 看起来阵列和函式都还不会用 10/21 15:56
2F:→ ledia:如果要改好, 建议先把书上基础的部份完全弄懂 10/21 15:57
3F:推 VictorTom:好诡异, 我IE6和FF3.5都开不了那个连结XD 10/21 15:58
5F:→ ledia:XD 10/21 15:59
※ 编辑: p221071889 来自: 140.138.241.90 (10/21 16:00)
6F:→ p221071889:可以麻烦你跟我说错了哪里吗.. 10/21 16:03
7F:→ p221071889:虽然我知道很难改ˊˋ 10/21 16:04
8F:推 VictorTom:l大内建自动校正URL的tools....XD 10/21 16:16
9F:推 ledia:1. array 从第 0 开始算, 如果宣告 a 格, 只能用 0 ~ a-1 10/21 16:37
10F:→ ledia:所以 arr 宣告是 int arr[10][3]; 的话, 就只能用 [0][0] 到 10/21 16:38
11F:→ ledia:[9][2], 用超过程式就可能会挂点, 回圈中 cin >> arr[j][3]; 10/21 16:38
12F:→ ledia:语义上看起来有两个错误: A. 後面的输入会盖掉前面的, B. 10/21 16:39
13F:→ ledia:arr[j][3] 的 j 最多会到 10, 超过 0~9 的许可范围, 3 也超 10/21 16:40
14F:→ ledia:过 0~2 的许可范围, 所以是会出错的 10/21 16:40
15F:→ ledia:2. 我不知道为什麽标准差要用三种函式, 而且取名为 sqrt 也 10/21 16:40
16F:→ ledia:很奇怪, 一般来说 sqrt 是开根号, 标准差会被称为 sd 10/21 16:43
17F:→ ledia:3. 标准差应该要把 array 丢进去算, 然後输入一个答案 10/21 16:43
18F:→ ledia:你的函式只吃一个 double, 本身就不太合理 10/21 16:44
19F:→ ledia:在 sqrt_1 的回圈里自己宣告 arr 也并不会用到原本那一份 10/21 16:45
20F:→ ledia:所以你需要把书上 "函数怎麽传递资料" 的那个章节看懂 10/21 16:45
21F:→ ledia:把正确的资料传进去, 照公式算好再传出来 10/21 16:46
22F:→ ledia:以上... 先改出个比较接近可以执行的程式, 再来讨论会比较 10/21 16:47
23F:→ ledia:容易进步 10/21 16:47
24F:→ ledia:上面的 3. 那一行... "输入" 应为 "输出" 10/21 16:48