博客
关于我
1-n素数之和(正规解法)
阅读量:198 次
发布时间:2019-02-28

本文共 1123 字,大约阅读时间需要 3 分钟。

Mooc课后习题集

记录自己学习C语言过程中有意识地开始写代码的过程,每一道题都记录下自己写出的代码,直到现在学习到数据结构那时,代码的注释格式也还不会,都是按照自己习惯的写法。如代码有误,希望能得到谅解。

如果对各位的思路引导有帮助,那更好。


质数求和程序

#include 
#include
int IsPrime(int x);
int main() {
int x, i, sum;
sum = 0;
printf("shunima");
scanf("%d", &x);
for (i = 1; i <= x; i++) {
if (IsPrime(i) == 1) {
sum += i;
}
}
printf("%d", sum);
return 0;
}
int IsPrime(int x) {
int i;
if (x == 2) {
return 1;
} else if (x == 1 || x < 0) {
return 0;
} else {
for (i = 2; i <= x; i++) {
if (x % i == 0) {
return 0;
}
}
return 1;
}
}

代码分析与改进建议

  • 质数判断逻辑优化

    • 当判断一个数是否为质数时,传统的方法是从2到x逐一检查是否能被整除。但这种方法时间复杂度较高,尤其是当x较大时。
    • 更优的做法是从2到sqrt(x)循环,这样可以减少不必要的循环次数并提高效率。
  • 输入处理问题

    • 代码中printf("shunima");这一行存在语法错误,建议改为printf("请输入一个整数:");以便用户知道输入的数值类型。
    • scanf("%d", &x);这一行的格式字符串缺少了空格,且&amp;可能是输入错误,建议修正为&x
  • 代码可读性优化

    • 代码中缺少注释,建议在关键部分添加注释,便于其他开发者快速理解代码逻辑。
    • 主函数main()的变量命名可以更清晰,例如将sum命名为prime_sum更能反映其用途。
  • 总结

    这是我学习C语言过程中记录的一部分代码,主要是关于质数判断和求和的简单程序。通过不断练习和总结,我对C语言的基础知识有了更深入的理解,同时也逐渐掌握了编程中的基本规范和优化方法。

    转载地址:http://utji.baihongyu.com/

    你可能感兴趣的文章
    NetworkX系列教程(11)-graph和其他数据格式转换
    查看>>
    Networkx读取军械调查-ITN综合传输网络?/读取GML文件
    查看>>
    Net与Flex入门
    查看>>
    net包之IPConn
    查看>>
    NFinal学习笔记 02—NFinalBuild
    查看>>
    NFS共享文件系统搭建
    查看>>
    nfs复习
    查看>>
    NFS网络文件系统
    查看>>
    nft文件传输_利用remoting实现文件传输-.NET教程,远程及网络应用
    查看>>
    ng 指令的自定义、使用
    查看>>
    Nginx
    查看>>
    nginx + etcd 动态负载均衡实践(二)—— 组件安装
    查看>>
    nginx + etcd 动态负载均衡实践(四)—— 基于confd实现
    查看>>
    Nginx + Spring Boot 实现负载均衡
    查看>>
    Nginx + uWSGI + Flask + Vhost
    查看>>
    Nginx - Header详解
    查看>>
    Nginx Location配置总结
    查看>>
    Nginx Lua install
    查看>>
    Nginx upstream性能优化
    查看>>
    Nginx 中解决跨域问题
    查看>>