下列程序段的输出结果是:

下列程序段的输出结果是:,第1张

输出结果为:-,0.0,0.0

下面是程序说明:

int

a=1234

float

b=123.456

double

c=12345.54321

上面只是简单的赋值,你应该能理解吧

printf("-,%2.1f,%2.1f",a,b,c)

//输出到屏幕

带%表示输出格式,

%2.1f

表示输出的数据是float类型的,2表示输出的数据一共两位,.1表示输出一位小数

除了%2.1f,其他的都会当作字符串输出,所以"-,就输出-,类

第一个%2.1f将a格式化输出,因为a=1234,一共有四位,所以格式化错误,输出0.0了

第一个%2.1f格式b,同样的原因,输出0.0

c找不到前面的格式化信息,所以就不输出了

如果有问题再联系我

输出结果:13\n

上面的 fun 使用了递归调用,其计算过程如下:

初始参数: x = 3

x = 3,x/2=3/2=1.5,1.5>0,执行 fun(x/2),即 fun(1),递归调用,跳到函数首部(printf("%d",x) 挂起,没有执行)

x = 1,x/2=1/2=0.5,0.5>0,执行 printf("%d",x) ,输出 1

返回上层递归,继续上层挂起的代码:执行 printf("%d",x) ,输出 3


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/7766319.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-09
下一篇2023-04-09

发表评论

登录后才能评论

评论列表(0条)

    保存