热心网友
回答时间:2024-04-28 23:00
#include<stdio.h>
int n,m;
char str[100],string[100];
void a(char str[])
{
int t=0,i;
for(i=m-1;i<=n;) /*改写了,更为简洁*/
string[t++]=str[i++];
}
int main()
{
gets(str);
n=strlen(str); /*用此系统函数来求取str的串长度更为方便、可靠*/
scanf("%d",&m);
a(str);
puts(string);
return 0;
}
收起
热心网友
回答时间:2024-04-28 23:00
#include <stdio.h>
#include <string.h>
void mystrcpy(char* s2, char*s1, int n)
{
while(n--)
s1++;//移动指针到第n个字符
strcpy(s2,s1); //执行拷贝
}
int main()
{
char *s1 = "abcdefg";
char s2[10]={0};
mystrcpy( s2, s1,3);
printf("%s", s2);
getchar();//暂停屏幕,查看结果
}
收起
热心网友
回答时间:2024-04-28 23:04
字符串就是字符数组,使用循环就可以实现这个功能。
void strncpy(char *dest, char *src, int startPos)
{
int len = strlen(src);
int n = 0;
for (int m = startPos to len)
{
*(dest + n) = *(src + m);
n++;
}
*(dest + n) = '\0';
}
收起
热心网友
回答时间:2024-04-28 23:08
void strcpyn(char *s,char *t, int n)
{
char *p=s+n;
char *q=t;
while(*p)
{
*q=*p;
q++;
p++;
}
*q='\0';
}
main()
{
char s[100]={0};
char t[100]={0};
int n=0;
printf("input string s:\n");
scanf("%s",s);
printf("input start n:\n");
scanf("%d",&n);
strcpyn(s,t,n);
puts(t);
}
收起
热心网友
回答时间:2024-04-28 23:02
#include <stdio.h>
void main()
{
char *p1,*p2;
char a[10]="abcdefg", b[10];
p2=b;
p1=a;
int i=0;
while(*p1!='\0')//循环直到遇到字符串结束符为止
{
i++;
if(i>=3)
{
*p2=*p1;
p2++;//开始复制,p2指针向后移位
}
p1++;//p1向后移位
}
*p2='\0';//给b加上字符串结束符
printf("%s",b);
}
唉,很久没写C语言代码了 好久才调出来,希望对楼主有用
本文如未解决您的问题请添加抖音号:51dongshi(抖音搜索懂视),直接咨询即可。
收起