萌新 第一 次 求教 ， 帮 下 忙 自己 找 不 出 问题 ！ ！
第一 次 调用 f 函数 ， 没 问题 。 不过 第一 次 申请 空间 的 语句 建议 改成 这样 ： int * a = ( int * ) malloc ( sr * sizeof ( sr ) ) ; 因为 这样 的 代码 可 移植 性 高 一些 ； 第二 次 对 sr 重新 输入 值 ， 如果 这个 值 大于 第一 次 输入 的 sr 值 ， 就 会 导致 a 越界 了 。 通过 你 的 测试 用 例 可知 ， 程序 出错 是 因为 内存 越界 了 。 第二 次 在 使用 a 时 ， 建议 使用 realloc 一下 ： a = ( int * ) realloc ( a , sr * sizeof ( sr ) ) ; if ( ! a ) exit ( 0 ) ; 至于 学 不 学 C + + ， JAVA , 要 看 你 要 解决 什么 问题 ， C 语言 是 偏 底层 的 语言 ， 主要 用于 嵌入 式 方向 ， 比如 驱动 开发 。 而 C++ 和 C 有 很 大 不同 ， 应用 的 领域 也 是 有 差异 的 ， C++ 的 面向 对象 开发 可以 用于 客户端 的 开发 等等 ， JAVA 就 是 更 跟 底层 不 关 了 ， 现在 互联网 的 软件 或 页面 很多 是 用 JAVA 写 的 。 如果 你 还是 一 个 学生 ， 建议 你 根据 自己 的 爱好 ， 将来 想 从事 那个 领域 来 确定 要 深入 学习 那 门 语言 。 另外 ， 一 个 好 的 编码 风格 里 没有 将 函数 定义 成 一 个 字母 的 ， 你 的 编码 风格 还 差 得 远 ， 一 步 一 步 来 吧 ， 先 把 程序 写 的 没 问题 ， 然后 再 考虑 把 代码 的 可读性 提高 上去 ， 因为 代码 除了 自己 要 看 ， 要 看 明白 ， 也 是 需要 给 别人 看 的 ， 让 别人 看到 你 的 函数 名 就 能 知道 这个 函数 是 做 什么 的 最 好 了 。 要 精通 一 门 语言 不 是 一 天 两 天 的 事情 ， 加油 吧
