单选题
有以下程序
有以下程序
void fun1(char *p)
{char *q;
q=p;
while(*q!='\0')
{ (*q)++; q++;
}
main()
{char a[]={"Program"}, *p;
p=&a[3];fun1(p);printf("%s\n",a);
}
程序执行后的输出
A
Prohsbn
B
Prphsbn
C
Progsbn
D
Program
答案解析
正确答案:A
解析:
不好理解
考核的知识点是指向数组的指针作为函数的参数及指针的运算,如果形参数组中的元素发生变 化,实参也将发生相应变化。指针 p 指向数组的第三位地址(即字符“g”的地址),q=p 也就相当于指针q 指向数组的第三位地址。表达式(*q)++,首先根据()的优先级得到 a[3]的值“g”,再进行加 1 运算,所以g 也就变成了 h;表达式 q++是将地址加 1,也就是指向下一个地址 a[4]。然后再执行 while()语句,直到遇 到'\0'结束循环,返回形参。
考核的知识点是指向数组的指针作为函数的参数及指针的运算,如果形参数组中的元素发生变 化,实参也将发生相应变化。指针 p 指向数组的第三位地址(即字符“g”的地址),q=p 也就相当于指针q 指向数组的第三位地址。表达式(*q)++,首先根据()的优先级得到 a[3]的值“g”,再进行加 1 运算,所以g 也就变成了 h;表达式 q++是将地址加 1,也就是指向下一个地址 a[4]。然后再执行 while()语句,直到遇 到'\0'结束循环,返回形参。
题目纠错
信息技术知识大赛
相关题目
单选题
为了解决不同用户文件的“命名冲突”问题,通常在文件系统中采用( )。
单选题
一个进程释放一种资源将有可能导致一个或几个进程( )。
单选题
运行时间最短的作业被优先调度,这种企业调度算法是( )
单选题
从用户的观点看,操作系统是( )。
单选题
如果分时操作系统的时间片一定,那么( ),则响应时间越长。
单选题
下面( )不属于操作系统功能。
单选题
操作系统负责为用户和用户程序完成所有( )的工作
单选题
在下列解决死锁的方法中,属于死锁预防策略的是( )。
单选题
若用户总是要求用随机存取方式查找文件记录,则采用索引结构比采用链接结构( )。
单选题
如果文件系统中有两个文件重名,不应采用( )。
