#include<stdio.h>
void main()
{
int c,k,m;
printf("输入 长的值,宽的值");
scanf("%d,%d", &c,&k);
m = product(c,k);
printf("矩形面积是:%d\n",m);
getchar();
return m;
}
int product(int c, int k)
{
int m;
m = c*k;
getchar();
return m;
}
运行是可以运行可是输入任意数字得的值都是0。如何解。
int main(int argc, char *argv[]) { int c = 0, k = 0, m = 0; printf("输入 长的值,宽的值"); scanf("%d,%d", &c, &k); m = product(c, k); printf("矩形面积是:%d\n", m); system("pause"); return 0; } int product(int c, int k) { int m; m = c * k; return m; }
大爷你return 0啊.
那咋办。。。。不是这个吗
product 里面那个getchar();是什么意思
@吴瑞祥: 不写getchar();的话运行完直接就跳走了。。
@窗外雨,夜微寒。: 那也不是在product里面啊.你不是都在main写了..
其实这么多都是扯淡.你在return m上面打断点.然后看c,k的值,再看m的值.
你的product函数直接返回了0呀,应该返回的是m吧
改成m还是得0。。。。。
@窗外雨,夜微寒。: 确定是输入了两个数字吧,中间用空格了吧
@苏幕遮soft: 我用,
你输入的类型是 float
的 ,然而你方法里面接收的参数却是 int
如果你的输入 c 和 k 是有小数点的话,会被直接转成 0 的 。而且%d
有问题
scanf("%f, %f",&c,&k)
#include<stdio.h>
void main()
{
int c,k,m;
printf("输入 长的值,宽的值");
scanf("%d,%d", &c,&k);
m = product(c,k);
printf("矩形面积是:%d\n",m);
getchar();
return m;
}
int product(int c, int k)
{
int m;
m = c/k;
getchar();
return m;
}
现在是这样可使还是得0.。。
@窗外雨,夜微寒。:
你使用
m =c / k
当 c =1 k >1
的结果时就是为 0
@BUTTERAPPLE: 我原来是m=c*k的可是得出的值是0我就想改变一下看看能不能算出值,我下课回去再试试。