|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 花落、莫相离 于 2012-3-28 18:23 编辑
视频里的程序 算法思想看的我云里雾里的 看不明白 我就按照自己的思路写了个程序 判断是否为素数
为此还特意查了下百度 好象大于1的自然数除了能被自己整除不能被任何数整除的就叫素数
视频里用到了循环 我的程序只用了if else if语句
不知道我这么写对不对 有什么漏洞 本人学历不高 数学也不好 请各位老师帮忙看下这样写可以吗
程序如下
- #include <stdio.h>
- void main()
- {
- int a;
- printf("请输入任何一个大于1的整数!\n");
- scanf("%d",&a);
- if(( a == 2 || a == 3 || a == 5 || a == 13 ) && a > 1) // 看这个数是不是 2 3 5 13本身 并且看它是不是大于1
- printf("这个数是素数\n"); // 如果是 2 3 5 13 本身 并且大于1 那他就是素数
- if(( (a!=2&&a%2==0)||(a!=3&&a%3==0)||(a!=5&&a%5==0)||(a!=13&&a%13==0)) && a > 1 )//看这个数在不是2 3 5 13本身 并且大于1的情况下能不能被 2 3 5 13整除
- printf("这个数不是素数\n"); // 如果能被整除 那就不是素数
- else if (a != 1) // 判断这个数是不是不等于1
- printf("这个数是素数\n"); // 如果不等于1 且不满足上述被2 3 5 13整除的条件 那他就是素数
- if( a <= 1) // 判断它是不是小于或等于1
- printf("输入错误\n"); //如果是 就显示输入错误
- }
复制代码
|
|