用c语言写一个程序,输入两个字符串,一长一短,能够将短的字符串循环延长至和长的字符串中字母数量相同的长度,要求用指针数组,若长字符串中有空格,短字符串延长时需跳过
时间: 2023-07-16 21:16:20 浏览: 108
您好!感谢您的提问。以下是 C 语言的代码实现:
```c
#include <stdio.h>
#include <string.h>
void strLoop(char *str1, char *str2) {
int len1 = strlen(str1);
int len2 = strlen(str2);
int i = 0;
char *p1 = str1, *p2 = str2;
while (*p1 != '\0') {
if (*p1 == ' ') {
len1--;
}
p1++;
}
while (*p2 != '\0') {
if (*p2 == ' ') {
len2--;
}
p2++;
}
while (len2 < len1) {
for (i = 0; i < strlen(str2); i++) {
printf("%c", *(str2 + i));
len2++;
if (len2 == len1) {
break;
}
}
}
}
int main() {
char str1[100], str2[100];
printf("请输入两个字符串,以空格分隔:\n");
scanf("%s %s", str1, str2);
strLoop(str1, str2);
return 0;
}
```
这段程序中,首先获取两个字符串的长度,然后通过指针遍历两个字符串中的空格,确定除空格外的字母数量。然后根据两个字符串的长度差,在短字符串不断循环输出,直到两个字符串字母数量相同时停止。
希望这个回答能够解决您的问题。如果您还有其他问题,欢迎继续提问!
阅读全文