问题 单项选择题

以下函数实现的功能是void fun (char *s){ char *p,*q,temp; p=s; q=s+ strlen(s)-1; while (p<q) {temp=*p;*p=*q;*p=temp;p++;q--; }}

A.将一个字符串首尾颠倒

B.计算字符串的长度

C.统计字符串中的空格个数

D.将字符串中的小写字母变成大写字母

答案

参考答案:A

解析: 本题考核while循环语句和指针的使用。在该函数中,循环开始时,指针p指向字符串的第1个字符,指针q指向字符串的最后一个字符,首先交换这两个字符;然后,指针p前进一个字符位置(指向下一个字符),指针q后退一个字符位置(指向前一个字符);经过若干次循环,条件p<q将为假(即指针p和指针q相遇),循环结束。从而实现了将一个字符串首尾颠倒的功能。

选择题
选择题