从字符串temp中找到第一个"-"的位置,取这个位置后的第1个字符开始,向后取4个字符,组成一个新的字符串用c sharp怎么写,temp请自己生成
时间: 2023-06-05 18:05:17 浏览: 125
好的,我明白了。以下是你要求的C#代码:
string temp = "hello-world";
int index = temp.IndexOf("-");
string newStr = temp.Substring(index + 1, 4);
Console.WriteLine(newStr);
输出:
worl
相关问题
用c语言做#include <stdio.h> void rev(char x[ ], int jg); void main( ) { char s[ 100 ]; int qs, jg; puts("请输入需要反序的字符串:"); scanf( "%[^\n]", s ); puts("请输入起始位置、间隔数量:"); scanf( "%d%d", &qs, &jg); rev(s+qs-1,jg); puts( s ); } 请自行设计rev函数,配合 main 函数完成: 能将指定字符串从某个位置开始,其后面的字符串都反序存放(倒过来存放), 或者间隔几个字符所对应的字符能够反序存放。 如表示把字符串“12a3b4c5d”从第3个字符开始, rev(s+3-1,1); 表示: 从第3个字符开始,每隔1个字符数构成的字符串反序存放, 也就是从第3个字符“a”开始,每隔一个字符得到的字符串是:“abcd” 这些字符需要反序存放,其余字符位置和顺序都不变。 最终得到“12d3c4b5a”。 运行效果如下: 请输入需要反序的字符串: 12a3b4c5d 请输入起始位置、间隔数量: 3 1 12d3c4b5a 请输入需要反序的字符串: 12a3b4c5d 请输入起始位置、间隔数量: 1 0 d5c4b3a21 请输入需要反序的字符串: 1ab2cd4ef5 请输入起始位置、间隔数量: 1 2 5ab4cd2ef1
可以参考以下代码实现rev函数:
```
void rev(char x[], int jg) {
int len = strlen(x);
int i, j;
if (jg == 0) { // 从指定位置开始,反转后续所有字符
j = len - 1;
} else { // 每隔 jg 个字符反转一次
j = len - (jg + 1);
}
for (i = jg - 1; i < j; i += jg) {
char temp = x[i];
x[i] = x[j];
x[j] = temp;
j--;
}
}
```
这个函数首先获取字符串的长度,然后根据间隔数计算需要反转的最后一个字符的下标。如果间隔数为0,则表示从指定位置开始,反转后续所有字符,此时最后一个字符的下标就是字符串长度减1。否则,需要计算出需要反转的最后一个字符的下标。
接下来,使用双指针的方式进行字符反转。从指定位置开始,每隔 jg 个字符反转一次。需要注意的是,反转时需要交换左右两个指针对应的字符,并且左指针需要向右移动,右指针需要向左移动。
最后,将修改后的字符串输出即可。
#include <stdio.h> void rev(char x[ ], int jg); void main( ) { char s[ 100 ]; int qs, jg; puts("请输入需要反序的字符串:"); scanf( "%[^\n]", s ); puts("请输入起始位置、间隔数量:"); scanf( "%d%d", &qs, &jg); rev(s+qs-1,jg); puts( s ); } 请自行设计rev函数,配合 main 函数完成: 能将指定字符串从某个位置开始,其后面的字符串都反序存放(倒过来存放), 或者间隔几个字符所对应的字符能够反序存放。 如表示把字符串“12a3b4c5d”从第3个字符开始, rev(s+3-1,1); 表示: 从第3个字符开始,每隔1个字符数构成的字符串反序存放, 也就是从第3个字符“a”开始,每隔一个字符得到的字符串是:“abcd” 这些字符需要反序存放,其余字符位置和顺序都不变。 最终得到“12d3c4b5a”。 运行效果如下: 请输入需要反序的字符串: 12a3b4c5d 请输入起始位置、间隔数量: 3 1 12d3c4b5a 请输入需要反序的字符串: 12a3b4c5d 请输入起始位置、间隔数量: 1 0 d5c4b3a21 请输入需要反序的字符串: 1ab2cd4ef5 请输入起始位置、间隔数量: 1 2 5ab4cd2ef1
```
void rev(char x[ ], int jg) {
int i, j, k;
char temp;
for(i = 0; x[i + jg] != '\0'; i += jg) {
j = i + jg - 1;
k = i;
while(k < j) {
temp = x[k];
x[k] = x[j];
x[j] = temp;
k++;
j--;
}
}
j = strlen(x) - 1;
k = i;
while(k < j) {
temp = x[k];
x[k] = x[j];
x[j] = temp;
k++;
j--;
}
}
```
阅读全文