用C语言编写函数将源字符串 s(长度小于 20)中所有数组下标为奇数的字符或ASCII码为偶数的字符放入目标字符串 t中。 并在主函数中输出目标字符串。
时间: 2024-03-01 16:50:06 浏览: 88
好的,以下是实现要求的函数和主函数的代码:
```c
#include <stdio.h>
void copy(char s[], char t[]) {
int i, j;
for (i = 0, j = 0; s[i] != '\0'; i++) {
if (i % 2 == 1 || s[i] % 2 == 0) {
t[j] = s[i];
j++;
}
}
t[j] = '\0';
}
int main() {
char s[20], t[20];
printf("请输入字符串s:");
scanf("%s", s);
copy(s, t);
printf("目标字符串t为:%s\n", t);
return 0;
}
```
函数copy()的参数是源字符串s和目标字符串t,函数的功能是将s中所有数组下标为奇数的字符或ASCII码为偶数的字符放入t中。在函数中,使用循环遍历源字符串s中的每个字符,判断它的下标是否为奇数或ASCII码是否为偶数,如果是,则把该字符放入目标字符串t中。最后,将目标字符串t的最后一个字符设置为'\0',表示字符串的结束。在主函数中,先读入源字符串s,调用copy()函数将符合条件的字符复制到目标字符串t中,最后输出目标字符串t。
相关问题
用c语言编写函数将源字符串 s(长度小于 20)中所有数组下标为奇数的字符或ASCII码为偶数的字符放入目标字符串 t中。 并在主函数中输出目标字符串。
以下是用C语言编写的函数,可以实现将源字符串 s 中所有数组下标为奇数的字符或ASCII码为偶数的字符放入目标字符串 t 中的功能:
```c
#include <stdio.h>
#include <string.h>
void copy(char *s, char *t)
{
int i, j = 0;
for (i = 0; i < strlen(s); i++)
{
if ((i % 2 == 1) || (s[i] % 2 == 0))
{
t[j] = s[i];
j++;
}
}
t[j] = '\0';
}
int main()
{
char s[20], t[20];
printf("请输入源字符串 s:");
scanf("%s", s);
copy(s, t);
printf("目标字符串 t 为:%s", t);
return 0;
}
```
函数 copy() 的参数 s 和 t 都是字符型指针,通过传入源字符串 s 和目标字符串 t 的地址,可以在函数内部对它们进行操作。函数内部通过循环遍历源字符串 s,判断每个字符的下标是否为奇数或者 ASCII 码是否为偶数,如果是则将该字符复制到目标字符串 t 中。最后在目标字符串 t 的末尾加上字符串结束符 \0。在主函数中,通过调用 copy() 函数将源字符串 s 中符合条件的字符复制到目标字符串 t 中,并输出目标字符串 t。
C语言编写函数将源字符串 s(长度小于 20)中所有数组下标为奇数的字符或ASCII码为偶数的字符放入目标字符串 t中。 并在主函数中输出目标字符串。
以下是实现该功能的 C 语言代码:
```c
#include <stdio.h>
#include <string.h>
void filter_string(char s[], char t[]) {
int len = strlen(s);
int j = 0;
for (int i = 0; i < len; i++) {
if (i % 2 != 0 || s[i] % 2 == 0) {
t[j++] = s[i];
}
}
t[j] = '\0';
}
int main() {
char s[20];
char t[20];
printf("请输入源字符串 s:");
scanf("%s", s);
filter_string(s, t);
printf("目标字符串 t 为:%s\n", t);
return 0;
}
```
注释:
- `filter_string` 函数用于过滤字符串,将符合条件的字符放入目标字符串中。
- `s` 为源字符串,`t` 为目标字符串。
- `len` 表示源字符串的长度。
- `i` 从 0 到 `len-1` 遍历源字符串 `s` 的每一个字符。
- 如果当前字符的下标为奇数或 ASCII 码为偶数,则放入目标字符串 `t` 中,下标 `j` 加 1。
- 最后在目标字符串 `t` 的末尾加上字符串结束符 `\0`。
- 在 `main` 函数中,首先输入源字符串 `s`,然后调用 `filter_string` 函数得到目标字符串 `t`,最后输出 `t`。
阅读全文