第二個(gè)函數(shù)嘗試用int,為什么能夠得到一樣的結(jié)果?
#include <stdio.h>
/* Jone算出結(jié)果應(yīng)該怎么寫(xiě)函數(shù)? */
?int ?joneResult(int x, int y, int z)
{
? ?int sum = x+y+z;
? ?return sum/3 ?; ? ? ? ?//這里是不是應(yīng)該將sum返回呢?
}
/* Jack沒(méi)有算出結(jié)果只說(shuō)了一句話是不是應(yīng)該用無(wú)返回值函數(shù)? */
?int jackResult(int x, int y, int z)
{
? ? printf("我算不出來(lái)\n");
}
int main()
{
? ? int a, b, c;
? ? a = 10;
? ? b = 20;
? ? c = 30;
? ? //Jone的返回值類(lèi)型是什么?
? ? ? int ? ?jR = joneResult(a, b, c);?
? ? printf("Jone運(yùn)算結(jié)果是:%d\n", jR);
? ? printf("Jack運(yùn)算結(jié)果是:"),jackResult(a,b,c);
? ? return 0;
}
2016-08-25
可能系統(tǒng)自動(dòng)加了return 0.
2016-08-15
#include<stdio.h>
int sayhello()
{
? ?printf("%s\n","hello");
? ?printf("%c\n",'a');
? ?printf("%d\n",44);
? ?printf("%f\n",4.56789);
? ?printf("%lf\n",1.23456789);
? ?return 5;
}
?
int main()
{
? ? int x=sayhello+1();
? ? printf("\n\t%d",x);
? ? return 0;
}
既然輸出的是字符串,為啥函數(shù)的數(shù)據(jù)類(lèi)型是int,還有return 0啥意思,不加有關(guān)系么
1. ? return 0啥意思,不加有關(guān)系么?
return 0是返回值,可以不加,但是系統(tǒng)自動(dòng)加了。也就是說(shuō)你加與不加都要存在。
注意:加上不會(huì)有錯(cuò),但不加可能會(huì)有錯(cuò)(老師是這么說(shuō)的),所以建議按規(guī)范加上。
還有“既然輸出的是字符串,為啥函數(shù)的數(shù)據(jù)類(lèi)型是int,還有return 0啥意思,不加有關(guān)系么”
你這句話最后沒(méi)有問(wèn)號(hào),但是我知道應(yīng)該有,你沒(méi)有加我也明白是問(wèn)句。有問(wèn)號(hào)代表是問(wèn)句,也代表你這句話說(shuō)完了。
2:?
如上:我所寫(xiě)的函數(shù)用到了返回值?int x=sayhello+1(); ?你運(yùn)行一下看看,main()調(diào)用sayhello() 。執(zhí)行了內(nèi)容,內(nèi)容并沒(méi)有加一。
總結(jié):自創(chuàng)函數(shù)被定義為什么類(lèi)型的函數(shù)與內(nèi)容沒(méi)有關(guān)系,int定義的是返回值(return)是什么類(lèi)型 ? ? ? ? ?結(jié)果。(int )return 0; (char)return 'a';
希望對(duì)你有所幫助句號(hào)
2016-08-15
char jackResult(int x, int y, int z)
{
? ? printf("我算不出來(lái)\n");
? ? return 'a';
}
只是定義輸出類(lèi)型,char一樣用。
int型,默認(rèn)輸出return 0;。
printf("%s",?jackResult(a,b,c,)); ?用到返回值,就輸出不了了。
?printf("Jack運(yùn)算結(jié)果是:"),jackResult(a,b,c);你的沒(méi)用到返回值,當(dāng)然輸出。
2016-08-10
我感覺(jué)一樣