C语言里if语句可以嵌套for循环么

Python022

C语言里if语句可以嵌套for循环么,第1张

C语言里if语句里是可以嵌套for循环的(if语句里可以放C语言里的任意的执行语句)。

举例说:

char yn

int i

printf("需要打印1到10之间的所有奇数吗(Y/N)?\n")

scanf("%c",&yn)

if(yn=='Y'||yn=='y')

{

for(i=1i<10i+=2)

printf("%d ",i)

printf("\n")

}

else

printf("那就不打印了\n")

两种方法,一种是重新赋值,程序段如下

for(i=0i<Maxii++)

    for(j=0j<Maxjj++)

        if(true)

        {

            i=-1

            break       //从此处跳出本层循环,由于赋值i=-1,执行完

                         //break语句之后,执行外层循环i++指令,使得

                         //i=0外层循环相当于重新开始,j的值无需处理,

                         //因每次进入内层循环,j值均会被for语句赋初值0

         }

第二种方法是无条件转移指令:

sign: for(i=0i<Maxii++)

         for(j=0j<Maxjj++)

            f(true)    goto sign//条件为真跳转至sign语句

一般情况下,应当避免使用goto无条件跳转指令,因为很多人认为程序可读性会因为goto的引入而变差,但是在不少情况下goto可以使得程序代码简单,效率提高,个人认为适当使用goto指令并无不可,楼主可自己作出选择。

for(.........)

{

if(.......}

.........

else

.........

}

for

语句是循环,if是循环里的语句,每执行一次循环,都要有一个if语句的判断,成立则执行if下不得语句,不成立则执行else

下的语句,执行完循环体里的语句后,转而下一次循环,指导循环结束。