选择题
有以下程序:
#include<stdio.h>
int fun(int a[],int n,int x)
{ int *p=a;
while(p<a+n && *p!=x)p++;
if(p<a+n) return p-a;
else return-1;
}
main()
{ int a[10]={1,2,3,4,5,6,7,8,9,10};
printf('%d\n',fun(a,10,10));
}
程序运行后的输出结果是
A、
9
B、
-1
C、
10
D、
0
【正确答案】
A
【答案解析】
while(p<a+n && *p!=x) p++;当p=a;n=10,x=10;时while循环条件成立,直到p=a+9,结束循环,执行下一条语句,if条件成立,返回p-a,此时执行p-a=a+9-a=9;,因此输出9。故答案为选项A。
提交答案
关闭