您现在的位置:首页 > 国企招聘 > 电力电网 > 考试试题 >

国家电网考试备考资料:计算机之数据结构与算法(一)进入阅读模式

国家电网考试备考资料:计算机之数据结构与算法(一) 进入阅读模式 点我咨询

2015-07-22 11:09:39| 来源:国企招聘考试网

void main()

{

static char c[]="BASICndBASE";

printf("%sn",c);

} printf("%sn",c);

注意在本例的printf函数中,使用的格式字符串为"%s", 表示输出的是一个字符串。而在输出表列中给出数组名则可。不能写为:printf("%s",c[]);

void main()

{

char st[15];

printf("input string:n");

scanf("%s",st);

printf("%sn",st);

} char st[15];

本例中由于定义数组长度为15, 因此输入的字符串长度必须小于15,以留出一个字节用于存放字符串结束标志''。应该说明的是,对一个字符数组,如果不作初始化赋值,则必须说明数组长度。还应该特别注意的是,当用scanf函数输入字符串时,字符串中不能含有空格,否则将以空格作为串的结束符。例如运行例4.8,当输入的字符串中含有空格时,运行情况为:input string:this is a book this 从输出结果可以看出空格以后的字符都未能输出。为了避免这种情况,可多设几个字符数组分段存放含空格的串。程序可改写如下:

Lesson

void main()

{

char st1[6],st2[6],st3[6],st4[6];

printf("input string:n");

scanf("%s%s%s%s",st1,st2,st3,st4);

printf("%s %s %s %sn",st1,st2,st3,st4);

}

本程序分别设了四个数组, 输入的一行字符的空格分段分别装入四个数组。然后分别输出这四个数组中的字符串。在前面介绍过,scanf的各输入项必须以地址方式出现,如 &a,&b等。但在例4.8中却是以数组名方式出现的,这是为什么呢?这是由于在C语言中规定,数组名就代表了该数组的首地址。整个数组是以首地址开头的一块连续的内存单元。如有字符数组char c[10],在内存可表示如图4.2。设数组c的首地址为2000,也就是说c[0]单元地址为2000。则数组名c就代表这个首地址。因此在c前面不能再加地址运算符&。如写作scanf("%s",&c);则是错误的。在执行函数printf("%s",c) 时,按数组名c找到首地址,然后逐个输出数组中各个字符直到遇到字符串终止标志''为止。

1 2 3 4

(责任编辑:lwoffcn)
THE END  

声明:本站点发布的来源标注为“中公教育”的文章,版权均属中公教育所有,未经允许不得转载。

返回顶部

免责声明:本站所提供试题均来源于网友提供或网络搜集,由本站编辑整理,仅供个人研究、交流学习使用,不涉及商业盈利目的。如涉及版权问题,请联系本站管理员予以更改或删除。

中公教育

回复“2022”领取备考大礼包

点我咨询

热门招聘关注查看备考干货关注查看实时互动关注查看

猜你喜欢 换一换