C题目12:请写一个函数,判断一个数是否为质数,并在main函数中调用

一.每日小语

人的一切痛苦,本质上都是对自己的无能的愤怒。——王小波

自己思考

判断一个函数是否为质数,这个我在之前练过,我想至少两次,而这一次则是问我如何在main函数中调用,这个概念我不理解,所以我想先敲写质数代码,然后再理解main函数。

#include <stdio.h>int main()
{int num;printf("请输入一个数:");scanf("%d",&num);for(int i=3;num>i;i++){if(num%i==0){printf("%d是一个质数",num);break;}else{printf("%d不是一个质数",num);break;}}return 0;
}

 这个运行就很难受,我输入5它告诉我不是质数。

然后呢,我就想到了之前好像有一个提前设置一个数,然后改变它的0,1值。

#include <stdio.h>int main()
{int num;int IsPrime=0;printf("请输入一个数:");scanf("%d",&num);for(int i=2;num>i;i++){if(num%i!=0){IsPrime=0;}else{IsPrime=1;break;}}if(IsPrime=1){printf("%d是一个质数",num);}else{printf("%d不是一个质数",num);}return 0;

加了以后还是有问题,百思不得其解。

  1. 在比较IsPrime的值时,应该使用双等号(==)而不是单等号(=)。单等号用于赋值操作,而双等号用于比较操作。
    应将if(IsPrime=1)修改为if(IsPrime==1)

  2. 当前代码的逻辑是在找不到能整除的因子时判断为质数,这是错误的。应该修改为找到能整除的因子时判断为非质数。

    #include <stdio.h>int main()
    {int num;int IsPrime=0;printf("请输入一个数:");scanf("%d",&num);for(int i=2;i*i<num;i++){if(num%i==0){IsPrime=0;break;}}if(IsPrime==1){printf("%d是一个质数",num);}else{printf("%d不是一个质数",num);}return 0;
    }

    这一段代码还是有问题,说明之前根本没学懂,唉,学了就忘,究竟在学什么

    #include <stdio.h>int main() {int num;int isPrime = 1;printf("请输入一个数:");scanf("%d", &num);for (int i = 2; i < num; i++) {if (num % i == 0) {isPrime = 0;break;}}if (isPrime == 1) {printf("%d是一个质数", num);} else {printf("%d不是一个质数", num);}return 0;
    }
    

    通过gpt调试出来的代码,很好,一次就成功,对照了一下我自己的主要问题在于初始IsPrime应该为1

main函数调用

这个老师上课提了一嘴,我大概有一点yinx,但还是不清晰。 

#include <stdio.h>int isPrime(int num) {if (num <= 1) {return 0;} else {for (int i = 2; i < num; i++) {if (num % i == 0) {return 0;}}}return 1;
}int main() {int num;printf("请输入一个数:");scanf("%d", &num);if (isPrime(num)) {printf("%d是一个质数\n", num);} else {printf("%d不是一个质数\n", num);}return 0;
}

gpt代码学习。。。

学了一点,自己搞了个更简单的。

#include <stdio.h>int IsPrime(int num)//输入参数是 num,即要判断的数
{int isPrime = 1;for (int i = 2; i < num; i++) {if (num % i == 0) {isPrime = 0;break;}}if (isPrime==1){printf("%d是一个质数", num);} else {printf("%d不是一个质数", num);}return 0;
}int main() 
{int num;int isPrime = 1;printf("请输入一个数:");scanf("%d", &num);IsPrime(num);//括号里要加numreturn 0;
}

嗯,

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/186922.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HarmonyOS4.0 ArkUI组件

目录 简介 搭建开发环境 ArkUI基础组件 Image组件 Text组件 TextInput Button Slider 简介 HarmonyOS 4.0的ArkUI组件是一套UI开发框架&#xff0c;提供开发者进行应用UI开发时所必须的能力。在ArkUI中&#xff0c;组件是界面搭建与显示的最小单位&#xff0c;开发者通过…

linux拨号服务器如何创建爬虫ip池

作为一个爬虫技术员&#xff0c;除了要熟练掌握至少一种编程语言外&#xff0c;还应该创建属于自己的爬虫ip池。我们都知道&#xff0c;在进行爬虫采集时&#xff0c;经常会遇到网站各种发爬机制&#xff0c;如果有自己的ip池&#xff0c;将会让爬虫这项枯燥无味的工作变得非常…

OLED双面显示广告机的应用场景

OLED双面显示广告机是一种创新的广告设备&#xff0c;它具有双面显示屏幕&#xff0c;可以同时向两个方向展示广告或信息。这种设备被广泛应用于各种场景&#xff0c;例如&#xff1a; 商业展示&#xff1a;在大型商业场所&#xff0c;如购物中心、百货商场等&#xff0c;OLED双…

RPC 简介

RPC 简介 RPC代表远程过程调用&#xff08;Remote Procedure Call&#xff09;&#xff0c;它是一种通信协议&#xff0c;允许一个计算机程序调用另一个地址空间&#xff08;通常是另一台机器上&#xff09;的过程或函数&#xff0c;就像本地调用一样&#xff0c;而无需显式编…

Git常用命令#切换分支

要在 Git 中切换分支&#xff0c;你可以使用 git checkout 命令。 a.创建新分支并切换到该分支 如果你想要创建一个新分支并立即切换到该分支&#xff0c;可以使用以下命令&#xff1a; git checkout -b 新分支名这会创建一个名为 新分支名 的新分支&#xff0c;并将你的工作目…

运维知识点-Nginx

Nginx Nginx解析安全实战预备知识实验目的#制作图片木马# web服务器-Nginx服务命令及配置centOS7安装安装所需插件安装gccpcre、pcre-devel安装zlib安装安装openssl Nginx解析安全实战 预备知识 NginxPHP/FastCGI构建的WEB服务器工作原理 Nginx|FastCGI简介 Nginx (“engin…

飞天使-elk搭建补充

文章目录 es 集群创建密码kibana 配置文件以及和nginx配置pm2 安装定期清理索引以及告警logstash 配置filebeat 配置文件nginx 的日志索引 es 集群创建密码 参考这篇博文进行设置&#xff1a;https://juejin.cn/post/7079955586330132487 最后的效果 #curl -XGET http://127.0…

微服务详细介绍(什么是微服务)

微服务是一种架构风格&#xff0c;它将复杂的应用程序拆分成一系列小型、独立的服务。每个服务都可以独立部署、扩展和维护&#xff0c;而无需对整个应用程序进行修改。 微服务架构有以下特点&#xff1a; 服务拆分&#xff1a;将应用程序拆分成多个小型服务。 独立部署&…

云轴科技ZStack信创云平台助力国泰君安期货实现信创改造

信创是数字中国建设的重要组成部分&#xff0c;也是数字经济发展的关键推动力量。作为云基础软件企业&#xff0c;云轴科技ZStack 产品矩阵全面覆盖数据中心云基础设施&#xff0c;ZStack信创云首批通过可信云《一云多芯IaaS平台能力要求》先进级&#xff0c;是其中唯一兼容四种…

数据爬取+数据可视化实战_哪里只得我共你(Dear Jane)_词云展示----网易云

一、前言 歌词上做文本分析&#xff0c;数据存储在网页上&#xff0c;需要爬取数据下来&#xff0c;词云展示在工作中也变得日益重要&#xff0c;接下来将数据爬虫与可视化结合起来&#xff0c;做个词云展示案例。 二、操作步骤 代码如下&#xff1a; # -*- coding:utf-8 -*-…

【ArcGIS Pro二次开发】(78):批量合并GDB数据库

有些GDB数据库会按分幅或行政区划进行分开储存&#xff0c;尤其是一些地形测绘或国情地理数据。 如下图所示&#xff1a; 数据是完整的&#xff0c;但使用的时候要一个一个拖进地图中&#xff0c;进行分析的时候也需要将其合并后使用。 因此就做了这个合库工具。 一、要实现的…

红队专题-fuzz技巧

红队专题 0x00 知己知彼常见 waf 收集SecureSphere (Imperva)西数WTS-WAF安全狗D盾腾讯云 waf阿里云云盾Web应用防火墙云锁UPUPW安全防护宝塔网站防火墙网防G01护卫神智创防火墙腾讯云玄武盾ISG 0x01 waf 绕过(过狗)姿势 举例SQL注入篇1.内联注释绕过2.等价替换法&#xff1a;3…

单片机AVR单片机病房控制系统设计+源程序

一、系统方案 设计一个可容8张床位的病房呼叫系统。要求每个床位都有一个按钮&#xff0c;当患者需要呼叫护士时&#xff0c;按下按钮&#xff0c;此时护士值班室内的呼叫系统板上显示该患者的床位号&#xff0c;并蜂鸣器报警。当护士按下“响应”键时&#xff0c;结束当前呼叫…

程序/进程替换(讲解)

本文旨在讲解进程替换的知识&#xff01;希望读完本文&#xff0c;能使读者对进程替换有更深一步的认识&#xff01;&#xff01;好的&#xff0c;废话不多说&#xff0c;干货来了&#xff01; 进程替换的引进&#xff01; 为什么要引进进程替换呢&#xff1f;我们创建子进程总…

Achronix推出基于FPGA的加速自动语音识别解决方案

提供超低延迟和极低错误率&#xff08;WER&#xff09;的实时流式语音转文本解决方案&#xff0c;可同时运行超过1000个并发语音流 2023年11月——高性能FPGA芯片和嵌入式FPGA&#xff08;eFPGA IP&#xff09;领域的领先企业Achronix半导体公司日前自豪地宣布&#xff1a;正式…

ethtool工具添加并验证网口

Filesystem Packages->console->network->ethtool 命令描述&#xff1a; ethtool 是用于查询及设置网卡参数的命令。 使用命令&#xff1a; ethtool ethx //查询ethx网口基本设置&#xff0c;其中 x 是对应网卡的编号&#xff0c;如eth0、eth1等等 ethtool –…

【NodeJS】 API Key 实现 短信验证码功能

这里使用的平台是 短信宝整体来讲还是挺麻烦的平台必须企业才行&#xff0c;个人是无法使用该平台的 平台必须完成 身份信息认证 和 企业认证 这里就需要 “营业执照”了 &#xff0c;没有 “营业执照” 的朋友还是后退一步吧 后端我用的是NodeJS &#xff0c;使用第三方库 ro…

【Java ——异常机制详解】

Java异常是Java提供的一种识别及响应错误的一致性机制&#xff0c;java异常机制可以使程序中异常处理代码和正常业务代码分离&#xff0c;保证程序代码更加优雅&#xff0c;并提高程序健壮性。本文综合多篇文章后&#xff0c;总结了Java 异常的相关知识&#xff0c;希望可以提升…

统信UOS和vue.js的一个兼容问题

作者&#xff1a;朱金灿 来源&#xff1a;clever101的专栏 为什么大多数人学不会人工智能编程&#xff1f;>>> 这事到现在说起还很奇怪&#xff0c;在UOS20&#xff08;硬件为华为鲲鹏服务器&#xff0c;arm架构&#xff0c;g8.3&#xff09;上部署uve.js&#xff0…

Excel 使用技巧

Excel 使用技巧 注意&#xff1a; excel 中设计计算的字符尽量使用英文。 拼接两段文字&#xff08;字符串拼接&#xff09; 方法一 在需要计算的单元格上,键入 点击 A1(点击需要拼接的单元格) & C1(点击需要拼接的单元格) 举例: 姓名栏想要拼接 姓 和 名 两列点击姓名这一…