问题 单项选择题

以下函数实现的功能是 ( )。
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

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

完形填空
多项选择题 案例分析题