要求:已知一个集合A,对A中任意两个不同的元素求和,若求得的和仍在A内,则称其为好数对。例如,集合A={1 2 3 4},1+2=3,1+3=4,则1,2和1,3 是两个好数对。编写程序求给定集合中好数对的个数。

注:集合中最多有1000个元素,元素最大不超过10000

---------------------------------------------------------------------------------------------------------------------------------

代码:

#include <stdio.h>
int main()
{
    int n;
    scanf("%d", &n);
    int arr[1000];
    int i, j, k;
    int count = 0;
    for (i = 0; i < n; i++)
    {
        scanf("%d", &arr[i]);
    }

    for (i = 0; i < n; i++)
    {
        for (j = i + 1; j < n; j++)
        {
            int sum;
            sum = arr[i] + arr[j];
            for (k = 0; k < n; k++)
//查找和是否还在原数组中
            {
                if (sum == arr[k])
                {
                    count++;
                }
            }
        }
    }
    printf("%d", count);
    return 0;
}

C语言数组练习-好数对相关推荐

  1. 【C语言】为什么指明数组的列数?

    首先,我们拿二维数组为例.二维数组称为矩阵.二维数组在概念上是二维的,但实际的硬件存储器却是连续编址的,也就是说存储器单元是按一维线性排列的.如果将二维数组作为参数传递给函数,那么在函数的参数声明中必 ...

  2. C语言数组测试函数,(完整word版)C语言数组与函数阶段测试题答案---(20200807070313)(8页)-原创力文档...

    } } C语言数组与函数阶段测试题答案 一.选择题( 18*2=36 分) 1. 在定义" int a[5][6]; "后,第 11个元素是 [ C ] A.a[2][5] B . ...

  3. java数组是行优先还是列优先的语言_详解C语言数组中是以列优先吗

    如果我们按照C语言的方式存储它,也就是行优先存储的话,那么在内存中,它的形状是这样的: 这种存储方式又被称作C contiguous array. C语言数组结构列优先顺序存储的实现 (GCC编译). ...

  4. numpy二维数组改变某些数_【每天15分钟,5天学会NumPy】第1天:基本概念

    1.NumPy 的家族 NumPy 是 SciPy 家族的一员,而且是最重要的成员.SciPy 家族(见下图)是一个专门应用于数学.科学和工程领域的开源的Python生态圈.NumPy 最初是 Sci ...

  5. c语言数组数据用指针查找,c语言数组与指针_指针篇_2011.ppt

    c语言数组与指针_指针篇_2011 指 针 6.2 指针的概念6.3 指针与数组6.4 字符串的指针6.5 指针数组和指向指针的指针;6.2.1 地址与指针的概念 ;指针的概念;内存地址;2.数组与地 ...

  6. c语言第七章函数调用题库,c语言题库7-函数.doc

    c语言题库7-函数 主要考核内容:函数 序号题目答案选择题1有以下程序 int f(int a) { return a%2; } main() { int s[8]={1,3,5,2,4,6},i,d ...

  7. strcmp可以比较数组么_C语言数组越界了,后果很严重,如何避免?

    素材来源:嵌入式ARM所谓的数组越界,简单地讲就是指数组下标变量的取值超过了初始定义时的大小,导致对数组元素的访问出现在数组的范围之外,这类错误也是 C 语言程序中最常见的错误之一.在 C 语言中,数 ...

  8. js二维数组arr中表示读取第i行第j列的是:_c++ c语言 数组与字符串

    c语法7 - 数组与字符串 概述 定义:把具有相同类型的若干变量按有序形式组织起来称为数组. C语言数组属于构造数据类型.一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型.因 ...

  9. C语言 数组指针 - C语言零基础入门教程

    目录 一.简介 1.数组 2.指针 3.指针和数组区别 二.数组指针 三.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门 一.简介 1.数组 ...

最新文章

  1. 为什么找不到Flash Builder 4.6 for Eclipse插件
  2. 深入理解Emoji(三) —— Emoji详解
  3. postman test 脚本
  4. Oracle的分区操持
  5. centOS7 安装redis-3.2.6
  6. VS2010 VC Project的default Include设置
  7. EL调用java方法
  8. linux root 设置中文,ubuntu 8.04 root用户下的中文环境配置-Linux频道-中国IT实验室
  9. 永远的动漫,梦想在,就有远方
  10. 计算机导论中如何求模,计算机导论作业答案
  11. 暗黑复制服务器物品,暗黑2战网环境下复制dupe物品装备
  12. 人工智能和溯因推理 AI的历史一直被演绎和归纳所主导
  13. PCB碎碎念——贴片封装与标识
  14. SQLException: #22001你知道这个错误码吗
  15. matlab hanning和hann,哪位大侠能告知——为什么在MATLAB2012中不能调研(汉宁)窗函...
  16. docker rabbitmq error: touch cannot touch ‘/etc/rabbitmq/rabbitmq.conf‘ permission denied
  17. 使用无线WIFI模块NodeMCU Lua V3物联网开发板8266-01/01S 在Arduino搭建环境到点亮一个LED灯
  18. Android ListView列表 刷新和加载更多
  19. 苹果隔空传递 Android,极客修:苹果:我会隔空投送,你呢?安卓:切
  20. 宝塔面板部署nuxt项目线程守护启动以及Nginx反向代理

热门文章

  1. 速读原著-Java核心技术(安装Java开发工具包)
  2. Kotlin 异常处理
  3. getRealPath注意事项
  4. 让文物“活”起来,火山引擎视频云三维重建技术揭秘
  5. BIM产业在建筑产业的未来趋势
  6. 投票理论简介以及机器学习中的投票规则
  7. C#编写一个简易计算器
  8. BI 报表正逐渐成为技术债,真的吗?
  9. 一文让你明白CAD开发基本结构框架(CAD二次开发入门)
  10. 腾讯云轻量应用服务器网站搭建——入门教程1(宝塔面板)