2011-06-15 86 views
3

在C,我们怎么能转换一个无限循环有限循环不wrinting中的for循环语法什么....转换为无限循环的,以有限的循环

#include<stdio.h> 
#include<conio.h> 
int main() 
{ 
    int a; 
    a=1; 
    a++; 
    for(; ;) 
    { 
     a<=10; 
     printf("%d",a); 
    } 
    getch(); 
} 
+5

这是什么呢?这是一个家庭作业/面试问题吗? – 2011-06-15 04:57:49

回答

8

你可以使用break声明有。

这将退出循环并在循环体下面开始控制。

0

做一个条件,你想结束循环内.. 否则使用休息退出像语句...

0

试试这个代码:

#include<stdio.h> 
#include<conio.h> 
int main() 
{ 
    int a; 
    for(a=1 ; a<=10; a++) 
    { 
     printf("%d",a); 
    } 
    getch(); 
} 
+0

我不想要2条任何东西在循环语法 – 2011-06-15 04:59:53

+0

好的,那么你应该使用while循环,但无论如何,试试这个for循环:for(;;){printf(“%d”,a);如果(a == 10){break; } a ++; } – 2011-06-15 05:14:14

1

我猜这就是你在这里要求...

编辑

int main() 
{ 
    int a; 
    a=0; 
    for(;;) 
    { 
     if(a>10) 
     break; 
     printf("%d",a); 
     a++ 
    } 
    getch(); 
} 
+0

它没有输出......我想要至少10个输出... – 2011-06-15 05:02:55

+0

现在试试这个代码。我做了一个错误的检查.. – Varshith 2011-06-15 05:11:06

+0

@Sakshi:现在尝试你可以得到输出。 – karthik 2011-06-15 05:16:54

2
#include<stdio.h> 
#include<conio.h> 

int main() 
{ 
    int a = 0; 
    for(;;) 
     if ((++a) <= 10) 
     printf("%d",a); 
     else 
     break; 
    getch(); 
} 
+1

我认为这将执行9次:) – 2011-06-15 05:12:38

+0

更新,谢谢:) – 2011-06-15 05:13:05

0
#include<stdio.h> 
#include<conio.h> 
int main() 
{ 
    int a; 
    a=1; 
    m: 
    for(;;) 
    { 
     if(a<=10) 
     { 
     printf("%d\n",a); 
     a++; 
     } 
     if(a<10) 
     { 
     goto m; 
} 
     } 
     getch(); 
    } 
+0

'break',以及使用其他语言功能,通常比'goto'看得更有利。而且,这里仍然有一个无限循环,因为你的'goto'只是跳回'for'循环之前的一行。 – 2011-06-15 07:25:46