C语言_字符+字符串的输入输出

//大写转换
if('a'<=ch&&ch<='z')
ch=ch-'a'+'A';
或者
#include "ctype.h"
ch=toupper(ch);
//读写字符

scanf("%c",&ch);
//在读字符之前,scanf不会跳过空白字符
或者
ch=getchar();
//缓冲区不空并且缓冲区中有回车就会取字符

scanf(" %c",&ch);
//在%c前加一个空格,会跳过空白字符

getchar和putchar的效率高于scanf和printf
1.scanf和printf可以读写多种类型数据
2.getchar和putchar通常作为宏实现

scanf("%d",&n);
scanf("%c",&ch);
//ch中保存的是输入n后,按下的“回车”
//为了存入我们需要的字符,利用getchar()吞掉回车
scanf("%d",&n);
getchar();
scanf("%c",&ch);
//字符串
char a[size];
gets(a);
//不接收回车符,但接受空格、制表符,以换行为结束标记,停止读入
//在末尾自动补上一个\0,即存储一个空字符
//gets不会在开始读字符串前跳过空白字符,scanf会
puts(a);
//puts会在写完字符串后,添加一个换行符,即自动换行


scanf("%s",a);
//scanf不接收任意空白字符(不仅包括换行还有空格,制表),作为当前串的结束标记,停止读入。
//不需要添加&,因为a是数组名,会把它方程指针处理
//在末尾自动补上一个\0,即存储一个空字符
//scanf会在开始读字符串前跳过空白字符
printf("%s\n",a);
printf("%.5s\n",a);
//显示前5个字符
发布了24 篇原创文章 · 获赞 2 · 访问量 398

猜你喜欢

转载自blog.csdn.net/yyp1998/article/details/105078787