题目

解决代码及点评


 /*
功能: 已知N是正整数, 它可拆写成三个正整数N1、N2和N3之和的形式N=N1+N2+N3。
请编程序打印出满足上式的全部组合,并当N1、N2和N3中至少有两个是素数时打印“YES”否则打印“NO”。
如N=5时输出:
5 = 1 + 1 + 3 NO
5 = 1 + 2 + 2 YES
5 = 1 + 3 + 1 NO
5 = 2 + 1 + 2 YES
5 = 2 + 2 + 1 YES
5 = 3 + 1 + 1 NO 时间:2:12 2013/10/25
*/ #include<stdio.h>
#include<stdlib.h>
#include <math.h> int judePri(int); //判断一个数是否为素数 void main()
{
int N;
scanf_s("%d",&N); for(int i=1;i<N;i++)
{
for(int j=1;j<=N;j++)
{
int k=N-i-j;
if(i+j+k==N && k>0) //找到满足条件的i,j,k
{
int sum=judePri(i)+judePri(j)+judePri(k); //sum保存素数的个数
printf("%d + %d + %d = %d\t",i,j,k,N); //打印结果
if(sum>=2) //判断素数个数是否大于等于2
{
printf("YES\n");
}
else
{
printf("NO\n");
}
}
}
}
system("pause");
} int judePri(int n)
{
if(n==1)
{
return 0;
}
else if (n==2||n==3)
{
return 1;
}
else
{
for(int i=2;i<=(int)sqrt((double)n);i++)
{
if(n%i==0)
return 0;
}
}
return 1;
}

代码编译以及运行

由于资源上传太多,资源频道经常被锁定无法上传资源,同学们可以打开VS2013自己创建工程,步骤如下:

1)新建工程

2)选择工程

3)创建完工程如下图:

4)增加文件,右键点击项目

5)在弹出菜单里做以下选择

6)添加文件

7)拷贝代码与运行

程序运行结果

代码下载

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

解压密码:c.itcast.cn






基于visual Studio2013解决C语言竞赛题之1057打印加数的更多相关文章

  1. 基于visual Studio2013解决C语言竞赛题之0603打印素数

     题目

  2. 基于visual Studio2013解决C语言竞赛题之0808打印链表

     题目

  3. 基于visual Studio2013解决C语言竞赛题之1048打印矩阵

      题目 解决代码及点评 /* 48. 找规律填写N×N方阵.如N=8时, 其方阵为: */ #include <stdio.h> #include <stdlib.h& ...

  4. 基于visual Studio2013解决C语言竞赛题之1045打印成绩

       题目 解决代码及点评 /* 功能:用记录来描述一个学生的成绩情况,内容包括:姓名.学号.数学成绩和PASCAL成绩. 要求对一个小组的10个学生的成绩进行统计处理: 1)计算学生的总 ...

  5. 基于visual Studio2013解决C语言竞赛题之1058打印数字

       题目 解决代码及点评 /************************************************************************/ /* 58 ...

  6. 基于visual Studio2013解决C语言竞赛题之1078打印日历

        题目 解决代码及点评 /************************************************************************/ /* ...

  7. 基于visual Studio2013解决C语言竞赛题之1071打印工资

        题目 解决代码及点评 /************************************************************************/ /* ...

  8. 基于visual Studio2013解决C语言竞赛题之0523魔方阵

     题目

  9. 基于visual Studio2013解决C语言竞赛题之0518回文数

     题目

随机推荐

  1. 聊聊高并发(二十五)解析java.util.concurrent各个组件(七) 理解Semaphore

    前几篇分析了一下AQS的原理和实现.这篇拿Semaphore信号量做样例看看AQS实际是怎样使用的. Semaphore表示了一种能够同一时候有多个线程进入临界区的同步器,它维护了一个状态表示可用的票 ...

  2. Python类的继承演示样例

    class Pet: __name = "" def __init__(self, name): self.__name = name def bark(self): return ...

  3. 在AD09中查找元件和封装

    在AD09中查找元件和封装 Altium Designer 软件方法/步骤 Altium下Miscellaneous Devices.Intlib元件库中常用元件有: 电阻系列(res*)排组(res ...

  4. diff两个文件夹里的东西

    diff --help -x, --exclude=PAT               exclude files that match PAT 排除某个类型的文件 -u, -U NUM, --uni ...

  5. JAVA 软件升级版本号比较

    简单版本号比较: public class CompareVersion {   public static void main(String[] args) { // TODO Auto-gener ...

  6. BZOJ 1096: [ZJOI2007]仓库建设( dp + 斜率优化 )

    dp(v) = min(dp(p)+cost(p,v))+C(v) 设sum(v) = ∑pi(1≤i≤v), cnt(v) = ∑pi*xi(1≤i≤v), 则cost(p,v) = x(v)*(s ...

  7. 如何删除openfire for苹果,彻底卸载!

    早前在MAC上安装了一个名为openfire的服务插件,用这个进行一些插件安装和设置,使ichat能登录MSN帐号.但现在最新的MSN已经有所改善,支持视频与语音,离线信息接收.而openfire有个 ...

  8. linux 学习:环境变量设置

    一.临时环境变量 临时环境变量,只对当前打开的shell生效,shell关闭后,环境变量失效. 设置方法一: 分两步 MYPARA=hello export MYPARA 设置方法二:一步完成 exp ...

  9. vs2010断点使用技巧

    msdn:http://msdn.microsoft.com/zh-cn/library/vstudio/5557y8b4.aspx 有很多断点的文章. 为提供更大的灵活性,Visual Studio ...

  10. 基于visual Studio2013解决算法导论之015第二小元素

     题目 查找第二小元素 解决代码及点评 #include <stdio.h> #include <stdlib.h> #include <malloc.h> ...