程序设计语言_day_2_读写字符

这篇博客介绍了C语言中读写字符的基本函数getchar()和putchar(),并详细讨论了如何通过文件结束标志EOF、符号常量、不同类型的循环退出方式,如条件判断、break、goto和return语句,来控制程序流程。
摘要由CSDN通过智能技术生成

标准库提供的一次读写一个字符的函数 

  • getchar() 读入字符
  • putchar() 读出字符
//test_3 
//将输入一次一个字符的复制到输出

#include <stdio.h>

int main()
{
        char c;
        int count=0, line=0,space=0,tab=0;
        while ((c=getchar())!=EOF) {    //可拆成两个语句,输入c=getchar(); 判断c!=EOF;
        count++;                //统计字符个数
        if ( c ==  '\t' )       //设置退出循环条件 break
                break;
        if (c==' ')
                space++;        //统计空格的个数
        if (c=='\n')
                line++;         //统计行数
        }
        putchar(c);                     //输出
        }
        printf("count=%d,line=%d,space=%d\n", count, line, space);
        return 0;
}

 文件结束 EOF (end of file)

  • 符号常量

退出循环的方式

  • 判断条件为假
  • 执行过程中遇到break语句
  • 执行过程中遇到goto,且指向循环外侧
  • 执行过程中遇到return语句,直接退出函数且退出循环
//test_4
//单词计数

#include <stdio.h>

#define INWORD 1        //用符号常量处理magic number
#define OUTWORD 0

int main()
{
        char c;
        int count = 0, state = OUTWORD;
        while ( ( c = getchar() ) != EOF ) {
                if ( c == '.' )
                        break;
                if ( c == ' ' || c == '\t' || c == '\n' ) {     //单词是不包含任何空格,制表符,换行符的字符序列
                        state = OUTWORD;
                }
                else if ( state == OUTWORD ) {          //以读到一个单词的第一个字符作为加入一个新单词的判断依据
                        state = INWORD;
                        count++;
                }
        }
        printf("count=%d\n", count);
        return 0;
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值