wow~ ⊙o⊙
- 前言
- 蓝桥杯A组题
- 1.刚开始自己写的代码
- 2.改进后
- 总结
前言
首先声明,本人是一个C语言初学者,目前只学习了基本的语法与函数,一些数据类型,和简单循环语句。所以在写代码和写文章的时候,或多或少会有些不对和不恰当的地方,请大家海涵。也非常高兴大家可以指出我的一些不足之处,给予我一些指点。从今天开始我将写一些文章,主要用来记录自己平时的学习,感受。希望能与大家一起探讨,分享,共同进步。
蓝桥杯A组题
今天在博客看到的关于2025蓝桥杯的文章,看到第一个题是找素数,学了while,if,for的我就兴致冲冲的尝试
1.刚开始自己写的代码
由于太过狼狈,并且结果可谓是驴头不对马嘴,所以就不把代码写出来了。结果截图如下:之后也将代码给了Gemini帮忙分析了一波,大致看了错误的点,我真的是太蠢了,竟然把之前写求素数时错的思路用到了这里,脑子瓦特了。所以这也是我突发奇想写这个来巩固学习的原因吧。
2.改进后
代码如下:
#include<stdio.h>staticintis_prime(intx)//定义一个函数用以求素数{if(x<2)return0;if(x==2)return1;if(x%2==0)return0;for(inti=3;i*i<=x;i+=2){if(x%i==0)return0;}return1;}intmain(){intn=2025,num=1,count=0;//n用于记录第几个素数,m为第n个素数值while(count<=n){++num;if(is_prime(num))++count;}printf("第 %d 个素数是:%d\n",n,num);return0;}结果截图如下:
虽然借用了不属于我的AI之力,但我还有一些疑问尚未解答:在先前文章里第2025个素数为17627,Gemini给出的也是如此,但利用Gemini给的代码运行结果确是17623,百度的答案更是离谱17471,这就让我有些难受了,我看这个代码也没错啊!!
总结
以上对我本次兴致冲冲挑战到眼高手低挫败,再到最后得出飘忽不定的答案。事实证明,以我目前的水平果然无法挑战啊!
希望是一天后或是几天,我可以游刃有余应对这类程序吧!
Goodbye~~