首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序 #include void f(int *p,int *q); main() { int m=1,n=2,*r=&m; f(r, &n); printf("%d,%d",m,n); } void f(int *p,int *q) {
有以下程序 #include void f(int *p,int *q); main() { int m=1,n=2,*r=&m; f(r, &n); printf("%d,%d",m,n); } void f(int *p,int *q) {
admin
2015-07-28
52
问题
有以下程序
#include
void f(int *p,int *q);
main()
{
int m=1,n=2,*r=&m;
f(r, &n);
printf("%d,%d",m,n);
}
void f(int *p,int *q)
{
p=p+1;
*q=*q+1;
}
程序运行后的输出结果是( )。
选项
A、1,3
B、2,3
C、1,4
D、1,2
答案
A
解析
函数的参数传递过程中,参数的传递是单向的,形参只是实参的一个副本,形参改变不能影响到实参。如果形参和实参为两个地址,形参指针指向变量的变化能够影响到实参指针指向变量的变化,这是因为形参指针和实参指针指向了同一个地址空间。但是形参指针指向的变化不能影响到实参指针的指向。所以该函数f()调用中,第一个参数只是改变了形参p的指向,第二个参数改变了指针变量q指向的变量的值,所以函数调用结束后,m值不变,n值自增1,答案选A。
转载请注明原文地址:https://www.kaotiyun.com/show/PdJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有一函数以下程序段中不能根据x值正确计算出y值的是
有以下程序main(){inta;charc=10;floatf=100.0;doublex;a=f/=c*(x=6.5);printf("%d%d%3.1f%3.1f\n",
以下不能定义为用户标识符的是
以下程序将两个数从小到大输出。请填空。 {floata,b,【】; scanf(,【】&a,&b); if(a>b) {t=a; 【】; b=t; printf("%5.2f%5.2f\n",a
若想通过以下输入语句使a中存放字符串1234,b中存放字符5,则输入数据的形式应该是【】。chara[10],b;scanf("a=%sb=%c",a,&b);
在C语言中,函数的隐含存储类别是()
下列语句中,说法正确的是______。
以下叙述正确的是
若a=10,b=20,则表达式!(a<b)的值是【】。
已知大写字母A的ASCII码是65,小写字母a的ASCII码是97。下列不能将变量c中的大写字母转换为对应小写字母的语句是()。
随机试题
在脱氨基作用中,肝脏中最常见的方式是
促进组织蛋白分解的是
关于脱疽的诊断,下列哪项是错误的:
并殖吸虫病的病原治疗药物包括
牙源性钙化上皮瘤牙源性腺样瘤
高血压患者余某,体重75kg,收缩压170mmHg,舒张压98mmHg,心电图不正常,ST-T改变,有大量饮酒嗜好。医生用降压药控制病情进展是
关于死刑复核程序,下列哪些选项是正确的?
某银行在2007年共有贷款500亿元人民币,其中正常贷款300亿元人民币,其共有一般准备金7亿元人民币,专项准备2亿元人民币,特种准备1亿元人民币,则其不良贷款拨备覆盖率约为()。
WindowsXP中关闭程序的方法有多种,下列叙述中正确的是()。
改变对于()相当于()对于清澈
最新回复
(
0
)