早教吧作业答案频道 -->其他-->
2级问题有以下程序#include<stdio.h>voidf(int*p);main(){inta〔5〕=解释一下为什么这个是传值调用而不是传地址调用???(29)有以下程序#include<stdio.h>voidf(int*
题目详情
2级问题 有以下程序 #include<stdio.h> void f(int *p); main() {int a〔5〕=
解释一下为什么这个是传值调用而不是传地址调用???
(29)有以下程序
#include<stdio.h>
void f(int *p);
main()
{int a〔5〕={1,2,3,4,5},*r=a;
f(r);printf(“%d\n”;*r);
}
void f(int *p)
{p=p+3;printf(“%d,”,*p);}
程序运行后的输出结果是
A)1,4 B)4,4 C)3,1 D)4,1
【答案与解析】D、本题考察函数值传递的问题。f函数参数为指针,容易让人误解为传址的问题,但实际上只是简单传值问题,调用后实参没有改变。故答案选D。(这是完整的)
解释一下为什么这个是传值调用而不是传地址调用???
(29)有以下程序
#include<stdio.h>
void f(int *p);
main()
{int a〔5〕={1,2,3,4,5},*r=a;
f(r);printf(“%d\n”;*r);
}
void f(int *p)
{p=p+3;printf(“%d,”,*p);}
程序运行后的输出结果是
A)1,4 B)4,4 C)3,1 D)4,1
【答案与解析】D、本题考察函数值传递的问题。f函数参数为指针,容易让人误解为传址的问题,但实际上只是简单传值问题,调用后实参没有改变。故答案选D。(这是完整的)
▼优质解答
答案和解析
答案选d
你调用的时候,传到函数f的是指针r的指针值,不是传递指针r的地址,如果要改为传递地址的话,应该这样:
void f(int **p) { *p = *p +3; },main中调用改为:f(&r); 当然,函数f的声明跟着一起改了就是了,这样的输出结果则是b
你调用的时候,传到函数f的是指针r的指针值,不是传递指针r的地址,如果要改为传递地址的话,应该这样:
void f(int **p) { *p = *p +3; },main中调用改为:f(&r); 当然,函数f的声明跟着一起改了就是了,这样的输出结果则是b
看了 2级问题有以下程序#incl...的网友还看了以下:
1.集合A={x/ x=2n+1,n属于Z},B={x/ x=4n±1,n属于Z},则A与B的关系 2020-04-05 …
关于数列一道很难的题目,请高人指教.对于数列{an},规定{△an}为数列{an}的一阶差分数列, 2020-05-13 …
已知集合M包含{1,2},且{1,2,3,4,5}包含集合M,则这样的集合M有多少个?为什么满足条 2020-05-16 …
大一概率论设X的分布函数为F(x)={A(1-e的-x次方),x≥00,x<0求常数A以及P{1< 2020-06-04 …
设数列{an}的前n项和为Sn=2n²,{b}为等比数列,且a1=b1,b2(a2-a1)=b1. 2020-06-14 …
20#有多重?比20克要重吗,怎样计算叫呢在哪里看到说纸的重量应为20#,我不知道这到底有多重? 2020-06-19 …
板眼的几种意思1板眼:演唱会的身段、{板眼},就这样不知不觉中学会了.2板眼:他说话做事都很有{板 2020-06-26 …
{an},{bn}都是正项等比数列,Sn,Tn分别为数列{lgan}与{lgbn}的前n项和,且S 2020-07-09 …
{an}{bn}都是正项等比数列,Sn,Tn分别为数列{㏑an}{㏑bn}的前n项和,且Sn/Tn 2020-07-09 …
数学问题,求求解!任何一个合数多可以写成{}形式。792写成质数相乘的形式是{},共有{}几个因数 2020-07-16 …