2018/06/13 c程序设计 字符输入/输出

getchar
putchar


c=getchar
putchar(c)




1.5.1 文件复制


读一个字符
while(该字符不是文件结束指示符)
输出刚读入的字符
读下一个字符
#include<stdio.h>
/*将输入复制到输出;版本1*/
main()                      /*定义*/
{
   int c;                  /*确定C类型*/
   c=getchar();              /*读取字符*/
   while(c!=EOF){           /*该字符不是文件结束指示符*/
         putchar(c);        /*输出该字符*/
         c=getchar();       /*读取下一个字符*/
           }
}



#include<stdio.h>
/*将输入复制到输出;版本2*/
main()                             /*定义*/
{
   int c                           /*确定C类型*/
   while((c=getchar())!=EOF)       /*将C赋予一个值且该字符不是文件结束指示符*/
         putchar(c);               /*输出该字符*/       
}
#include<stdio.h>
/*统计输入字符数;版本1*/
main()                             /*定义*/
{
     long nc;                      /*确定nc类型*/
     nc=0;                         /*nc初始值为0*/
     while(getchar()!=EOF)         /*while所取数值不为文件结尾*/
           ++nc;                   /*则nc=nc+1,加1操作*/
     printf("%ld\n",nc);           /*显示为nc*/
}

++运算符,执行+1操作,等于语句nc=nc+1

字符计算,最好用long类型的变量存放计数值,以防数据溢出。

#include<stdio.h>
/*统计输入字符数双精度浮点数;版本2*/
main()                             /*定义*/
{
     double nc;                      /*确定nc类型*/
     for(nc=0;getchar()!=EOF;++nc);
/*for,nc等0开始,取值非文件结尾的情况下,n值加1*/
     printf("%.0f\n",nc);           /*显示为nc*/
}

1.5.3 行计数

#include <stdio.h>
/*统计输入中的行数*/
main()                         /*定义*/
{
  int c,n1;                    /*确定c,n1类型*/
  n1=0;                        /*n1从0开始*/
  while((c=getchar())!=EOF)    /*当C不是结束字符时*/
       if (c=='\n\')           /*如果C逻辑上等于*/
           ++n1;               /*则等于n初始数值加1*/
  printf("%d\n",n1);           /*显示n1计算数值*/
}

==表示逻辑上的“等于”,=表示的是一个运算符
""
''单引号中的字符表示一个整型值,等于该字符在(机器字符集)中对应的数值,即字符常量。



阅读更多
换一批

没有更多推荐了,返回首页