在 C 中,如何从用户定义的函数中获取一个值,然后在另一个用户定义的函数中将其打印出来? [关闭]
Posted
技术标签:
【中文标题】在 C 中,如何从用户定义的函数中获取一个值,然后在另一个用户定义的函数中将其打印出来? [关闭]【英文标题】:In C, how would one take a value from a user defined function, and then print it back out in another user defined function? [closed] 【发布时间】:2016-02-18 17:24:17 【问题描述】:我对编程很陌生。我的问题与我必须创建一个计算三个整数平均值的函数有关。
这部分对我来说很简单,但我还必须创建另一个函数来打印出平均值,比如“平均值为 %d”之类的东西。我只是不知道如何将第一个函数的平均值转换为第二个函数。
【问题讨论】:
请添加您的代码 一组数字的平均值是这些项目的总和除以集合中的项目数。既然你有一组固定大小,那就是(a + b + c) / 3
。
【参考方案1】:
您好,第一个函数可以使用返回类型返回平均值,例如 double average(int a1,int a2,int a3) return (a1+a2+a3)/3.0;
,在您的第二个函数中,您可以:
1.调用平均函数并存储或打印返回值;
2. 将平均值作为函数参数传递。
3. 使用平均值作为全局变量(在这种情况下平均值函数不会返回值)
【讨论】:
【参考方案2】:听起来您指的是从函数中“返回”数据。
这是一个例子:
int addNumbers(int first, int second)
int third;
third = first + second;
return third;
这将允许您调用 addNumbers(4, 8),并让它返回 12。
printf("The product of 4 and 8 is %d", addNumbers(4,8));
我相信这就是你要问的。
【讨论】:
【参考方案3】:你可以这样做
float calculateAverage(int a,int b, int c);
void showAverage(float avg);
int main()
int a,b,c;
float avg;
printf("\nEnter value for A: ");
scanf( "%i", &a);
printf("\nEnter value for B: ");
scanf( "%i", &b);
printf("\nEnter value for C: ");
scanf( "%i", &c);
// calculate the average
avg = calculateAverage(a,b,c);
showAverage(avg);
float calculateAverage(int a,int b, int c)
return (a+b+c)/3.0;
void showAverage(float avg)
printf("\nThe average is %f", avg); // &avg is the address we just print we use the value and not the address so don't use &avg but avg
【讨论】:
【参考方案4】:我会做这样的事情......自从我使用 C 以来已经有很长时间了,但这可能会让你开始......
int main()
int a,b,c;
printf("\nEnter value for A: ");
scanf( "%i", &a);
printf("\nEnter value for B: ");
scanf( "%i", &b);
printf("\nEnter value for C: ");
scanf( "%i", &c);
// now send those to your function to calculate the average and print the result
showAverage(a,b,c);
function showAverage(int a, int b, int c)
float avg = (a+b+c) / 3;
printf("\nThe average is %f", &avg);
【讨论】:
'void showAverage(int a, int b, int c)' and float avg = (a+b+c) / 3.0; 非常感谢您的帮助。我认为这是一个很好的方法,我可能必须像这样提交它,但在我的作业中,我需要一个单独的函数来计算读取值后的平均值,然后是另一个专门用于显示平均值的函数。我意识到这有点不合逻辑,但这是他给我的任务。谢谢 还有一个跳过警告的演员(float)(a+b+c) / 3;
以上是关于在 C 中,如何从用户定义的函数中获取一个值,然后在另一个用户定义的函数中将其打印出来? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何从自定义用户控件 WPF、C# 中的枚举自定义属性中获取值?