【C】新手C语言学习(2)

简介: 【C】新手C语言学习(2)

@TOC
C语言典型例题——判断一个数是否为质数(素数)
这里这只介绍一种方法

1.首先什么是质数(素数)

2.错误示范

3.正确示范

  1. 首先什么是质数(素数)
           我开始认为素数和质数是两个东西,其是他两个是一个东西。
            除了1和它本身之外,不能被其他数所整除即为质数(素数)
            例如11,除了1和它本身11没有其他数可以将它整除,所以11是个质数(素数)

2.错误示范
        开始我并没有直接从网上搜索相关教程视频,而是凭借前两天看过的一节网课中类似的一个题开始了编写,于是就出现了一堆的错误,如下:

#include <stdio.h>
int main(void)
{
    int i = 0;
    printf("请输入一个小于100的数\n");
    scanf("%d\n",&i);
    while (i<=100)
    {    
        if (i % 2 == 1)
        printf("是质数");
    else
        printf("不是质数");
    }    
    return 0;
}

        于是我又去企鹅群里问大佬,说我这个为什么运行不了啊,大佬说我的语法和逻辑都有错误,让我自行百度,然后理清思路,然后便有了下面的操作。
        我开始在CSDN和哔哩哔哩上疯狂搜索,因为开始我认为质数和素数不是一个东西,所以跟很多视频文章擦肩而过,直到我认识到素数和质数是一个东西后,才正式的开始。
3.正确示范
        我发现了解到while,for循环语句的我,看很多老哥写的代码根本就看不懂,我就一直找简单的,这里推荐b站up主小小杰吖i的这个视频(这里是链接),这里用到了for循环,

//检验一个数是否为质数(素数)
#include <stdio.h>
int main(void)
{
    int num;

    printf("请输入一个大于1的整数:");
    scanf("%d", &num);
    //for循环
    for (int i = 2; i <= num - 1; i++)
    {
        //判断num是否能被i整除 若能整除即不为质数
        if (num%i == 0)
        {
            printf("%d不是质数\n", num);
            //return终止函数
            return;

        }
    }
    printf("%d是质数\n", num);
    return 0;
}

用到的知识,(1)for循环语句

    for(exp1;exp2;exp3)


exp1为初始化部分,用于初始化循环变量。

exp2为条件判断部分,判断条件是否终止。

exp3为循环调整。

把while循环中的三个部分放到了一起。
(2)%求模(求余数)运算。
(3)return目前不是很了解,在这个代码中起终止函数的作用。

相关文章
|
存储 C语言
C语言学习记录——动态内存函数介绍(malloc、free、calloc、realloc)
C语言学习记录——动态内存函数介绍(malloc、free、calloc、realloc)
2015 1
|
编译器 C语言 C++
C语言学习记录——位段(内存分配、位段的跨平台、位段的应用)
C语言学习记录——位段(内存分配、位段的跨平台、位段的应用)
201 0
|
C语言
教你快速理解学习C语言的循环与分支
教你快速理解学习C语言的循环与分支
133 0
|
存储 程序员 Go
|
存储 编译器 C语言
c语言学习历程【1】
c语言学习历程【1】
217 1
|
C语言
C语言学习记录——枚举(定义、与结构体的区别、优点)
C语言学习记录——枚举(定义、与结构体的区别、优点)
320 3
|
C语言
C语言学习记录——通讯录(静态内存)
C语言学习记录——通讯录(静态内存)
120 2
|
存储 C语言
C语言学习记录——联合体(共用体、特点、用法、联合体大小计算)
C语言学习记录——联合体(共用体、特点、用法、联合体大小计算)
386 2
|
测试技术 C语言
数据结构学习记录——树习题—Tree Traversals Again(题目描述、输入输出示例、解题思路、解题方法C语言、解析)
数据结构学习记录——树习题—Tree Traversals Again(题目描述、输入输出示例、解题思路、解题方法C语言、解析)
221 1
|
C语言
C语言学习记录——动态内存开辟常见的错误
C语言学习记录——动态内存开辟常见的错误
138 1