首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

标号语句倒底是如何执行的

2012-06-08 
标号语句倒底是怎么执行的?#includestdio.h#includemath.hint isss(int a){int m2for(msqrt(a)m

标号语句倒底是怎么执行的?
#include<stdio.h>
#include<math.h>
int isss(int a)
{
int m=2;
for(;m<=sqrt(a);m++)
{
if(a%m==0)
{
goto l1;
}
}
  l1:return 0; //这一句写在这儿就错了,求原因?为什么此时函数返回值总是0,下面一句不执行了吗?

  return 1;
 // l1: return 0; //这儿为什么又行。
}
void main()
{
int flag;
for(int i=5;i<1000;i++)
{
flag=isss(i);
if(flag==1)
{
printf("%d\t",i);
}
}
}


[解决办法]
如果你想指定它跳到ll,如果不指定就返回1的话,就把ll语句放在return 1的下面。因为当你的for循环结束后就执行下面的语句,就是ll标签那句了。所以你的程序只能返回0.
[解决办法]
return 的作用就是让函数返回,既然返回了下面还怎么执行?

热点排行