課程
/后端開發
/C
/C語言入門
為啥運行不了
2017-04-14
源自:C語言入門 6-8
正在回答
不用這么麻煩吧!不知道你這個gets(s1)是干什么的,最好不要用gets();
求數組s1的長度用sizeof()就行了,前面把s2初始化了,后面就不用在最后加“\0”了
初始化很重要,邊界操作容易出錯。
?char s1[10] = "abcdefg";?char s2[30] = {};?int i, j=0, k=0;?scanf("%d", &k);?j = sizeof(s1);?if (k > j)?{??????k = j;?}
for (i = 0;i < k;i++){?????s2[i] = s1[i];}
?printf("%s\n", s2);
舉報
C語言入門視頻教程,帶你進入編程世界的必修課-C語言
1 回答為什么數組中放入字符和字符串后運行錯誤
1 回答求解,為什么字符串變量s1不能被賦值?
2 回答字符,字符串
1 回答字符串 字符
1 回答字符串與數組
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-04-14
不用這么麻煩吧!不知道你這個gets(s1)是干什么的,最好不要用gets();
求數組s1的長度用sizeof()就行了,前面把s2初始化了,后面就不用在最后加“\0”了
初始化很重要,邊界操作容易出錯。
?char s1[10] = "abcdefg";
?char s2[30] = {};
?int i, j=0, k=0;
?scanf("%d", &k);
?j = sizeof(s1);
?if (k > j)
?{
??????k = j;
?}
for (i = 0;i < k;i++)
{
?????s2[i] = s1[i];
}
?printf("%s\n", s2);