17. C资料文档:文件格式、下载方式与使用说明

A−A+微博☆•••

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 资料以单个源文件呈现,代码包含输入校验、数组处理、条件判断和格式化输出,可作为整数统计练习的完整示例。

【更多新闻,请关注“海报新闻”客户端】【山东手机报:及时获取本地新闻资讯】

初审编辑:张经义

责任编辑:刘欣

相关新闻

推荐阅读

  • 宁德时代发布全球首款实证型钠电储能场站解决方案

      进一步改进工作作风,严格要求自己,求真务实,真抓实干,坚持以人民为中心的创作导向,强化“国家队”意识,努力以优秀作品向着艺术“高峰”不断攀登。

    2026-10-24 02:41:52 凤凰网
  • 张靓颖带头回归三国志战略版

      张先生说,因为网球人群的增多,网球运动关联经济也更加活跃。球衣、球袜、球包以及打球的各种装备和周边产品,包括网球训练课都在走俏。比赛数量的增加,更是提升了各地运动场馆的利用率。

    2026-11-04 08:23:52 杭州网
  • 9月份证券类App月活创年内新高

      张先生认为,网球明星的出现与整个网球运动以及网球经济的发展是相互促进的,并形成正向反馈。他说,明星越多,示范效应就越强,就会更加刺激网球运动的发展,网球经济热度也会越高。而打网球的人多了,就会涌现出更多的网球明星。

    2026-11-05 00:42:52 房天下