精华内容
下载资源
问答
  • for循环的goto语句版本的代码...由此可知,在机器内部for循环和while循环是等效的,二者之间可以相互替换. /**************************************************/ /* for_goto.c使用goto语句实现fot循环 / // #...

    for循环的goto语句版本的代码和while循环的goto语句版本的代码几乎一样.也就是说,这两种循环的控制结构是一样的.
    由此可知,在机器内部for循环和while循环是等效的,二者之间可以相互替换.
    /**************************************************/
    /* for_goto.c使用goto语句实现fot循环 /
    /
    /
    #include <stdio.h>
    int main(void)
    {
    int n = 1;
    int add = 0;/累加和/
    int num = 0;
    int t;
    scanf("%d,", &num);
    loop:
    add += n;
    t = n == num;
    if(t)
    {
    goto done;
    }
    n++;
    goto loop;
    done:
    printf("%d", add);
    return 0;
    }
    /
    /
    /
    while_goto.c使用goto语句实现while循环 /
    /
    ************************************************/
    #include <stdio.h>
    int main(void)
    {
    int n = 1;
    int mul = 1;/阶乘/
    int num = 0;
    int t;
    scanf("%d,", &num);
    loop:
    mul *= n;
    t = n == num;
    if(t)
    {
    goto done;
    }
    n++;
    goto loop;
    done:
    printf("%d\n",mul);
    return 0;
    }

    展开全文
  • for和while

    2017-12-04 09:54:38
    下列关于for循环和while循环的说法中哪个是正确的?( ) A.while循环能实现的操作,for循环也都能实现  B.while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果  C.两种循环任何时候都可替换...
    下列关于for循环和while循环的说法中哪个是正确的?( )  
    A.while循环能实现的操作,for循环也都能实现    
    B.while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果    
    C.两种循环任何时候都可替换    
    D.两种循环结构中都必须有循环体,循环体不能为空

     

    我的理解是:
    当知道执行次数的时候一般用for
    当条件循环时一般用while
    例如:
    for i=0,i<n,i++
    {}
    这里n是已知数,可以循环n次

    while i<n
    {}
    不知道要循环多少次,但当i>=n的时候停止循环

    do while循环总会执行一次,for不一定,

    一般来说,for对于初学使用的要多于while,但其实while的功能要大于for,以后你慢慢会体会到的,所有的for循环都可以用while来表示,但就不是所有的while循环都可以用for循环来表示!

    while的用途有时候比for要巧
    因为while有do...while这个变体,无条件执行一次循环体后再判断是否达到或超过循环终止条件
    但是具体用什么还是看个人程序设计风格了
    举些例子:
    如果是非常有规律的循环,比如简单穷举那么我们用for
    如果用于处理复杂的循环,不适用单循环变量稳定递增进行的循环,那么一般我们用while

    其实也可以这样说,for循环都是用来表示那些显而易见的循环结构,就是使用它表示很容易就可以看出循环的头和尾,所以对于初学的程序来说这样。而while是用来表示一些相对复杂一点的循环结构,一般的while都不太容易看出循环的头和尾,有很多复杂的循环并不能用for循环来表示时,就只能用while循环来表示了。

    for循环通常用在循环次数确定的时候,而while循环用在次数不确定时
    比如下面这个计算字符的函数就不能用for:

    int strcount( char *sz )
    {
     int count = 0;
      while ( *(sz++) )
        count++;
     return count;
    }

    无明显区别
    如果知道明显的区域界限,一般用for

    如果不知道界限,但可以判断条件是真与否,一般用while 如
    while(XXX.next())
    {
    }
    这个时候并不知道这个对象有好多,但可以返回是true,还是false

    1. 两种循环在构造死循环时的区别
    用while构造死循环时,一般会使用while(TRUE)来构造死循环;而用for来构造死循环时,则使用for(;;)来构造死循环。这两个死循环的区别是:while循环里的条件被看成表达式,因此,当用while构造死循环时,里面的TRUE实际上被看成永远为真的表达式,这种情况容易产生混淆,有些工具软件如PC-Lint就会认为出错了,因此构造死循环时,最好使用for(;;)来进行。
    2. 两种循环在普通循环时的区别
    对一个数组进行循环时,一般来说,如果每轮循环都是在循环处理完后才讲循环变量增加的话,使用for循环比较方便;如果循环处理的过程中就要将循环变量增加时,则使用while循环比较方便;还有在使用for循环语句时,如果里面的循环条件很长,可以考虑用while循环进行替代,使代码的排版格式好看一些。

     

    对于需要无条件进行循环的语句,优先采用for语句.

    ;而在进行变量循环时,for语句在初始化变量后有一条跳转操作,而while没有,这个应该跟vc编译器有关

    ;可以说应该在效率上没有多大差别,需要进一步进行大数据量操作

    ;同时,我对于各种语句操作的顺序是否有时间关联不是很清楚.

    2. 大批量数据操作实验 -- 自加1000w次,然后再自减1000w次,看执行时间

    实践发现对于千万级数据量,执行时间并没有差异

     

    总结:

       主要考虑程序的可读性和美观,对于效率问题,可以不用考虑差异性.

       所以我比较推崇,在循环次数确定时,用for,不确定时,用while~~

     

    这是在网上摘录的一些关于for和while的区别,大家可以发表一下自己的看法,最好是有依据的。(欢迎大家讨论)

    展开全文
  • while for

    2014-10-10 10:08:22
    下列关于for循环和while循环的说法中哪个是正确的?( ) A.while循环能实现的操作,for循环也都能实现  B.while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果  C.两种循环任何时候都可替换...
    下列关于for循环和while循环的说法中哪个是正确的?( )   
    A.while循环能实现的操作,for循环也都能实现     
    B.while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果     
    C.两种循环任何时候都可替换     
    D.两种循环结构中都必须有循环体,循环体不能为空

     

    我的理解是:
    当知道执行次数的时候一般用for
    当条件循环时一般用while
    例如:
    for i=0,i<n,i++
    {}
    这里n是已知数,可以循环n次

    while i<n
    {}
    不知道要循环多少次,但当i>=n的时候停止循环

    do while循环总会执行一次,for不一定,

    一般来说,for对于初学使用的要多于while,但其实while的功能要大于for,以后你慢慢会体会到的,所有的for循环都可以用while来表示,但就不是所有的while循环都可以用for循环来表示!

    while的用途有时候比for要巧
    因为while有do...while这个变体,无条件执行一次循环体后再判断是否达到或超过循环终止条件
    但是具体用什么还是看个人程序设计风格了
    举些例子:
    如果是非常有规律的循环,比如简单穷举那么我们用for
    如果用于处理复杂的循环,不适用单循环变量稳定递增进行的循环,那么一般我们用while

    其实也可以这样说,for循环都是用来表示那些显而易见的循环结构,就是使用它表示很容易就可以看出循环的头和尾,所以对于初学的程序来说这样。而while是用来表示一些相对复杂一点的循环结构,一般的while都不太容易看出循环的头和尾,有很多复杂的循环并不能用for循环来表示时,就只能用while循环来表示了。

    for循环通常用在循环次数确定的时候,而while循环用在次数不确定时
    比如下面这个计算字符的函数就不能用for:

    int strcount( char *sz )
    {
     int count = 0;
      while ( *(sz++) )
        count++;
     return count;
    }

    无明显区别
    如果知道明显的区域界限,一般用for

    如果不知道界限,但可以判断条件是真与否,一般用while 如 
    while(XXX.next())
    {
    }
    这个时候并不知道这个对象有好多,但可以返回是true,还是false

    1. 两种循环在构造死循环时的区别
    用while构造死循环时,一般会使用while(TRUE)来构造死循环;而用for来构造死循环时,则使用for(;;)来构造死循环。这两个死循环的区别是:while循环里的条件被看成表达式,因此,当用while构造死循环时,里面的TRUE实际上被看成永远为真的表达式,这种情况容易产生混淆,有些工具软件如PC-Lint就会认为出错了,因此构造死循环时,最好使用for(;;)来进行。
    2. 两种循环在普通循环时的区别
    对一个数组进行循环时,一般来说,如果每轮循环都是在循环处理完后才讲循环变量增加的话,使用for循环比较方便;如果循环处理的过程中就要将循环变量增加时,则使用while循环比较方便;还有在使用for循环语句时,如果里面的循环条件很长,可以考虑用while循环进行替代,使代码的排版格式好看一些。

     

    对于需要无条件进行循环的语句,优先采用for语句.

    ;而在进行变量循环时,for语句在初始化变量后有一条跳转操作,而while没有,这个应该跟vc编译器有关

    ;可以说应该在效率上没有多大差别,需要进一步进行大数据量操作

    ;同时,我对于各种语句操作的顺序是否有时间关联不是很清楚.

    2. 大批量数据操作实验 -- 自加1000w次,然后再自减1000w次,看执行时间

    实践发现对于千万级数据量,执行时间并没有差异

     

    总结:

       主要考虑程序的可读性和美观,对于效率问题,可以不用考虑差异性.

       所以我比较推崇,在循环次数确定时,用for,不确定时,用while~~

     

    这是在网上摘录的一些关于for和while的区别,大家可以发表一下自己的看法,最好是有依据的。(欢迎大家讨论)

    展开全文
  • 笔记30 笨办法学python练习38之二,列表的转换与增添,用for替换while 重温了for和while这两个函数的意义之后,开始做练习ex38.py。代码的录入执行都很顺利,对于这个代码的涵义好像比以前对于代码的理解要深入...

    笔记30 笨办法学python练习38之二,列表的转换与增添,用for替换while

    重温了for和while这两个函数的意义之后,开始做练习ex38.py。代码的录入和执行都很顺利,对于这个代码的涵义好像比以前对于代码的理解要深入一些了。顺利执行之后,对于代码的差不多每一行都做了注释,注释做好后形成的ex38.4.py再执行,依然是很顺利。我将在给出注释和执行之后,按照巩固练习的要求,再做一个ex38.5,用for取代while,并相应更改一些列表的数字来形成ex38.5.py,再予以执行,从中理解for与while的差异,以及列表的有关操作的涵义。
    练习ex38.4py

    在这里插入代码片#一个称十样东西的变量,赋值的只有一个项目的字符串
    ten_things = "Apples Oranges Crows Telephone Light Sugar"
    #所以,需要给ten字符串分离成若干项目,以和变量名相称,打印这个想法
    print("Wait there are not 10 things in that list, Let's fix that.")
    #现在另有变量stuff,它可以把ten变量分离,用函数split
    stuff = ten_things.split(' ')
    #又有一个变量more_stuff是一个8位列表
    more_stuff = ["Day", "Night", "Song", "Frisbee",
                   "Corn", "Banana", "Girl", "Boy"]
    #我们有三个变量均赋值,现在看对这些变量的值做出什么样的改变
    #对于不等于10长度的,变量stuff做while循环
    while len(stuff) != 10:
        next_one = more_stuff.pop() #在morestuff中拿走一些元素
        print("Adding: ", next_one) #这些拿走的元素加到next_one
        stuff.append(next_one)
        print(f"there are {len(stuff)} items now.")
    #在stuff中加到10项了,做成了一个十项的列表了
    print("There we go: ", stuff)
    
    print("Let's do some things with stuff.")
    #打印列表的第二个元素[1]oranges
    print(stuff[1])
    #打印列表的最后一个元素[-1]corn
    print(stuff[-1]) # whoa! fancy
    print(stuff.pop()) #把corn这个元素拿走
    # 把stuff的十个元素去掉引号' '展开
    print(' '.join(stuff)) #what? cool
    # 在列表的排列4后加上#,使得3与5之间有星号#
    print('#'.join(stuff[3:5])) #super stellar
    
    

    练习ex38.4.py的执行结果`在这里插入代码片PS
    PS C:\Users\lenovo\1pythonw> python ex38.4.py
    Wait there are not 10 things in that list, Let’s fix that.
    Adding: Boy
    there are 7 items now.
    Adding: Girl
    there are 8 items now.
    Adding: Banana
    there are 9 items now.
    Adding: Corn
    there are 10 items now.
    There we go: [‘Apples’, ‘Oranges’, ‘Crows’, ‘Telephone’, ‘Light’, ‘Sugar’, ‘Boy’, ‘Girl’, ‘Banana’, ‘Corn’]
    Let’s do some things with stuff.
    Oranges
    Corn
    Corn
    Apples Oranges Crows Telephone Light Sugar Boy Girl Banana
    Telephone#Light
    PS C:\Users\lenovo\1pythonw>

    做成ex38.5.py后发现,while后带的字码格式与for后带的字码格式有些区别。For常后带某物in某空间,while则是一个等号和等值号的语句,或者是真假的关键字。此外,后带的print的缩进也有区别。执行结果似乎还没有看到区别。
    练习38的扩展ex38.5.py

    在这里插入代码片#一个称十样东西的变量,赋值的只有一个项目的字符串
    six_things = "Apples Oranges Crows Telephone Light Sugar"
    #所以,需要给ten字符串分离成若干项目,以和变量名相称,打印这个想法
    print("Wait there are not 8 things in that list, Let's fix that.")
    #现在另有变量stuff,它可以把ten变量分离,用函数split
    stuff = six_things.split(' ')
    #又有一个变量more_stuff是一个8位列表
    name_stuff = ["zhao", "qian", "sun", "li",
                   "zhou", "wu", "zheng", "wang"]
    #我们有三个变量均赋值,现在看对这些变量的值做出什么样的改变
    #对于不等于10长度的,变量stuff做while循环
    for name in name_stuff:
        next_one = name_stuff.pop() #在morestuff中拿走一些元素
        print("Adding: ", next_one) #这些拿走的元素加到next_one
        stuff.append(next_one)
        print(f"there are {len(stuff)} items now.")
    #在stuff中加到10项了,做成了一个十项的列表了
    print("There we go: ", stuff)
    
    print("Let's do some things with stuff.")
    #打印列表的第二个元素[1]oranges
    print(stuff[1])
    #打印列表的最后一个元素[-1]corn
    print(stuff[-1]) # whoa! fancy
    print(stuff.pop()) #把corn这个元素拿走
    # 把stuff的十个元素去掉引号' '展开
    print(' '.join(stuff)) #what? cool
    # 在列表的排列4后加上#,使得3与5之间有星号#
    print('&'.join(stuff[4:6])) #super stellar
    
    

    练习ex38.5.py的执行

    在这里插入代码片PS C:\Users\lenovo\1pythonw> python ex38.5.py
    Wait there are not 8 things in that list, Let's fix that.
    Adding:  wang
    there are 7 items now.
    Adding:  zheng
    there are 8 items now.
    Adding:  wu
    there are 9 items now.
    Adding:  zhou
    there are 10 items now.
    There we go:  ['Apples', 'Oranges', 'Crows', 'Telephone', 'Light',
    Let's do some things with stuff.
    Oranges
    zhou
    zhou
    Apples Oranges Crows Telephone Light Sugar wang zheng wu
    Light&Sugar
    PS C:\Users\lenovo\1pythonw> python ex38.4.py
    

    这个练习,对于巩固练习中提到的调用函数的意思有了更进一步的理解。如教材所说,在more_stuff列表中调用函数pop,这其实就是一个python字符串的对译,它在python中可以翻译为more_stuff.pop()。这个翻译出来的东西,在python中还可以另外表示为另一个指令符:pop(more_stuff),翻译为中文大概是,参数为more_stuff的函数pop。
    Python中的class有和自然语言相通之处,但差别可能很大,也许再阅读完成几个练习,对于class,对于面向对象编程object oriented programming,还有一些相关的python语言中的字符,就会有更多的认知。

    展开全文
  • while循环和for循环,可以相互替换,范围和效能一样,理解事物的逻辑不一样 while循环用于条件不确定的逻辑 for循环用于计算次数的逻辑 for循环 快捷写法,按两下TAB i++:for+按两下TAB i--:forr+按...
  • for while的区别

    万次阅读 2012-08-25 13:34:29
    下列关于for循环和while循环的说法中哪个是正确的?( ) A.while循环能实现的操作,for循环也都能实现  B.while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果  C.两种循环任何时候都可替换...
  • 一、循环体 while 测试条件; do 语句1 语句2 ... done while [ $Count -le 5 ]; do let Count++ done 条件满足时就循环,直到条件不再满足,则退出循环; for如何退出循环?遍历列表中的元素完成; w...
  • (2)在while循环do while循环中,只在while后面的括号内指定循环条件,因此为了使循环能正常结束,应该在循环中包含使循环趋于结束的语句(如 i++)。for循环可以在表达式3中包含使循环趋于结束的语句,甚至可以...
  • <p>This returns a single row as an array and I can manipulate this as I want, for example: <pre><code>if ($Rows['Reoccour'] == 1) { $NextDate = date('o-m-d', strtotime($Rows['Date'] . " +" . $Rows...
  • for和while等价替换 -------------------------- int i = 1; for (i; i sum = sum + 1; } -------------------------- int i = 1; while(i sum = sum + 1; i++; } -------------------------- 从键盘...
  • JavaScript | for循环和while循环的区别

    千次阅读 2018-07-04 16:19:14
    写在前面:for循环和while循环语法规则略有不同,两种方法可以替换使用,但是在部分问题上各有优势。主要代码://猜数字游戏,谜底:50; //用户可以猜5次 ,若用户猜的小于50,提示:猜小了;否则提示猜大了;猜中了...
  • for和while等价替换 -------------------------- int i = 1; for (i; i sum = sum + 1; } -------------------------- int i = 1; while(i sum = sum + 1; i++; } -------------------------- 从键盘...
  • 问题描述 最近在执行Linux脚本的时候遇到如下的报错...接着看第31行,结果发现该脚本只有30行,于是怀疑问题出在脚本最后一行,是不是末尾有异常符号,开始对最后一行进行删除、替换和注释等操作,一通操作之后问...
  • 下列关于for循环和while循环的说法中那个是正确的?() A、while循环能实现的操作,for循环也都能实现 B、while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果 C、两种循环任何时候都可替换 D、两种...
  • 前言该篇文章主要会涉及如下几个问题:1、if elseswitch case在日常开发中该如何抉择?两者相比谁的效率会高些?2、如何基于赫夫曼树结构减少if else分支判断次数?3、如何巧妙的应用do...while(0)改善代码结构?4...
  • 问题在工作中遇到数组闪退的问题:crash信息:'NSGenericException', reason: '*** Collection was mutated while being enumerated.'*** First throw call stack:中文的意思就是,在数组被枚举时发生突变,o(╥﹏╥...
  • 一、for和while等价替换int i = 1; for (i; i; i++){ sum = sum + 1; }int i = 1; while(i){ sum = sum + 1; i++; }二、从键盘输入一个数字,如果该数字是回文数,则返回yes,否则返回no回文数:正着写倒着写一样...
  • ruby 的while

    2017-11-15 19:07:00
    while 是一个非常强大的语句,很大程度上可以替换其他判断循环。 1、while 代替if 1 2 3 while5>3 puts"ok" end 2、while 代替 for 循环 1 2 3 4 5 6 7 sum=0 i=1 whilei<=5 ...
  • 替换节点XMLDOMPHP

    2016-07-02 11:17:24
    <p>I have a problem to replace an XML node while entering data into a form My code below : <pre><code>$xml = new DOMDocument("1.0", "ISO-8859-1"); $xml->preserveWhiteSpace = FALSE; $xml->...
  • shell(十一)while循环

    2019-09-03 15:43:13
    while循环工作中使用的不多,一般是守护进程程序或始终循环执行场景,其它循环计算,都会用for替换whilewhile循环的类型 当型(while)直到(until)型循环语句 1、while条件句 while 条件 do 指令 … ...
  • <p>I have functions to replace these blocks accordingly, and I realize a foreach or while function will be the best way to deal with it, but unfortunately, replacing one <code>{{...}}</code> may ...
  • §12 循环101-while循环

    2015-01-28 10:32:00
    While和for具有一定的可替换性。语法如下: whiletestbody continue终止当次循环,break退出整个循环。 注意while之后要用大括号来括住,用引号的话会导致只进行一次替换,导致无限循环。 ...
  • bat文件交互式命令While a multitude of methods exist to search for and replace words in a single file, what do you do when you’ve got a string to update across multiple unrelated files, all with ...

空空如也

空空如也

1 2 3 4 5 ... 14
收藏数 263
精华内容 105
关键字:

while和for替换