大一C语言程序求纠正!字符串“abcdefghij”包含10个有效字符,写一个函数,将此字符串中从第m个字符开始的
#include<stdio.h>main(){chara[10]="abcdefghij";charconvert(intm,intn);intm,n;scanf("%...
#include<stdio.h>
main()
{
char a[10]="abcdefghij";
char convert(int m,int n);
int m,n;
scanf("%d,%d",m,n);
convert(m,n);
puts(a);
system("pause");
}
char convert(m,n)
{ char a[10]="abcdefghij";
int i,j=0;
for(i=n;i<m+n;i++)
a[j++]=a[i];
a[j]='\0';
} 展开
main()
{
char a[10]="abcdefghij";
char convert(int m,int n);
int m,n;
scanf("%d,%d",m,n);
convert(m,n);
puts(a);
system("pause");
}
char convert(m,n)
{ char a[10]="abcdefghij";
int i,j=0;
for(i=n;i<m+n;i++)
a[j++]=a[i];
a[j]='\0';
} 展开
展开全部
修改后
#include<stdio.h>
void main()
{
char a[11]="abcdefghij";//\0占一位 所以数组为11
void convert(int m,char x[]);
int m;
printf("输入m的值\n");
scanf("%d",&m);
puts(a);//数组a
printf("\n");
convert(m,a); //不返回值得函数空函数
}
void convert(int m,char x[])
{
int i,j=m-1;
int k=j;//把j存起来
for(i=0;i<10-k;i++,j++)//只循环m-1次即可
{
x[i]=x[j];
printf("%c",x[i]);
}
printf("\n");//这个函数没有改变原数组a,只是选择输出的方式变了
}
#include<stdio.h>
void main()
{
char a[11]="abcdefghij";//\0占一位 所以数组为11
void convert(int m,char x[]);
int m;
printf("输入m的值\n");
scanf("%d",&m);
puts(a);//数组a
printf("\n");
convert(m,a); //不返回值得函数空函数
}
void convert(int m,char x[])
{
int i,j=m-1;
int k=j;//把j存起来
for(i=0;i<10-k;i++,j++)//只循环m-1次即可
{
x[i]=x[j];
printf("%c",x[i]);
}
printf("\n");//这个函数没有改变原数组a,只是选择输出的方式变了
}
展开全部
/*
6,4
fghi
请按任意键继续. . .
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// 从s中第m个字符开始的n个字符复制到t中,成功返回t,失败返回NULL
char *convert(char *s,char *t, int m, int n) {
int i,len = strlen(s);
if(( m < 1)||(m >= len)) return NULL;
for(i = m - 1;(i < m + n - 1) && (i < len); i++)
t[i - m + 1] = s[i];
t[i - m + 1] = '\0';
return t;
}
int main() {
char *s = "abcdefghij",t[11];
int m,n;
scanf("%d,%d",&m,&n);
if(convert(s,t,m,n) != NULL) puts(t);
// system("pause");
return 0;
}
6,4
fghi
请按任意键继续. . .
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// 从s中第m个字符开始的n个字符复制到t中,成功返回t,失败返回NULL
char *convert(char *s,char *t, int m, int n) {
int i,len = strlen(s);
if(( m < 1)||(m >= len)) return NULL;
for(i = m - 1;(i < m + n - 1) && (i < len); i++)
t[i - m + 1] = s[i];
t[i - m + 1] = '\0';
return t;
}
int main() {
char *s = "abcdefghij",t[11];
int m,n;
scanf("%d,%d",&m,&n);
if(convert(s,t,m,n) != NULL) puts(t);
// system("pause");
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
a[10]="abcdefgij"没错
#include <stdio.h>
main()
{
char a[10]="abcdefghij";
int i,m=3,n=5;
for(i=m;i<=m+n;i++)
printf("%c",a[i]);
}
#include <stdio.h>
main()
{
char a[10]="abcdefghij";
int i,m=3,n=5;
for(i=m;i<=m+n;i++)
printf("%c",a[i]);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询