分类: C/C++
2011-05-26 22:41:17
(1)以%c逐个输入输出
除了可用初始化的方法为字符数组赋值外,还可以用scanf函数输入字符或字符串。例如:
char str[9];
scanf(“%c”,&str[0]);
用printf函数可以输出一个或几个数组元素。例如
printf(“%c”,str[0]);
(2)以%s输入输出一串
用下面的方法可以一次输入一个字符串:
scanf(“%s”,str);
①输入特点
在scanf函数中用“%s”作为输入一个字符串的格式符。注意:由于数组名代表数组的起始地址,因此在scanf函数中只需写数组名str即可,而不应该写成:
scanf(“%s”,&str);
若用“scanf(“%s”,str);”语句向字符数组输入一个字符串,可在运行时从键盘输入字符并按回车即可,不必在字符串的两端加双引号。例如:Computer
在按回车后,它前面的字符作为一个字符串输入,系统自动在最后加一个字符串结束标志“\0”,这时输入给数组str中的字符个数是9而不是8。
如果输入的字符串包含空格,例如:
Com puter
则只将“Com”作为字符串输入,因为C语言规定用scanf输入时空格符作为分隔符。如果有以下的语句:
scanf(“%s%s”,str1,str2);如果输入:
Com puter
则将“Com”和“\0”输入到字符数组str1中,“puter”和“\0”输入到字符数组str2中。
②输出特点
用printf函数可以输出一个或几个数组元素,也可以将存放在字符数组中的字符串输出。例如
printf(“%c,%s”,str[0],str);
注意:
a)输出一个元素时,要指明下标,用“%c”格式符。
b)输出一个字符串时,只写数组名,用“%s”格式符。
c)输出时不包括“\0”,只输出“\0”以前的有用字符.如果在一个字符串中有多个“\0”,遇第一个“\0”结束。