C程序设计语言笔记2
时间:2010-07-18 来源:xmg
用getchar()!=EOF来作为循环输入的条件,那么按回车是退不出循环的,
只有按Ctrl+z或F6才能退出循环
getchar()回显字符,自然会出现^z的字样,
按下回车,getchar()才能从键盘缓冲区中接收EOF(Ctrl+z或F6),
这时循环结束。再按任何键即退出程序。
IO1.0
#include <stdio.h> /* 将输入复制到输出;版本1 */ main() { int c; c = getchar(); while(c != EOF){ putchar(c); c = getchar(); } }
IO2.0
#include <stdio.h> /* 将输入复制到输出;版本2 */ main() { int c; while((c = getchar()) != EOF){ putchar(c); } }
nc1.0
#include <stdio.h> /* 统计输入的字符数;版本1 */ main() { long nc; nc = 0; while(getchar() != EOF) ++nc; printf("%ld\n", nc); }
nc2.0
#include <stdio.h> /* 统计输入的字符数;版本2 */ main() { double nc; for(nc = 0; getchar() != EOF; ++nc) ; /* 空语句 */ printf("%.0f\n", nc); }
nl1.0
#include <stdio.h> /* 统计输入的行数;版本1 */ main() { int c, nl; while((c = getchar()) != EOF) if(c == '/n') ++nl; printf("%d\n", nl); }
nbntnl1.0
#include <stdio.h> /* 统计输入的空格、制表符、换行符个数;版本1 */ main() { int c, nb, nt, nl; nb = 0; nt = 0; nl = 0; while((c = getchar()) != EOF){ if(c == ' '){ ++nb; } if(c == '\t'){ ++nt; } if(c == '\n'){ ++nl; } } printf("%d %d %d", nb, nt, nl); }
nbntnl2.0
#include <stdio.h> /* 统计输入的空格、制表符、换行符个数;版本2 */ main() { int c, nb, nt, nl; nb = 0; nt = 0; nl = 0; while((c = getchar()) != EOF){ if(c == ' '){ ++nb; } else if(c == '\t'){ ++nt; } else if(c == '\n'){ ++nl; } } printf("%d %d %d", nb, nt, nl); }
相关阅读 更多 +