请用C语言实现 输出和为一个给定整数的所有组合

启动2012

/*
请用C语言实现 输出和为一个给定整数的所有组合
*/ #include <stdio.h> //包含头文件stdio.h 为程序提供基本输入输出功能
#include <stdlib.h> //包含标准库头文件stdlib.h 以便调用函数system("pause") 使程序暂停 int main(void)
{
int num = 0; //获取输入的数字
int i = 0; //外层循环计数
int j = 0; //内层循环计数 printf("Please input a number:");
scanf("%d", &num); for(i = 1; i <= num / 2; i++) //i存放1 到 num/2 之间的整数(i < num/2)
{
for (j = num /2; j < num; j++) //j 存放 num/2 到 num 之间的整数 (j < num)
{
if (i + j == num) // num/2 前后两半部分的数相加, 如果和等于num则输出 i, j
{
printf("%d + %d = %d \n", i, j, num);
break; //退出内层循环,避免不必要的循环次数,提高效率
}
}
}
system("pause"); //程序暂停。 system()中的参数可以是虚拟Dos窗口下的任意指令,有兴趣的可以换成 "dir" , "cls", "date"等试试
return 0;
}

源代码下载地址如下:

http://download.csdn.net/detail/yincheng01/6368839

基于Visual C++2013拆解世界五百强面试题--题2-输出和为一个给定整数的所有组合的更多相关文章

  1. 基于Visual C++2013拆解世界五百强面试题--题3-打印螺旋数组

    请用C语言实现 输入N,打印N*N矩阵 比如 N = 3, 打印: 1 2 3 8 9 4 7 6 5 N = 4, 打印 1   2    3   4 12  13   14  5 11  16   ...

  2. 基于Visual C++2013拆解世界五百强面试题--题1-定义各种类型指针

    用变量a给出下面的定义    a)一个整型数    b)一个指向整型数的指针    c)一个指向指针的指针,它指向的指针是指向一个整型数    d)一个有10个整型数的数组    e)一个有10个指针 ...

  3. 基于Visual C++2013拆解世界五百强面试题--题18-程序结果分析2-终结篇

    第二部分程序结果分析,分析流程还是写入代码注释中 分析下面程序的输出: #include <stdio.h> int main() { char *a = "hello" ...

  4. 基于Visual C++2013拆解世界五百强面试题--题17-程序结果分析1

    分析程序结果,分析过程我们就写在程序注释里面. 写出下列代码的输出内容 #include <stdio.h> int inc(int a) { return (++a); } int mu ...

  5. 基于Visual C++2013拆解世界五百强面试题--题16-进制分析

    清写出下列代码的输出内容 #include <stdio.h> int main() { int a = -1, b = -12, c = -123, d = -1234; printf( ...

  6. 基于Visual C++2013拆解世界五百强面试题--题15-递归相加

    有一分数序列: 1/2 , 1/4 , 1/6 , 1/8 ......,用递归的方法,求此数列20项之和. 可以看出规律:每一项位1/n*2 这个很容易些递归,但是要注意一点,使用浮点数相除保存: ...

  7. 基于Visual C++2013拆解世界五百强面试题--题14-循环删除

    有一个数组a[1000]存放0-1000,要求每隔二个数删除一个数,到末尾时循环到开头继续进行,求最后一个被删掉数的原始下标. 看到题目可以用循环链表保存这些数,然后循环删除,大大减少了一些复杂的边界 ...

  8. 基于Visual C++2013拆解世界五百强面试题--题13-找最大公共子字符串

    编程实现:找出两个字符串中最大公共子字符串,如"abccade"和"dgcadde"的最大子字符串为"cad". 如果不考虑效率的话直接比较 ...

  9. 基于Visual C++2013拆解世界五百强面试题--题12-进制转换

    编程实现,把十进制数(long型)分别以二进制和十六进制形式输出,不能使用printf系列库函数. 转换成二进制,直接循环移位依次取每一位,判断1或0然后将相应字符放入字符串缓冲区中. 对于十六进制, ...

随机推荐

  1. Excel文件转换为html静态网页

    Excel文件转换为html静态网页:右键另存为:

  2. iOS开发篇-AFNetworking 上传和下载

    最近用到了关于AFNetworking的上传和下载问题,顺便写到博客中,以供大家参考和研究. //下载NSURLSessionConfiguration *configuration = [NSURL ...

  3. C#根据文件流判断文件类型

    判断文件真实的类型,不是通过扩展名来判断: /// <summary> /// 判断文件格式 /// http://www.cnblogs.com/babycool /// </su ...

  4. Java多线程yield

    前言: 前几天复习了一下多线程,发现有许多网上讲的都很抽象,所以,自己把网上的一些案例总结了一下! 一. Thread.yield( )方法: 使当前线程从执行状态(运行状态)变为可执行态(就绪状态) ...

  5. 去掉iphone 的圆角样式

    每次面对iphone这种丑丑的样式,我简直不能再愉快的写代码~~而且每次记不住那烦人的属性~~~必须记录下来~~ -webkit-appearance:none 为了下次不用再百度,终于背下来~~~

  6. The c programming language第一章节所有程序的实现

    //打印第一个程序hello, word #include<stdio.h> int main() { printf("hello, world\n"); ; } // ...

  7. .net mvc笔记4_依赖注入

    一.Building Loosely Coupled Components MVC模式最重要的特点就是关注点分离.我们希望应用中的组件能尽可能的独立,相互之间即使有依赖也要在我们的控制之下. 在理想情 ...

  8. Mysql 权限修改何时生效

    首先权限是记录在表中的,所以如果我们要修改权限只要修改表中的数据就可以了! 方法 1 grant ,revoke,set password,rename user .......等等 2 insert ...

  9. cocos2dx mac下搭建android开发环境

    1)下载eclipse 地址:http://www.eclipse.org/downloads/ 2)安装adt 打开eclipse,菜单:help->install new software ...

  10. C++读写文件流的相关介绍

    掌握文本文件读写的方法了解二进制文件的读写方法 C++文件流:fstream // 文件流ifstream  // 输入文件流ofstream  // 输出文件流 //创建一个文本文件并写入信息//同 ...