C流程控制

选择控制语句

    if语句

            if(){}  满足条件才会执行

       if();  如果条件成立执行if后面的第一个语句(语句结束的标志是;)

               从第二句开始,跟if语句没有关系了.

       if(){}else{}    满足条件执行一种方案,否则,执行另一种方案


       if(){}else if(){} 满足第一种条件执行一种方案,如果第一种条件不满足,

             继续判断是否满足第二种条件,不满足继续判断接下来的别的条件

             但:只要有一个满足了,接下来的条件判断不会执行.

    switch语句

  
  
  1. 1.条件结果只能是整数,而case只能是整型常量.注意:case ‘a’;
  2. 2.break 可有可无,有则执行完跳出,没有则继续执行,直到遇到下一个break或执行完.
  3. 3.default可有可无,有则如果条件都不满足,会执行这句,无则条件都不满足,执行结束.
  4. 4.case下面要定义变量必须加{} 且case后的常量值不能重复
  5. 5.switch语句可以全部用if语句替代.但if语句不能全用switch替代.
  6. int a=5;
  7. switch (a) {
  8.    case 'a'://==case 97:
  9.        printf("a=1\n");
  10.        break;
  11.    case 2:
  12.        printf("a=2\n");
  13.        break;
  14.    case 3:
  15.        printf("a=3\n");
  16.        break;
  17.    default:
  18.        printf("没有匹配的int值\n");
  19.        break;
  20. }

循环语句

    for(

    while(条件){}

    do{}while(条件)

         如果碰到continue,则跳出本次循环继续下一次判断,如果条件成立继续执行循环.

          如果碰到break无论条件满足与否,循环立刻结束.

           continue与break跳出的都是当前所在的循环作用域.如果外层有循环,不受影响.

           do while至少执行一次.而while不一定.



C语言函数

    函数是一组特定的代码块,执行特定的任务。当你需要执行一个函数体时,你只需要调用函数的标示名。

     定义: 返回值类型 函数名(形式参数类型 参数名1,……){

                    具体代码

                    return 返回值

                 }

         调用: 函数名(实际参数1,实际参数2,…..);

  

     1.返回值类型不定义默认是int.如果不需要具体返回值类型用void(return可以省略).

     2.是否要定义参数看是否有未知内容参与运算,调用时参数必须对应.参数传递的是值.

     3.return可以有多个,但是如果执行到return就不会再执行后面的代码,函数执行结束.

     4.函数不调用不执行,执行顺序看调用顺序.定义了返回值类型可以不返回.(不建议).

     5.函数必须定义才能调用,但不能重复定义.不能嵌套定义.不能自已调用自已(死递归).


选择排序和冒泡排序

  
  
  1.   选择排序
  2.   核心:把最大(最小)的数依次选出来,依次放到相应的角标上去.
  3.    2 1 5 3 4
  4.    1 2 3 4 5
  5.    int arr[5]={2,1,5,3,4};
  6.    //这个数组有多少个元素,则就应该选多少次
  7.    for (int i=0; i<5; i++) {
  8.        //在求每一次最值
  9.        int tempMinIndex=i;
  10.        for (int y=i; y<5; y++) {
  11.            if (arr[tempMinIndex]>arr[y]) {
  12.                tempMinIndex=y;
  13.            }
  14.        }
  15.        //把最值跟当前这一轮的首元素做交换
  16.        int temp=arr[tempMinIndex];
  17.        arr[tempMinIndex]=arr[i];
  18.        arr[i]=temp;
  19.    }
  20.    for (int i=0; i<5; i++) {
  21.        printf("%d ",arr[i]);
  22.    }
  23.    printf("\n");
  24.     冒泡排序
  25.     核心是:把最值冒出来.
  26.    
  27.     int arr[5]={2,1,-1,3,4};
  28.    for (int i=0; i<5; i++) {
  29.        //把当前返回内的最值冒出来--相邻的两两比较
  30.        for (int y=0; y<5-i; y++) {
  31.            //当前元素比其下一个更大,则交换位置
  32.            if (arr[y]>arr[y+1]) {
  33.                //交换
  34.                int temp=arr[y];
  35.                arr[y]=arr[y+1];
  36.                arr[y+1]=temp;
  37.            }
  38.        }
  39.    }
  40.    for (int i=0; i<5; i++) {
  41.        printf("%d ",arr[i]);
  42.    }
  43.    printf("\n");


  















  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值