关于c语言子函数的问题?

王朝知道·作者佚名  2012-08-09
窄屏简体版  字體: |||超大  
 
分類: 電腦/網絡 >> 程序設計 >> 其他編程語言
 
問題描述:

题目是编一个程序,求两数的和,差,积,商。并分别用四个子函数运算,在主函数中调用。我写的程序原代码如下:

include <stdio.h>

#include <dos.h>

main()

{

float jia(float,float);

float jian(float,float);

float cheng(float,float);

float chu(float,float);

float a,b,c;

printf("Input a and b:\n ");

scanf("%f %f,&a,&b\n");

c=jia (a,b);

printf("%f+%f=%f\n",a,b,c);

c=jian(a,b);

printf("%f-%f=%f\n",a,b,c);

c=cheng(a,b);

printf("%f*5f=%f",a,b,c);

if (b!=0)

{c=chu(a,b);

printf("%f/%f=%f",a,b,c);

}

else printf("The b is zero!");

}

float jia(float x,float y)

{

float h;

h=x+y;

return(h);

}

float jian(float xa,float ya)

{

float ha;

ha=xa-ya;

return (ha);

}

float cheng(float xb,float yb)

{

float hb;

hb=xb*yb;

return (hb);

}

float chu(float xc,float yc)

{

float hc;

hc=xc/yc;

return (hc);

}

编译时出现警告提示:a,b可以在定义以前被main()调用。

这是什么原因啊,哪里不对了?

參考答案:

#include <stdio.h>

#include <dos.h>

//main()

void main() //我的编译器需要用void

{

float jia(float,float);

float jian(float,float);

float cheng(float,float);

float chu(float,float);

float a,b,c;

printf("Input a and b:\n ");

//scanf("%f %f,&a,&b\n");

scanf("%f %f",&a,&b);//格式!注意""的位置;scanf中不能有\n吧?

c=jia (a,b);

printf("%f+%f=%f\n",a,b,c);

c=jian(a,b);

printf("%f-%f=%f\n",a,b,c);

c=cheng(a,b);

//printf("%f*5f=%f",a,b,c);

printf("%f*%f=%f\n",a,b,c);//“5”-〉“%”;再来个换行吧

//if (b!=0) {c=chu(a,b);

if (b!=0) {c=chu(a,b);//";"用半角

printf("%f/%f=%f",a,b,c);}

else printf("The b is zero!");

}

float jia(float x,float y)

{

float h;

h=x+y;

return(h);

}

float jian(float xa,float ya)

{

float ha;

ha=xa-ya;

return (ha);

}

float cheng(float xb,float yb)

{

float hb;

hb=xb*yb;

return (hb);

}

float chu(float xc,float yc)

{

float hc;

hc=xc/yc;

return (hc);

}

//你说我容易吗?

小贴士:① 若网友所发内容与教科书相悖,请以教科书为准;② 若网友所发内容与科学常识、官方权威机构相悖,请以后者为准;③ 若网友所发内容不正确或者违背公序良俗,右下举报/纠错。
 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航