搜索

...为什么要加& 而printf(“%d",a+b)里却没有这个& %f %d之类的是怎么...

发布网友 发布时间:2024-10-23 20:41

我来回答

4个回答

热心网友 时间:2024-11-14 03:39

这个符号"&",是取地址运算符,由于scanf是输入函数,所以在输入时,一定要告诉计算机这个东西往哪存储,所以就要把程序员想存储的地址先取出来,然后在往这个地址里输入内容。而printf是标准输出函数,就是在显示器上把要显示的东西给显示出来,所以都是在显示器上显示,不用什么取地址符号。%f表示浮点型,%d表示整型。

热心网友 时间:2024-11-14 03:38

c语言中的函数的参数传递都是值传递,形参的改变并不能改变实参的值。
若想改变 实参的值,可以采用地址传递。

scanf函数将用户的输入的数值存储到实参a中,所以需要传递a的地址。
printf函数是将a+b输出到屏幕上,并不需要改变a+b的值,所以无需传递地址。

热心网友 时间:2024-11-14 03:32

“scanf("%d",&a);”是输入语句,也就是从终端键盘输入数值给变量a,scanf中用到是地址,&a表示的就是变量a的地址,printf中只要指明变量名就行了,所以printf的变量名前不用加&符号,scanf与printf中的%d,%f表示的是操作的变量是整型的和浮点型的,还有%c,%s分别表示操作的变量是字符型和字符串类型

热心网友 时间:2024-11-14 03:36

建议你多了解c语言的输入输出格式,看了你就什么都知道了
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
Top