题目

解决代码及点评

完数的解决方案依旧是遍历,然后写出判断完数的函数进行处理


/************************************************************************/
/*
16. 一个数如果恰好等于它的因子之和,这个数就称为“完数”。
例如,6 的因子为1、2、3,而6=1+2+3,因此6 是“完数”。编程序找出1000之内的所有完数,
并按下面格式输出其因子:
6 its factors are 1,2,3 */
/************************************************************************/
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

// 判断一个数是否完数的函数
bool f416(int num)
{
	int arr[100]={0};
int index=0;
int sum=0;
	// 查找它的所有因子,再将因子累加
for (int i=1;i<num;i++)
{
if (num%i==0)
{
sum+=i;
arr[index++]=i;
} }
	// 如果因子累加的和是它自己本身,那么这个数是完数
if (sum==num)
{
printf(" %5d its factors are",num);
for (int i=0;i<index;i++)
{
printf("%5d",arr[i]);
}
return true;
}
else
{
return false;
}
}
void main()
{
for (int i=1;i<=1000;i++) // 遍历1000个数
{
if (f416(i)) // 判断是不是完数
{
printf("\n");
}
} system("pause");
}

代码下载及其运行

代码下载链接:

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

解压密码为c.itcast.cn

下载解压后用VS2013打开工程文件

点击 “本地Windows调试器” 执行

程序运行结果




基于visual Studio2013解决C语言竞赛题之0416完数的更多相关文章

  1. 基于visual Studio2013解决C语言竞赛题之0302字符数出

     题目 解决代码及点评 根据题目要求,只要根据用户输入的字母,判断字母之后,给出相应的输出即可 在以下代码中,f32函数实现了该功能,通过if条件判断语句 #include <stdio.h ...

  2. 基于visual Studio2013解决C语言竞赛题之0413同构数

       题目 解决代码及点评 该题目与水仙花数类似,只是条件不同,循环还是一样的 /***************************************************** ...

  3. 基于visual Studio2013解决C语言竞赛题之0505选数

     题目

  4. 基于visual Studio2013解决C语言竞赛题之1019填数

         题目 解决代码及点评 /* 19. 找3个数字,填在下面式子中,使等式成立. _6325 = 6325_ × ____ (等号左边是五位) 1,若答案有多个,则打印一组即 ...

  5. 基于visual Studio2013解决C语言竞赛题之1031猜数

          题目 解决代码及点评 /* 31. 猜号码∶由随机函数产生一个1至1000之间的整数,让人猜之. 计算机仅回答人猜的数大.小还是相等,当人猜对时, 由计算机打印出人 ...

  6. 基于visual Studio2013解决C语言竞赛题之1060寻找回文数

       题目 解决代码及点评 /* 60. 回文数指左右数字对称的数,如121,2112都是回文数.回文数猜想:取一任意十进制数,将其倒过来,并将这两个数相加, 然后把这个相加的和倒过来再与 ...

  7. 基于visual Studio2013解决C语言竞赛题之0401阶乘

      题目 解决代码及点评 这个是一道经典的教科书题目,基本上每本基础的c/c++语言教科书都会有这个题目 用来演示循环语句 #include <stdio.h> #include ...

  8. 基于visual Studio2013解决C语言竞赛题之0205位数求和

     题目

  9. 基于visual Studio2013解决C语言竞赛题之0201温度转换

    题目 解决代码及点评 #include <stdio.h> #include <stdlib.h> void main() { float f; float c; float ...

随机推荐

  1. 细说SSO单点登录(转)

    什么是SSO? 如果你已知道,请略过本节! SSO核心意义就一句话:一处登录,处处登录:一处注销,处处注销.即:在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统. 很多人容易把SS ...

  2. apache添加fastcgi支持

    A,安装apache服务器和fastcgi模块支持(ubuntu测试) sudo apt-get install apache2 sudo apt-get install libapache2-mod ...

  3. GDB调试之暂停

    暂停机制: 有3种方式可以通知GDB暂停程序的执行. a.断点: 通知GDB在程序中的特定位置暂停执行: b.监视点:通知GDB当特定内存位置(或者涉及一个或多个位置的表达式)的值发生变化时暂停执行: ...

  4. filter angularjs 过滤器

    定义:从一个数组中根据某种规则返回新的数组. 语法: 在html中 {{ filter_expression | filter : expression : comparator}} 在javascr ...

  5. react的初涉入

    1.react并不是一个完整的MVC,MVVM框架 它只负责view层 2.react跟Web Components不冲突 3.react的特点是“轻” 4.react用组件的方式重新思考构建UI的过 ...

  6. 循环训练(for的嵌套、while、do while)以及异常处理

    For的嵌套 练习一: 练习二: 练习三: 练习四: while的使用方法: 示例一: 示例二: 示例三: while的练习题: do while的使用示例: 异常处理示例: try   catch  ...

  7. mbed 初试(LinkNode 板卡)(2016-04-21)

    前言 感谢论坛,感谢 LinkSrite,论坛活动申请了一个 LinkNode,体验了一下 mbed. 翻看完官方 wiki,大概了解了一下 mbed 的开发,然后做了 blink 和 pwm 的测试 ...

  8. eclipse(MyEclipse)插件之aptana安装

    1.在MyEclipse安装目录下创建文件夹, aptana2.在aptana文件夹下创建文件夹eclipse3.将aptana_update_024747.zip中的文件解压缩到aptana\ecl ...

  9. SDWebImage 常用方法

    SDWebImage是iOS中一款处理图片的框架, 使用它提供的方法, 一句话就能让UIImageView自动去加载并显示网络图片.特别是在UITableViewCell中有UIImageView需要 ...

  10. Codeforces Round #200 (Div. 2) C. Rational Resistance

    C. Rational Resistance time limit per test 1 second memory limit per test 256 megabytes input standa ...