(C++)素数的判断(C++教学)(C语言)
源代码:
#include <iostream>
using namespace std;int fun(int num){if(num<1){return 1;}if(num%2==0){return 0;}else{return 2;}
}int main(){while (1){int y=0;int num=0;cout<<"请输入一个整数:\n";cin>>num;y=fun(num);cout<<num<<endl;if(y==1){cout<<"输入有误,请重新输入\n";}else if(y==0){cout<<"该数是素数\n";}else{cout<<"该数不是素数\n";}}
}
相关知识解释:
C++与C语言对比
相同点
-
基础语法:变量声明、循环、条件判断等基本语法相同
-
数据类型:int, float, double等基本类型相同
-
运算符:算术、逻辑、关系运算符相同
不同点
特性 | C语言 | C++ |
---|---|---|
输入/输出 | printf/scanf | cout/cin |
头文件 | stdio.h | iostream |
布尔类型 | 无内置bool | 有bool类型 |
函数重载 | 不支持 | 支持 |
引用 | 不支持 | 支持 |
面向对象 | 不支持 | 支持类、继承等 |
异常处理 | 无 | try/catch |
命名空间 | 无 | 有namespace |
字符串处理 | 字符数组 | string类 |
C++基础重要知识点
1. 输入输出系统
#include <iostream>
using namespace std;int main() {int num;cout << "请输入一个整数: ";cin >> num;cout << "你输入的是: " << num << endl;return 0;
}
-
cout
:标准输出流对象 -
cin
:标准输入流对象 -
endl
:换行并刷新缓冲区
2. 命名空间
using namespace std; // 使用标准命名空间// 或者只引入需要的部分
using std::cout;
using std::cin;
3. 函数重载
// 同名函数,不同参数
void print(int i) {cout << "整数: " << i << endl;
}void print(double d) {cout << "浮点数: " << d << endl;
}
4. 引用类型
void swap(int &a, int &b) {int temp = a;a = b;b = temp;
}
5. 标准模板库(STL)
#include <vector>
#include <algorithm>vector<int> numbers = {3, 1, 4, 1, 5};
sort(numbers.begin(), numbers.end());
6. 类与对象
class Circle {
private:double radius;public:Circle(double r) : radius(r) {}double area() {return 3.14159 * radius * radius;}
};int main() {Circle c(5.0);cout << "面积: " << c.area() << endl;return 0;
}
关键知识点总结
-
C++是C的超集:C++扩展了C语言,添加了面向对象特性
-
输入输出更安全:cin/cout比scanf/printf更安全
-
面向对象编程:支持类、继承、多态等特性
-
标准模板库:提供丰富的容器和算法
-
引用类型:更安全的指针替代方案
-
异常处理:try/catch机制提高程序健壮性
-
函数重载:提高代码可读性和灵活性
注:该代码是本人自己所写,可能不够好,不够简便,欢迎大家指出我的不足之处。如果遇见看不懂的地方,可以在评论区打出来,进行讨论,或者联系我。上述内容全是我自己理解的,如果你有别的想法,或者认为我的理解不对,欢迎指出!!!如果可以,可以点一个免费的赞支持一下吗?谢谢各位彦祖亦菲!!!!!