17.c免费完整版:这份C语言文件事实该怎么看?

17.c免费完整版:这份C语言文件事实该怎么看?
2026-10-12 10:06:14 南风窗 作者 黄河财险精准赋能甘肃墟落周全振兴 2026年钱塘江大潮时间表 罗伯特·吴 新浪网官方账号

17.c 源代码资料可直接复制生涯为 17.c ,用于阅读和运行一个完整的 C 语言控制台示例。程序吸收一组整数 ,统计总和、平均值、最大值、最小值 ,以及正数、负数和零的个数。下方提供完整文件内容、输入输出示例和结构说明 ,适适用作数组与循环训练的参考资料。

17.c 文件内容

程序允许输入 1 至 100 个整数 ,每个数值规模为 -1,000,000 至 1,000,000。输入不切合要求时会提醒缘故原由并竣事运行;有用输入则逐项统计 ,并以两位小数显示平均值。

#include <stdio.h>

#define MAX_ITEMS 100
#define VALUE_LIMIT 1000000

int main(void)
{
    int values[MAX_ITEMS];
    int count;
    int i;
    int total = 0;
    int maximum;
    int minimum;
    int positive_count = 0;
    int negative_count = 0;
    int zero_count = 0;
    double average;

    printf("请输入整数个数(1-%d):", MAX_ITEMS);
    if (scanf("%d", &count) != 1) {
        printf("输入无效:请输入整数个数。\\n");
        return 1;
    }

    if (count < 1 || count > MAX_ITEMS) {
        printf("输入无效:整数个数须在 1 到 %d 之间。\\n", MAX_ITEMS);
        return 1;
    }

    for (i = 0; i < count; i++) {
        printf("请输入第 %d 个整数:", i + 1);
        if (scanf("%d", &values[i]) != 1) {
            printf("输入无效:请按提醒输入整数。\\n");
            return 1;
        }

        if (values[i] < -VALUE_LIMIT ||
            values[i] > VALUE_LIMIT) {
            printf("输入无效:整数须在 -%d 到 %d 之间。\\n",
                   VALUE_LIMIT, VALUE_LIMIT);
            return 1;
        }

        total += values[i];

        if (i == 0) {
            maximum = values[i];
            minimum = values[i];
        } else {
            if (values[i] > maximum) {
                maximum = values[i];
            }
            if (values[i] < minimum) {
                minimum = values[i];
            }
        }

        if (values[i] > 0) {
            positive_count++;
        } else if (values[i] < 0) {
            negative_count++;
        } else {
            zero_count++;
        }
    }

    average = (double)total / count;

    printf("\\n统计效果\\n");
    printf("整数个数:%d\\n", count);
    printf("总和:%d\\n", total);
    printf("平均值:%.2f\\n", average);
    printf("最大值:%d\\n", maximum);
    printf("最小值:%d\\n", minimum);
    printf("正数个数:%d\\n", positive_count);
    printf("负数个数:%d\\n", negative_count);
    printf("零的个数:%d\\n", zero_count);

    return 0;
}

文件结构与统计项目

代码部分详细作用
MAX_ITEMS限制数组最多生涯 100 个整数。
VALUE_LIMIT限制每个输入值的规模为 -1,000,000 至 1,000,000。
输入循环逐个读取数据 ,并在读取失败或凌驾规模时竣事程序。
较量与分类更新最大值、最小值 ,并划分累计正数、负数和零。
效果输出显示总和、平均值和各项计数 ,平均值保存两位小数。

数组 values 生涯输入的整数 ,变量 total 累加所有数值。最大值和最小值在读入第一项时初始化 ,之后每读入一个数 ,就与目今纪录较量。这样既能准确处置惩罚只有一个数的情形 ,也不需要预先推测输入数据的正负规模。

运行效果示例

例如输入 5 个整数:12、-4、0、8、4 ,程序会给出以下统计效果:

整数个数:5
总和:20
平均值:4.00
最大值:12
最小值:-4
正数个数:3
负数个数:1
零的个数:1

需要复用这份资料时 ,将代码区完整复制到纯文本文件 ,并以 17.c 为文件名生涯。修改输入数据即可视察统计效果转变;把数组遍历、条件分支和累加语句脱离阅读 ,也利便逐段明确程序的执行顺序。

阅读提醒

  • 先看输入:整数个数决议循环次数 ,程序只处置惩罚现实输入的项目。
  • 再看界线检查:数目限制对应数组容量 ,数值限制也包管总和处于清静规模内。
  • 比照分类计数:大于零进入正数分支 ,小于零进入负数分支 ,即是零则单独计数。
  • 注重平均值盘算:将总和转换为 double 后再除以数目 ,可保存小数效果。

这份 17.c 资料以单个源文件泛起 ,代码包括输入校验、数组处置惩罚、条件判断和名堂化输出 ,可作为整数统计训练的完整示例。

特殊声明:以上文章内容仅代表作者自己看法 ,不代表新浪网看法或态度。若有关于作品内容、版权或其它问题请于作品揭晓后的30日内与新浪网联系。
来自于:新浪网官方
网友谈论
联合国视察团:美国袭击伊朗米纳卜小学和一体育设施组成战争罪
公安部宣布2025年公安禁毒部分攻击毒品犯法十大典范案例
分享到微博
宣布
最热谈论
最新谈论
暂无谈论

举报邮箱:[email protected]

Copyright ? 1996-2026 SINA Corporation

All Rights Reserved 新浪公司 版权所有