
谁能帮帮我啊?这个题目怎么做啊?
里面f(s)的值的多少啊??intf(inta){returna%2;}main(){ints[8]={1,3,5,2,4,6},i,d=0;for(i=0;f(s);i...
里面f(s)的值的多少啊??
int f(int a)
{ return a%2; }
main()
{ int s[8]={1,3,5,2,4,6},i,d=0;
for (i=0;f(s);i++) d+=s;
printf("%d\n",d); 展开
int f(int a)
{ return a%2; }
main()
{ int s[8]={1,3,5,2,4,6},i,d=0;
for (i=0;f(s);i++) d+=s;
printf("%d\n",d); 展开
2个回答
展开全部
首先,这个程序是编译不通过的,s是个数组,f需要的是整型的参数,编译会出现类型不匹配的错误。
其次,f的作用正如楼上所言,判断a是否为奇数
再次,可能原来程序的本意是:
for(i = 0; f(s[i]); i++) d+=s[i];
这个结果就是9=1+3+5了。不过没有判断数组越界
其次,f的作用正如楼上所言,判断a是否为奇数
再次,可能原来程序的本意是:
for(i = 0; f(s[i]); i++) d+=s[i];
这个结果就是9=1+3+5了。不过没有判断数组越界
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询