程序的功能是将s数组存储的字符串中前n字符删除,串中剩余字符形成一个新串放在t数组中,最后输出数组t。例s所指字符串中的内容为HelloWorld,n为5,最后t数组中的内容应是World。用c++
时间: 2024-02-09 13:12:30 浏览: 93
好的,下面是C++代码实现:
```cpp
#include <iostream>
#include <cstring>
using namespace std;
int main()
{
char s[] = "HelloWorld";
int n = 5;
int len = strlen(s);
char t[len-n+1];
for(int i = n; i < len; i++) {
t[i-n] = s[i];
}
t[len-n] = '\0';
cout << t;
return 0;
}
```
这个程序首先定义了一个字符串s和整数n,表示要删除s字符串的前n个字符。使用strlen函数获取字符串s的长度,然后根据长度计算出新字符串t的长度。接着使用for循环遍历s字符串,将n后面的所有字符存入新字符串t中。最后在t的末尾加上字符串结束符'\0',并输出t字符串即可。
相关问题
程序的功能是将s数组存储的字符串中前n字符删除,串中剩余字符形成一个新串放在t数组中,最后输出数组
好的,我明白了。以下是实现这个功能的 C 语言代码示例:
```c
#include <stdio.h>
#include <string.h>
void delete(char s[], char t[], int n) {
int len = strlen(s); // 获取原始字符串长度
if (n >= len) { // 如果要删除的字符数大于等于字符串长度,则直接返回空串
t[0] = '\0';
return;
}
strcpy(t, &s[n]); // 将剩余的字符复制到新串中
}
int main() {
char s[] = "Hello, world!";
char t[20]; // 新串最长为原始字符串长度减去要删除的字符数
int n = 7;
delete(s, t, n);
printf("%s", t);
return 0;
}
```
在上面的代码中,`delete` 函数接受三个参数:原始字符串 `s`、新串 `t` 和要删除的字符数 `n`。首先获取原始字符串长度 `len`,如果要删除的字符数大于等于字符串长度,则直接将新串置为空串返回。否则,将剩余的字符复制到新串中,最后输出新串即可。
函数fun的功能是:将s所指字符串下标为奇数的字符删除,串中剩余字符形成的新串放在t所指的数组中 并返回 t所指的字符串。 使用c语言编程
好的,下面是函数fun的代码实现:
```c
#include <stdio.h>
#include <string.h>
char* fun(char *s, char *t) {
int i, j = 0;
for (i = 0; s[i] != '\0'; i += 2) {
t[j++] = s[i];
}
t[j] = '\0';
return t;
}
int main() {
char s[] = "ABCDEFGHIJK";
char t[100];
printf("%s\n", fun(s, t)); // 输出 ACEGIK
return 0;
}
```
函数fun的实现比较简单,使用了一个循环遍历原始字符串s,每次取出下标为奇数的字符放入新字符串t中。最后将t末尾设为'\0',并返回t即可。在main函数中,我们定义了一个原始字符串s和新字符串t,分别用来存储原始字符串和函数处理后的结果。最后调用fun函数即可输出结果。
阅读全文