C语言子函数问题。。
我想做一个从double转换到int的子函数,该怎么写??比如:xxxxabc(doublea)/*问:xxxx应该填什么*/{intb=123;a=a*1000;b=(...
我想做一个从double转换到int的子函数,该怎么写??比如:
xxxx abc(double a) /*问:xxxx应该填什么*/
{
int b=123;
a=a*1000;
b=(int)a;
return b; /*我搞不明白,这里使用return还是别的。*/
}
main()
{
int a;
scanf("lf",&a);
abc(a);
printf("%d",a);
}
请大神修改一下。。。
写错了,main里面那个int改成double 展开
xxxx abc(double a) /*问:xxxx应该填什么*/
{
int b=123;
a=a*1000;
b=(int)a;
return b; /*我搞不明白,这里使用return还是别的。*/
}
main()
{
int a;
scanf("lf",&a);
abc(a);
printf("%d",a);
}
请大神修改一下。。。
写错了,main里面那个int改成double 展开
4个回答
展开全部
int abc(double a) /* 返回值类型填int */
{
int b;
a=a*1000;
b=(int)a;
return b; /*返回值类型,与前面定义要一致*/
}
main()
{
double a; //a需要是double才可以
scanf("lf",&a); //读入一个double数据
printf("%d", abc(a) ); //调用函数,直接输出结果。
}
{
int b;
a=a*1000;
b=(int)a;
return b; /*返回值类型,与前面定义要一致*/
}
main()
{
double a; //a需要是double才可以
scanf("lf",&a); //读入一个double数据
printf("%d", abc(a) ); //调用函数,直接输出结果。
}
更多追问追答
追问
请问,如果我要返回double ,应该怎么样??
还有返回两个值能不能return a,b; ?
追答
double abc(double a) /* 返回值类型填 double */
{
double b; //------------
b=a*1000;
return b; /*返回值类型,与前面定义要一致*/
}
二、返回值只能有一个!无法返回多个
展开全部
xxxx abc(double a) 这里的xxxx是函数的返回值 你要把double转换成Int 那这里返回的肯定是Int
函数返回值是int 那么必须返回一个int类型的值
int abc(double a)
{
return 整数;
}
你在主函数中掉用 abc(a) 把输入的a传递过去了 此时传过去的是a的值
printf("%d",a) ; 此时a的值没变 只是用整型格式输出
要想输出 abc函数的返回值 得用一下方法
printf("%d",abc(a));
函数返回值是int 那么必须返回一个int类型的值
int abc(double a)
{
return 整数;
}
你在主函数中掉用 abc(a) 把输入的a传递过去了 此时传过去的是a的值
printf("%d",a) ; 此时a的值没变 只是用整型格式输出
要想输出 abc函数的返回值 得用一下方法
printf("%d",abc(a));
追问
那么说这样也行?
int b;
b=abc(a);
?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
int abc(double c) /*问:xxxx应该填什么*/
{
int b;
//a=a*1000; //为什么要乘以1000?
b=(int)c;
return b; /*我搞不明白,这里使用return还是别的。*/
}
void main()
{
double a;
int out;
scanf("%lf",&a);
out = abc(a); //a不是全局的,所以要返回
printf("%d",out);
}
int abc(double c) /*问:xxxx应该填什么*/
{
int b;
//a=a*1000; //为什么要乘以1000?
b=(int)c;
return b; /*我搞不明白,这里使用return还是别的。*/
}
void main()
{
double a;
int out;
scanf("%lf",&a);
out = abc(a); //a不是全局的,所以要返回
printf("%d",out);
}
追问
我本来想弄个计算有多少个小数,然后按照多少个小数乘以多少倍得出整数的,可我暂时做不出来,所以才*1000
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
int abc(double a) /*问:xxxx应该填什么? 返回什么填什么,这里是将double转换为int*/
{
int b=123;
a=a*1000;
b=(int)a;
return b; /*我搞不明白,这里使用return还是别的。*/
}
void main()
{
double a;
scanf("%lf",&a);//这里加%号
printf("%d",abc(a));
}
int abc(double a) /*问:xxxx应该填什么? 返回什么填什么,这里是将double转换为int*/
{
int b=123;
a=a*1000;
b=(int)a;
return b; /*我搞不明白,这里使用return还是别的。*/
}
void main()
{
double a;
scanf("%lf",&a);//这里加%号
printf("%d",abc(a));
}
更多追问追答
追问
忘了
追答
嗯嗯,望采纳!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询