A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 瑜尚 中级黑马   /  2016-7-19 18:03  /  1537 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1)
     int main (){
     char str[50]="adfsadfsad";
     scant("%s",str);
     printf("%s",str);
     return 0;
}
2)
     int main (){
     int  str[50];
     scant("%d",&str[0]);
     printf("%d",str[0]);
     return 0;
}
为什么scarf在这两种数组里面的书写格式不一样呢

6 个回复

倒序浏览
第一个是字符串,第二个是一维数组,第一个可以输入50个字符之内,第二个只是数组第一个数字
回复 使用道具 举报
其实很好理解的,c语言中字符数组可以单个输入与输出,用%c或者它的ascll码%d,也可以用字符串的形式输入输出,因为是通过首地址来存储和输出的,只要没遇到\0就一直往后打印。
回复 使用道具 举报
18222929637 发表于 2016-7-20 20:47
其实很好理解的,c语言中字符数组可以单个输入与输出,用%c或者它的ascll码%d,也可以用字符串的形式输入 ...

谢谢你的回复,很有帮助
回复 使用道具 举报
李江波 发表于 2016-7-20 11:24
第一个是字符串,第二个是一维数组,第一个可以输入50个字符之内,第二个只是数组第一个数字 ...

感谢回复
回复 使用道具 举报
18222929637 发表于 2016-7-20 20:47
其实很好理解的,c语言中字符数组可以单个输入与输出,用%c或者它的ascll码%d,也可以用字符串的形式输入 ...

666666666666
回复 使用道具 举报
瑜尚 中级黑马 2016-7-21 18:41:30
7#

确实很6
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马