zoukankan      html  css  js  c++  java
  • C语言基础03

    1.随机数 :一个范围内随机数字的返回值. 格式为: arc4random() % ( num大值 -num小值 + 1 ) + num小值.

    int n,i= 0;           //控制随机数的个数

    int a=30,b=125;  //设置区域范围

    printf("Please Enter two different nums : "); 

    scanf("%d",&n); 

    while( i < n ){

      int rand =arc4random() % ( b - a + 1) +a;  //输出n个范围内的 随机数.

      printf("%d\n",rand);

      i++;

    }

    能输出多个随机数,需要求其最小的那个随机数? 怎么办,我们可以考虑新添加新变量min,同时 结合if判断 和循环赋值.

    在上一个的 while循环里面进行一次判断就可以;

    int min = 0 ;    //假设min的值为0 

    ...

    while(..){

      int rand =arc4random() % ( b - a + 1) +a;

      if(rand < min ) {

         min=rand;    //第一次循环 min的值发生改变为rand. 循环还没结果,第二次循环在进行判断,第二次判断的min就是前面的第一个随机数....

      }  

    }

      printf(" %d",min);

    }

    2.continue和break的区别

    continue和break都是应用在if或者循环里面,break是终止所有的循环次数,即使后面的循环还在.

    而continue则只是针对这次循环,并且后面的代码不执行(忽略), 但是下一次循环依旧执行.

    int sum = 0;

    for( int i = 0; i <10 ;i++){    

      if( i % 2 == 0 ){

        continue;       // 在10以内的偶数,则停止该循环,后面代码不会执行.

        printf("%d\n",i);  // 不会有输出i .

       }

        sum+= i;      //10以内的奇数和

    }

    while( i< 10){

      if( i % 2 !==0){  

        break;     //结束所有的循环,只要整除2 就直接输出while循环外面的输出语句了.

        i++;    //根本没执行++

      }

      printf("%d\n",i);  // 只输出0和1 ,后面的循环结束了.

    }

    printf("break之后就来到了这里 嘿嘿!");

    输入的字符比较是否有相同字符,最后输出完全不包含相同字符的字符串?

    char a,b=0;

    printf("Please enter char :");

    a = getchar();  //或者文本流的第一个字符,相当于scanf,不过每次只获取一个字符.

    while(a=getchar() !=EOF ){   //a获取下一个字符,并且循环继续获取 EOF就是最后一个字符的表示,

      if( a = b ) {

        //去除a 不知道怎么搞

        printf("find an same ");

        break;

    }

      b=a;    //讲a的旧值赋值给b ,a的新值一直在循环. 这样就可以保证一直可以比较是否相同.

    }

     面试遇到一个数学问题,感觉有点贱,求2个数的最大公约数和最小公倍数?

    很简单:2个数的最大的公约数一般是小于给定的2个数值,所以我们尽量求较小的值  符合该条件.a% i ==0 && b % i==0

    int a,b;

    int c =a<b?a:b;

    for(int i=c;i<c;i--){

      if( a % i ==0 && b %i==0 ){  

        c=i   //i就是公约数最大的

        break;

      }

    }

  • 相关阅读:
    栈和堆的区别【个人总结】
    理解堆与栈
    javacript属性
    Reapeater CommandName ,CommandArgument
    FormsAuthentication.HashPasswordForStoringInConfigFile(str1, str2);
    文件上传处理
    GetJson
    js内置对象
    Debug
    [转]关于一些SPFA的标程
  • 原文地址:https://www.cnblogs.com/liruoxuan/p/4063237.html
Copyright © 2011-2022 走看看