程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> 作業-最後一句語句沒有為什麼會有亂碼產生

作業-最後一句語句沒有為什麼會有亂碼產生

編輯:編程綜合問答
最後一句語句沒有為什麼會有亂碼產生

第一種
#include
#include
void mcopy(char *s,char*t,int m);
int main(void)
{
char a[100],b[100];
int m;

gets(a);
scanf("%d",&m);
mcopy(a,b,m);
puts(b);

}
void mcopy(char *s,char*t,int m)
{
int len,i,d=0;
len = strlen(s);
for(i=m-1;i<len;i++)
{
t[d]=s[i];
d++;
}

} 第二種
#include
#include
void mcopy(char *s,char*t,int m);
int main(void)
{
char a[100],b[100];
int m;

gets(a);
scanf("%d",&m);
mcopy(a,b,m);
puts(b);

}
void mcopy(char *s,char*t,int m)
{
int len,i,d=0;
len = strlen(s);
for(i=m-1;i<len;i++)
{
t[d]=s[i];
d++;
}
t[d]='\0';
}

最佳回答:


strlen(s)返回字符串中字符長度,不包含結束標志。所以最後要補一個。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved