学习C语言,尝试编写一个程序,输出输入数字的立方体和平方的和。
#include <stdio.h>
main()
{
int a;
scanf("%d",a);
printf("%d",cube(a)+sqr(a));
}
cube(int x)
{
return(x*x*x);
}
sqr(int arg)
{
return(arg*arg);
}当我运行这个程序时,它在我输入一个数字后输出一些看似随机的数字字符串。有没有办法在不改变返回赋值变量的用法的情况下解决这个问题?
发布于 2013-07-23 18:02:42
scanf需要一个指针:
scanf("%d",&a);而不是
scanf("%d",a);发布于 2013-07-23 18:02:18
int a;
scanf("%d",a);
^必须为&a。scanf的d转换说明符需要指向int参数的指针。
发布于 2013-07-23 18:00:59
你需要为你的函数定义一个返回类型!
#include <stdio.h>
int main()
{
int a;
scanf("%d",a);
printf("%d",cube(a)+sqr(a));
return 0;
}
int cube(int x)
{
return(x*x*x);
}
int sqr(int arg)
{
return(arg*arg);
}https://stackoverflow.com/questions/17807022
复制相似问题