一个程序当中出现多个return会返回哪个return的值

for(i=0;i<n/2;i++)
{j=n-1-i;
if(a[i]==a[j])
return 1;
else
return 0;
}
比如这个 当n=5时,循环执行了2次, 此时会有两个return,是返回第一个还是最终所得到的呢???
(2)编写一函数,判断一字符串是否为回文。所谓“回文”是指顺读和倒读都一样的字符串,如“deed”和“level”是回文。在主函数中对输入的5个字符串统计其中回文的个数。程序以文件名sy7_8.c存盘。

#include<stdio.h>
int function(char a[]);
main()
{
int i,couter=0;
char a[100];
for(i=0;i<5;i++)
{scanf("%s",a);
if(function(a))
printf("\n第%d个回文\n",++couter);
else
printf("\n不是回文\n");}
}
int function(char a[])
{
int i,j,n;
n=strlen(a);
for(i=0;i<n/2;i++) 这里是第一个和最后一个比较,而后第二个与导数第二个。。。。。。
{j=n-1-i;
if(a[i]==a[j])
return 1;
else
return 0;
}
}

程序功能,计算输入的5个字符串中有几个是对称的。

会返回第一个被执行的return的值,而且,执行了return语句之后就不会再继续执行函数内的其它代码了,控制权会交换给调用它的代码.追问

哦,我又补充了一点,麻烦你看下。。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-03-22
return表示程序返回值并跳出该层函数……这里第一个就结束了。
第2个回答  2013-03-22
根据条件来选择使用那个return的,而且一般只会使用一个就结束了
相似回答