怎么做?我愿意-
在某个字符串中的每个字符之后添加该字符。对于特定情况,假设我有一个声明为100大小的字符串,但仅填充了3个字母(由用户输入-因此字符的str[3]
值为NULL(\0
))。
for(i = strlen(str) ; i >= 0 ; i--)
{
str[i*2] = str[i];
}
for(i = 0 ; i < strlen(str) ; i++)
{
if(i % 2 != 0)
{
str[i] = '-';
}
}
但它不起作用,请帮助任何人?
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
int len = 0;
int i = 0;
strcpy(str, "abcd");
len = strlen(str);
// len = 4
// Expected output: "a-b-c-d"
// str[7] = '\0';
// str[6] = 'd';
for(i = len-1; i >= 0 ; i--)
{
str[i*2+1] = '-';
str[i*2] = str[i];
}
str[len*2-1] = '\0';
printf("%s\n", str);
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句