c语言数组输入空格回车问题

您所在的位置:网站首页 数据库设计er图实验总结 c语言数组输入空格回车问题

c语言数组输入空格回车问题

2024-06-13 16:26| 来源: 网络整理| 查看: 265

C语言字符数组输入输出

1、scanf("%s")输入字符串时,遇到空格就结束输入。

2、用gets()或fgets()输入带有空格的字符串。gets()函数是以回车为结束符的输入函数,可以输入带空格的字符串。

3、getchar()从缓冲区读走一个字符,相当于清除缓冲区。 4、strcat(char *str1,char *str2)把 str2 接道 str1 后面,str1后面的 ‘\0’ 取消

例1:

#include int main(){ char a1[5],a2[5],a3[5],a4[5]; scanf("%s%s",a1,a2); gets(a3);gets(a4); puts(a1);puts(a2); puts(a3);puts(a4); return 0; }

输入: aa bb cc dd 输出: aa bb

cc dd 分析: 由于scanf("%s")输入字符串时,遇到空格就结束了输入。所以a[1]为aa、a[2]为bb前面scanf()在读取输入时会在缓冲区中留下一个字符’\n’(输入完a[i]的值后按回车键所致),gets()直接取走这个“无用的”回车符。故a[3]为’\n’。gets()函数是以回车为结束符,故a[4]为cc dd。

例2:

#include #define N 6 int main(){ char c[N]; int i=0; for(;i


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3