#include <stdio.h>
int asd (int x,int y,int z)
{
int sum=x+y+z;
return sum/3;
}
void asdf (int x,int y,int z)
{
printf("不可以算出");
}
int main ()
{
int a,b,c;
a=10;
b=20;
c=30;
printf("asd 的运算结果为",asd(a,b,c));
asdf(a,b,c);
return 0;
}
//看下面程序及注释
#include <stdio.h>
int asd (int x,int y,int z) //这边定义了一个asd的求和函数,但返回了其值的3分之1(‘/’相除取整)
{
int sum=x+y+z;
return sum/3;
}
void asdf (int x,int y,int z) //asdf只是达到一个打印“不可以算出的目的”
{
printf("不可以算出");
}
int main ()
{
int a,b,c;
a=10;
b=20;
c=30;
printf("asd 的运算结果为%d\n",asd(a,b,c)); //这里应加格式占位符%,才能达到对函数asd的正确调用,一般加 换行符/n可以优化输出效果
asdf(a,b,c); //因为调用了函数asdf。所以会打印“不可以算出”
return 0;
倒数第五行代码改为: printf("asd 的运算结果为%d",asd(a,b,c));
%d是输出格式,输出时会用asd(a,b,c)替换的,没有%d的话就会只输出字符串“asd的运算结果为”,
再加上后面调用的asdf(a,b,c)方法必定输出的字符串“不可以算出”,就成了你看到的结果。
修改后的输出结果为“asd的运算结果为20不可以算出”,
这代码还需要改进啊
printf("asd 的运算结果为%d",asd(a,b,c));
printf("asd 的运算结果为",asd(a,b,c));
这句话没有输出的对象