#


私信TA

用户名:G0g

访问量:25791

签 名:

等  级
排  名 443
经  验 4825
参赛次数 0
文章发表 14
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

#include <stdio.h>
#define LEN 100
void Copy(char a[], char b[], int n, int m);
int main(void)
{
	char a[LEN], b[LEN];
	int n, m;
	scanf("%d", &n);
	getchar();
	fgets(a, n + 1, stdin); //n+1就是读取输入的n个字符,后接一个'\0'
	scanf("%d", &m);
	Copy(a, b, n, m);
	printf("%s\n", b);
	return 0;
}
void Copy(char a[], char b[], int n, int m)
{
	int i, j = 0;
	for (i = m - 1; i <= n; i++)  //i<=n  因为也要把结束符给拷贝进去
		b[j++] = a[i];
}


 

0.0分

11 人评分

  评论区

#include<stdio.h>
#include<math.h>
void a(int n,char x[],char k[],int m)
{
	int i,j=0;
	for(i=m-1;i<n;i++)
	{
		k[j++]=x[i];	
	}
}
void a(int n,char x[],char k[],int m);
int main(void)
{
	int n,i;
	char x[100];
	char k[100];
	int m;
	scanf("%d",&n);
	scanf("%s",&x);
	scanf("%d",&m);
	a(n,x,k,m);
	for(i=0;i<=m;i++)
	{
		printf("%c",k[i]);
	}
	printf("\n");
	return 0;
}
求求了,这哪里错了
2024-03-14 23:47:54
#include<stdio.h>
int main()
{
	int n,m;
	scanf("%d",&n);
	char a[n];
	gets(a);
	scanf("%d",&m);
	char b[n-m];
	for(int i=m-1,j=0;i<n;i++,j++)
	{
	    b[j]=a[i];
	}
	puts(b);
	return 0;
}
我这斯哪里错了……
2021-11-21 09:19:57
fgets()跟gets()一样,但是优于gets()因为fets()是给了存储空间大小,这样可以防止内存溢出。fgets()遇到'\n'会停止输入,因为scanf最后会缓存一个回车,必须清除这个缓存(清除缓存可以在scanf后面加fflush(stdin);),或者用getchar()去接收这个回车,不然的话,fgets()不能输入字符
2021-03-29 15:48:54
那个scanf("%d",&n);
这个最后会有一个enter键
是用getchar去接受这个enter键吗
2019-09-27 21:40:55
为什么这个要用getchar()去接受这个空格字符呢
2019-09-27 21:39:18
fgets是什么,怎么像是自定义的函数,有没有看见定义的函数在哪?
2018-10-24 14:32:29
  • «
  • 1
  • »