编程判断输入的一串字符是否为“回文”。所谓“回文”,是指顺读和倒读都一样的字符串,如"level"和"ABCCBA"都是回文。 提示: (1)设置两个指针pStart和pEnd,让pStart指向字符串首部,让pEnd指向字符串尾部。 (2)利用循环从字符串两边对指针所指字符进行比较,当对应的两字符相等且两指针未超越对方时,使指针pStart向前移动一个字符位置(加1),使指针pEnd向后移动一个字符位置(减1),一旦发现两字符不等或两指针已互相超越(不可能是回文),则立即停止循环。 (3)根据退出循环时两指针的位置,判断字符串是否为回文。 在空白处填写适当的表达式或语句,使程序完整并符合题目要求。#include <stdio.h> #include <string.h> int main(void) { char str[80], *pStart, *pEnd; int len; printf("Input string:"); gets(str); len = __________; pStart = str; pEnd = ____________; while (__________________) { pStart++; pEnd--; } if (__________) { printf("No!\n"); } else { printf("Yes!\n"); } return 0; }
A、第9行: strlen(str) 第13行: str + len - 1 第15行: (*pStart == *pEnd) && (pStart < pEnd) 第21行: pStart < pEnd
B、第9行: sizeof(str) 第13行: str + len 第15行: (*pStart != *pEnd) && (pStart < pEnd) 第21行: pStart != pEnd
C、第9行: strlen(str) 第13行: str + len 第15行: (*pStart = *pEnd) && (pStart <= pend) 第21行: pstart="=" pend> D、第9行: sizeof(str) 第13行: str + len - 1 第15行: (*pStart == *pEnd) || (pStart < pEnd) 第21行: pStart <= pend>