2008年12月30日星期二

字符串操作

由键盘输入一个不超过40个字符的字符串,已知其中有两个“A”,请你编程完成以下任务:
(1)求出每个“A”所在的位置
(2)求出两个“A”之间的字符及字符个数

C代码:

#include < stdio.h >
#include < stdlib.h >
#include < math.h >
#include < string.h >

#define MAX_LEN 40

int main(int argc, char **argv)
{
char buffer[MAX_LEN];
int len;
int p1, p2, i;
int flg = 1;
memset(buffer, '\0', sizeof(char) * MAX_LEN);

scanf("%s", buffer);
len = strlen(buffer);

for (i = 0; i < len; i++) {
if (buffer[i] == 'A' && flg) {
p1 = i;
flg = 0;
} else if (buffer[i] == 'A') {
p2 = i;
break;
}
}

printf("p1: %d, p2: %d\n", p1, p2);
printf("len: %d\n", p2 - p1);
for (i = p1; i < p2-1; i++) {
printf("%c", buffer[p2-i-1+p1]);
}
printf("\n");

return 0;
}

没有评论:

发表评论