学符串的输入输出 ●逐个字符I/O:%c ●整个字符串I/O:%s 用字符数组名,不要加& 例 用%c 输入串长度<数组维数 main() 遇空格或回车结束 char str[5]; 自动加0 int i; 例 用%s &str的) main() { char str[5]; scanf(%s”,str)j r[]) printf%s”,str) 用字符数组名 遇0结束
❖字符串的输入输出 ⚫逐个字符I/O: %c ⚫整个字符串I/O: %s 例 用%c main() { char str[5]; int i; for(i=0;i<5;i++) scanf(“%c”, &str[i]); for(i=0;i<5;i++) printf(“%c”, str[i]); } 例 用%s main() { char str[5]; scanf(“%s”, str); printf(“%s”, str); } 用字符数组名,不要加& 输入串长度<数组维数 遇空格或回车结束 自动加‘\0’ 用字符数组名, 遇‘\0’结束
例 main()】 { char a[5]={H,'e,1,1',o} printf%s”,aj 结果:Hello#=* 用%”输出时,遇0结 例 main()) {char a[]=“Hello, printf%s”,a); 结果:Hello
例 main( ) { char a[5]={‘H’,’e’,’l’,’l’,’o’}; printf(“%s”,a); } 例 main( ) { char a[ ]=“Hello”; printf(“%s”,a); } 结果:Hello#-=* h e l l o 0 1 2 3 4 结果:Hello 用“%s”输出时,遇‘\0’结 束
例 mainO { char a]={h,'e',I,0','o',"0' printf("%s",a), 输出:hel 数组中有多个八0'时, 遇第一个结束 米
main() { char a[]={'h','e','l','\0','l','o','\0'}; printf("%s",a); } 例 输出:hel h e l \0 l o \0 数组中有多个‘\0’时, 遇第一个结束
main() { int i; char a[5]; scanf("%s",a)月 输入字符串长度〈数组维 数 for(i=0;i<5;i++) printf("%d,"a[i]); he10 运行情况: he110 (1)若输入hel,正常 (2)若输入hell,正常 he 11 o (3) 若输入hello,用%s输出时,会出现问题
main() { int i; char a[5]; scanf("%s",a); for(i=0;i<5;i++) printf("%d,",a[i]); } 运行情况: (1)若输入 hel , 正常 (2)若输入 hell , 正常 (3)若输入 hello , 用%s 输出时,会出现问题 h e l \0 h e l l \0 h e l l o 输入字符串长度<数组维 数