当前位置: 首页 > news >正文

(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语言对比

相同点

  1. 基础语法:变量声明、循环、条件判断等基本语法相同

  2. 数据类型:int, float, double等基本类型相同

  3. 运算符:算术、逻辑、关系运算符相同

不同点

特性C语言C++
输入/输出printf/scanfcout/cin
头文件stdio.hiostream
布尔类型无内置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;
}

关键知识点总结

  1. C++是C的超集:C++扩展了C语言,添加了面向对象特性

  2. 输入输出更安全:cin/cout比scanf/printf更安全

  3. 面向对象编程:支持类、继承、多态等特性

  4. 标准模板库:提供丰富的容器和算法

  5. 引用类型:更安全的指针替代方案

  6. 异常处理:try/catch机制提高程序健壮性

  7. 函数重载:提高代码可读性和灵活性

注:该代码是本人自己所写,可能不够好,不够简便,欢迎大家指出我的不足之处。如果遇见看不懂的地方,可以在评论区打出来,进行讨论,或者联系我。上述内容全是我自己理解的,如果你有别的想法,或者认为我的理解不对,欢迎指出!!!如果可以,可以点一个免费的赞支持一下吗?谢谢各位彦祖亦菲!!!!!

http://www.lryc.cn/news/573899.html

相关文章:

  • UNet改进(4):交叉注意力(Cross Attention)-多模态/多特征交互
  • 测试工程师实战:用 LangChain+deepseek构建多轮对话测试辅助聊天机器人
  • 2025-06-22 思考-人的意识与不断走向死亡的过程
  • P99延迟:系统性能优化的关键指标
  • AWS认证系列:考点解析 - cloud trail,cloud watch,aws config
  • MySQL之索引结构和分类深度详解
  • 【构建大型语言模型】
  • 鸿蒙 Column 组件指南:垂直布局核心技术与场景化实践
  • 【PyTorch项目实战】CycleGAN:无需成对训练样本,支持跨领域图像风格迁移
  • 《计算机网络:自顶向下方法(第8版)》Chapter 8 课后题
  • 华为云Flexus+DeepSeek征文|基于Dify构建解析网页写入Notion笔记工作流
  • 嵌入式C语言编程规范
  • Vue3解析Spring Boot ResponseEntity
  • select和poll用法解析
  • 如何仅用AI开发完整的小程序<4>—小程序页面创建与删除
  • 软件工程核心知识全景图:从需求到部署的系统化构建指南
  • 《算法笔记》之二(笔记)
  • DeepSeek:中国AI开源先锋的技术突破与行业革新
  • DeepSeek技术解析:开源大模型的创新突围之路
  • Unity中的Mathf.Clamp
  • 【unitrix】 4.0 类型级数值表示系统(types.rs)
  • 【已解决】 数据库INSERT操作时,Column count doesn’t match value count at row 1
  • 微处理器原理与应用篇---常见基础知识(6)
  • Redis-CPP 5大类型操作
  • 72、单元测试-常用测试注解
  • vue3 el-table 行字体颜色 根据字段改变
  • 在 Windows 和 Linux 下使用 C/C++ 连接 MySQL 的详细指南
  • SQL 中 HAVING COUNT (1)>1 与 HAVING COUNT (*)>1 的深度解析
  • Spring Boot Actuator 跟踪HTTP请求和响应
  • 开源 python 应用 开发(二)基于pyautogui、open cv 视觉识别的工具自动化