c语言13

41 阅读3分钟

一个break不能跳2个循环,只能跳一个

j=1后跳出1个循环,然后继续执行外面的循环 结果为内循环.......1内循环结束*3外循环结束

#include <stdio.h>

int main()
{
    for (int i = 1; i <= 3; i++)
    {
        for (int j = 1; j <= 5; j++)
        {
            printf("内循环.......%d", j);
            break;
        }
        printf("内循环结束\n");
    }
    printf("外循环结束\n");
    return 0;
}

goto语句

  1. goto去哪就去哪
  2. 格式:goto a; a:(不一定为a,也可以为其他字母或字符串,不能是数字)
  3. goto可以跳到任何地方去,但跳到前面会进入死循环
#include <stdio.h>

int main()
{
    for (int i = 1; i <= 3; i++)
    {
        for (int j = 1; j <= 5; j++)
        {
            printf("内循环.......%d", j);
            goto a;
        }
        printf("内循环结束\n");
    }
   return 0;
}

函数

  1. main()主函数printf()是输出函数
  2. 我们可以定义函数,例如下面的f1():
#include<stdio.h>
//1. 定义
//void:函数中没有返回值,即return
//f1:函数名,自己定义的,规则与变量名一样
void f1(){
    //这个函数的功能
    printf("函数f1被执行\n");
}
//main:主函数,一切代码的入口
int main(){
    f1();
    printf("主函数开始执行\n");
//2. 调用
    f1();
    f1();
    return 0;
}
  1. 函数要定义在main前面
  2. 函数之间可以互相调用 如下面死循环:
#include<stdio.h>
//1. 定义
//void:函数中没有返回值,即return
//f1:函数名,自己定义的,规则与变量名一样
void f1(){
    //这个函数的功能
    printf("函数f1被执行\n");
    f2();
}
void f2(){
    printf("函数f2被执行\n");
    f1();
}
//main:主函数,一切代码的入口
int main(){
//2. 调用
    f2();
    f1();
    return 0;
}
  1. 函数后面要写(),定义时不用写分号,调用时需要
  2. void:函数中没有返回值,即return后面的值。如果你想让函数返回一个值,你可以使用数据类型(如 intfloat 等)代替 void,并在函数内部使用 return 关键字,若需要返回值则需要根据数据类型选择(保持一致)。
  3. return:1. 把它后面的值作为函数的返回值2. 结束函数的执行,后面代码无效 例:a为返回值114
#include<stdio.h>
int f1(){
    printf("函数f1被执行\n");
    return 114;
    printf("函数f1执行结束\n");//不会执行
}
int main(){
    int a = f1();
    printf("a = %d\n",a);
    return 0;
}
  1. 函数定义的最终模式:返回值类型 函数名(参数列表){函数体return 返回值;}
  2. 传参:在调用函数时,把对应的参数填进去
  3. 三个数比大小
#include <stdio.h>
int f1(int x, int y, int z)
{
    if (x > y)
    {
        if (x > z)
        {
            return x;
        }
        else
        {
            return z;
        }
    }
    else
    {
        if (y > z)
        {
            return y;
        }
        else
        {
            return z;
        }
    }
}
    int main()
    {
        int x,y,z;
        scanf("%d %d %d", &x, &y, &z);
        printf("max is %d\n", f1(x, y, z));
        return 0;
    }
    ```
    
```c
#include <stdio.h>
int f1(int n)
{
    for (int i = 2; i <n; i++)
    {
        if (n % i == 0)
        {
            return 0;
        }
    }
    return 1;
}
int main()
{
    int x;
    printf("输入1个数字: ");
    scanf("%d", &x);
    int y = f1(x);
    printf("%d", y);
    return 0;
}