总结:C语言字符串输入的三种方式(scanf("%c",array); scanf("%s",str); gets(array);)
2018-11-19 12:47
253 查看
1、以scanf("%c",&array);的格式输入字符串;
由于%c是输入一个字符,若需要输入字符串时我们可以创建数组或指针配合循环(while,do{}while,for)来达到目的。如下例利用do{}while及数组来输入字符串,并重新输出,以字符#为结束标志:
#include<stdio.h> int main(void) { char array[50]; int i=0; do{ scanf("%c",&array[i]); }while(array[i]!='#' && ++i); array[i]='\0'; printf("The string is:%s\n",array); return 0; }
运行效果:
2、以scanf("%s",str);格式输入字符串:
这种形式输入字符串,会以空白键为结束输入标志(空格键,回车…),比如输入“Hello world”,输出只有“Hello”,并且会把这些空格键,回车…保留在标准输入缓冲区,所以一般用fflush(stdin)来清空;
实现第一个例子:
#include<stdio.h> int main(void) { char str[50]; scanf("%s",str); fflush(stdin);//在这些简单的程序不加也可以正常输出 printf("The string is:%s\n",str); return 0; }
运行结果:
3:以gets(array);格式输入字符串:
这种输入字符串方式会保留空格符,以回车结束输入,并把输入的数据保存在数组array中;比如实现第一个例子:
#include<stdio.h> int main(void) { char array[50]; gets(array); printf("The string is:%s\n",array); return 0; }
运行效果:
笔者不才,读者看到有错请指出,笔者必改
相关文章推荐
- 【C语言天天练(十五)】字符串输入函数fgets、gets和scanf
- c语言获取用户输入字符串是scanf和gets的区别
- c语言获取用户输入字符串是scanf和gets的区别
- C语言中scanf()与gets()在输入字符串的差别
- 【C语言天天练(十五)】字符串输入函数fgets、gets和scanf
- c语言获取用户输入字符串是scanf和gets的区别
- gets与scanf_C语言中两种字符串输入方法比较
- c语言获取用户输入字符串是scanf和gets的区别详解
- scanf( )和gets如何用C语言从键盘上输入并打印一串字符串的比较
- c语言中scanf输入带空格的字符串以及scanf输入单个字符的问题
- c语言的输入scanf、getchar、gets解析
- (c语言)回文字符串的判断,gets和scanf
- C语言字符数组的输入与输出:scanf,printf,getchar,putchar,gets使用方法
- C语言的字符串输入gets()函数
- #C语言 fgets, gets, scanf对于输入完毕后的回车符的处理
- 浅谈scanf,getchar,gets分别输入字符串有什么区别
- C语言输入中对scanf和gets的讨论
- C语言的字符串输入函数gets_s()
- 字符串输入函数,scanf,gets,fgets的用法和区别
- gets和scanf输入字符串的比较