網(wǎng)站首頁 編程語言 正文
素數(shù)的概念:素數(shù)也叫質(zhì)數(shù),是一種只能被自己本身和1整除的數(shù)并且大于1,當(dāng)然0與1不是素數(shù)。
1.判斷單個數(shù)是否為素數(shù)(多組輸入)
我的思路是,首先輸入一個數(shù),利用素數(shù)的概念來判斷是非為素數(shù),是的話輸出素數(shù);否則不輸出。
關(guān)于素數(shù)的判斷首先我們吧輸入的數(shù)當(dāng)初被除數(shù),我選擇用一個for循環(huán)來實現(xiàn),從2開始當(dāng)除數(shù),每輪加1,一直循環(huán)去除被除數(shù),一直除到被除數(shù)減一那個數(shù),要是期間能被一個數(shù)整除則跳出循環(huán)不為素數(shù),要是一直沒有被整除則輸出這個素數(shù)。
#include<stdio.h> int main() { int a=0, j; while (scanf_s("%d", &a) != EOF) { int flag = 1; for (j = 2; j < a; j++) { if (a % j == 0) { flag = 0; break; } } if (flag == 1 && a != 0 && a != 1)//0與1不是素數(shù) printf("%d為素數(shù)。\n", a); else printf("%d不是素數(shù)。\n", a); } return 0; }
這里我選擇引用一個局部變量flag來當(dāng)作判斷是否為素數(shù)的標(biāo)志,剛剛開始賦值為1,假如被整除了就變?yōu)?,最后直接判斷flag的值,1為素數(shù);否則不是。
最后代碼運行
2.輸入范圍輸出范圍內(nèi)的素數(shù)
這個算是上一個例子的高階版,這個題的我們得解決兩個問題:①把這個范圍的數(shù)全都進(jìn)行輸出②判斷輸出的數(shù)是否為素數(shù),是的話輸出否則不輸出。
關(guān)于問題一我選擇用一個for循環(huán)來不斷輸出這個數(shù)進(jìn)行比較,因為輸入的是一個范圍必定有最大值和最小值,我們可以以最小值為起始數(shù)開始循環(huán)輸出,每次加1,直到加到最大值停止輸出。
第二個問題就利用上面例子的思路就可以,把他包括到第一個for循環(huán)里面。
代碼如下
#include<stdio.h>//輸入一個范圍,求嘞個范圍里面的素數(shù) int main() { int m, n; scanf_s("%d %d", &m, &n);//輸入一個范圍,m為最小值,n為最大值 for (int i = m; i < n + 1; i++) { int flag = 1; for (int k = 2; k < i ; k++) { if (i % k == 0) { flag = 0; break; } } if (flag == 1 && i != 0 && i != 1) printf("%d ", i); } return 0; }
最后代碼運行
?成功運行
3.總結(jié)
對于這個代碼我感覺唯一的難點在于對于break的理解,還有素數(shù)的概念,還有對于0與1不是素數(shù)的判斷上。
關(guān)于0與1不是素數(shù)我運用了相對暴力的做法,我選擇在最后flag的判斷里面加入對輸入的值的判斷,只有他不等于0或者1時才為素數(shù)否則不是。
原文鏈接:https://blog.csdn.net/weixin_64448174/article/details/122154110
相關(guān)推薦
- 2022-01-29 win server 2008 web IIS部署asp.net程序后,CSS樣式錯亂不顯示問題
- 2022-10-15 C語言庫函數(shù)qsort的使用及模擬實現(xiàn)_C 語言
- 2023-04-08 C#以太網(wǎng)Sockets服務(wù)器設(shè)計實現(xiàn)_C#教程
- 2024-03-24 spring boot 3 + spring cloud sleuth 無法注入Tracer問題
- 2022-05-31 Python中用戶輸入與while循環(huán)詳情_python
- 2023-06-17 C#?輸出參數(shù)out問題_C#教程
- 2023-01-12 Golang單元測試與斷言編寫流程詳解_Golang
- 2022-07-15 go使用consul實現(xiàn)服務(wù)發(fā)現(xiàn)及配置共享實現(xiàn)詳解_Golang
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支