C语言求出给出数据的素数的和以及素数的个数
2015-12-05 09:25
281 查看
这个只是对动态数组的应用
#include <stdio.h> #include <stdlib.h> #include <math.h> int main(void) { bool Prime(int num); int *pBuf,n,t=1,h=0,g=0; scanf("%d",&n); pBuf=(int*)malloc(n*sizeof(int)); for(int i=0;i<n;i++) scanf("%d",&pBuf[i]); puts("========================="); for(int j=0;j<n;j++) { if(Prime(pBuf[j])) { g+=1; h+=pBuf[j]; } } printf("全部素数和:%d\n",h); printf("素数的个数:%d\n",g); system("pause"); return 0; } bool Prime(int num) { /* 特殊情况处理 */ if(num==1) return false; if(num==2) return true; //除了2以外,能被2整除的都不可能是素数 if(num%2==0) return false; //没有特殊情况了 正常判断 for(int s=3;s*s<num;s+=2) if(num%s==0) return false; return true; }
相关文章推荐
- NSLog和@“字符串”
- [LeetCode] Largest Rectangle in Histogram 解题思路
- [并发并行]_[初级]_[C++实现sychronized方式的对象锁]
- [并发并行]_[初级]_[C++实现sychronized方式的对象锁]
- C++Builder 笔记
- 用C++类实现简单的栈
- 调整数组中奇数偶数位置
- c语言:编写一个程序,可以直接接收键盘字符
- c语言:将三个数按从大到小输出。
- C++基本知识
- c++ 关于类成员函数指针
- c++ -- value category
- Effective C++读书笔记-----条款20:宁以pass-by-reference-to-const替换pass-by-value
- vc++ 6.0 环境下结构体(数组)的操作类
- 基于c++11 的高精度计时器
- C语言实现动态数组
- C++返回值的“拷贝”问题
- C++ STL:stack和queue
- C++11的enum class & enum struct和enum
- 【C语言学习】封装和模块化思想