#include<stdio.h>?int main(){ char str1[30]={"I am "}; char str2[20]={"good student"}; int i,j; for(i=0,j=0;i<30;i++) { if(str1[i]==0) { str1[i]=str2[j]; j++; // if(str2[j]==0) // break; } } for(i=0;i<30;i++) printf("%c",str1[i]); printf("\n");? ? return 0;}
1 回答

慕用4063026
TA貢獻195條經驗 獲得超115個贊
#include<stdio.h>? int?main() { char?str1[]={"I?am?"}; char?str2[]={"good?student"}; int?i,j; for(i=0,j=0;i<(sizeof(*str1)+sizeof(*str2));i++)//這個位置用sizeof求大小 { if(str1[i]==0) { str1[i]=str2[j]; j++; } } for(i=0;i<30;i++) printf("%c",str1[i]); printf("\n"); ????return?0; }
輸出:I am good student
判斷寫的不夠精確,有漏洞啊,才會多出一些字符
- 1 回答
- 0 關注
- 1191 瀏覽
添加回答
舉報
0/150
提交
取消