C语言问题!!输入一个整数,将它逆序输出。。例如reverse(123)的返回值是321
#include<stdio.h>voidmain(){longn;longreverse(longnumber);printf("Enteraninteger:");s...
#include<stdio.h>
void main()
{
long n;
long reverse(long number);
printf("Enter an integer:");
scanf("%ld",&n);
printf("After reversed:%ld\n",_____(1)______);
}
long reverse(long number)
{
int flag;
___(2)_____;
flag=number<0 ? -1: 1;
if(__(3)____) number=-number;
while(number!=0){
res=_____(4)______;
number/=10;
}
return flag*res;
}
(1)A.reverse() B.n C.reverse(n) D.reverse
(2)A.res=0 B.long res C.long res=0 D.res
(3)A.number>0 B.number<0 C.number!=0 D.number==0
(4)A.number%10 B.res*10+number%10 C.number/10 D.res*10+number/10
选哪个呢??每步各是什么意思吗?要详细解答啊~非常感谢啦! 展开
void main()
{
long n;
long reverse(long number);
printf("Enter an integer:");
scanf("%ld",&n);
printf("After reversed:%ld\n",_____(1)______);
}
long reverse(long number)
{
int flag;
___(2)_____;
flag=number<0 ? -1: 1;
if(__(3)____) number=-number;
while(number!=0){
res=_____(4)______;
number/=10;
}
return flag*res;
}
(1)A.reverse() B.n C.reverse(n) D.reverse
(2)A.res=0 B.long res C.long res=0 D.res
(3)A.number>0 B.number<0 C.number!=0 D.number==0
(4)A.number%10 B.res*10+number%10 C.number/10 D.res*10+number/10
选哪个呢??每步各是什么意思吗?要详细解答啊~非常感谢啦! 展开
3个回答
展开全部
1、C 表示将输入的整数n传给reverse函数
2、C 表示定义一个long型变量res,并初始化
3、B 表示主函数(main)穿进来的值,如果为负数,则取反
4、B 倒置传入的参数number,res*10表示将原来res乘以10,再加上number%10;比喻说你传的是123,而res的初始值是0,123%10=3,那么res=3,第二次循环:由于123/10=12,所以res*10+number%10=30+2=32,第三次循环:12/10=1,所以res=res*10+number%10=320+1=321,第四次循环,number/10=0,结束循环,所以最后的res就是将传进来的值倒置之后的值。
这里给你分析了一下倒置的原理,望采纳!
2、C 表示定义一个long型变量res,并初始化
3、B 表示主函数(main)穿进来的值,如果为负数,则取反
4、B 倒置传入的参数number,res*10表示将原来res乘以10,再加上number%10;比喻说你传的是123,而res的初始值是0,123%10=3,那么res=3,第二次循环:由于123/10=12,所以res*10+number%10=30+2=32,第三次循环:12/10=1,所以res=res*10+number%10=320+1=321,第四次循环,number/10=0,结束循环,所以最后的res就是将传进来的值倒置之后的值。
这里给你分析了一下倒置的原理,望采纳!
金山毒霸
2024-10-31 广告
2024-10-31 广告
大部分系统错误,是因为某些DLL文件丢失造成的,比如未安装DirectX9或DirectX 9.0组件已损坏、缺少Visual C ++库、未安装.net库。解决方法如下:一、 手动解决方法1、先确定电脑操作系统是多少位的,现在的电脑一般都...
点击进入详情页
本回答由金山毒霸提供
展开全部
ccbb
(1)C 执行将数字变为逆序的函数
(2)C 声明变量res保存新数字的绝对值,res要初始化为0 。考虑到number为0的情况
(3)B 最后返回的是flag*res。flag已经保存了number的符号,所以当number小于0时,应该让他为正数
(4)B 每次循环的时候number%10得到的结果是number的最后一位数。number的最后一位数就是新数字的第一位数,所以还要加上res*10
(1)C 执行将数字变为逆序的函数
(2)C 声明变量res保存新数字的绝对值,res要初始化为0 。考虑到number为0的情况
(3)B 最后返回的是flag*res。flag已经保存了number的符号,所以当number小于0时,应该让他为正数
(4)B 每次循环的时候number%10得到的结果是number的最后一位数。number的最后一位数就是新数字的第一位数,所以还要加上res*10
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
C C B B
(1)要调用reverse(n),获得返回值
(2)声明一个long变量res,作为倒置后的接收变量
(3)判断number是否大于0,如果小于0,取其相反数,得正
(4)倒置传入的参数number,放在res
(1)要调用reverse(n),获得返回值
(2)声明一个long变量res,作为倒置后的接收变量
(3)判断number是否大于0,如果小于0,取其相反数,得正
(4)倒置传入的参数number,放在res
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询