c语言经典程序100例50行以上,C语言非常简单的字符统计程序50行
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
该程序用于实现linux系统中wc命令的最简单模式
wc 命令用于统计文件中字符信息。
[xx@localhost 1.5]$ wc 01.c 02.c 03.c
15 23 131 01.c
13 18 127 02.c
14 20 128 03.c
42 61 386 总用量
使用c语言写出这种小程序。
/*
* Name: count.c
* Title: the number of line, word, characters in file
* Descripts: count the number of line, word, characters in file
* Author: lnesuper
* Copyrighte: GPL
* Date: 2015.5.25
* Use: count [file1] [file2]...
*/
#include
#include
#define IN 1 /* inside a word */
#define OUT 0 /* outside a word */
int main(int argc, char * argv[])
{
if (argc == 1) {
printf("\aUsing: count [file1] [file2]...\n");
exit(EXIT_FAILURE);
}
int c, nl, nw, nc, state; /* line, word, character */
int nl_total, nw_total, nc_total;
nl_total = nw_total = nc_total = 0;
int n;
for (n = 1; n < argc; n++) {
FILE * file = fopen(argv[n], "r");
if (file == NULL) {
printf("Can't open file %s\n", argv[n]);
exit(EXIT_FAILURE);
}
nl = nw = nc = 0;
state = OUT;
while ((c = fgetc(file)) != EOF) {
++nc;
if (c == '\n')
++nl;
if (c == ' ' || c == '\t' || c == '\n')
state = OUT;
else if (state == OUT) {
++nw;
state = IN;
}
}
nl_total += nl;
nw_total += nw;
nc_total += nc;
printf("%d %d %d %s\n", nl, nw, nc, argv[n]);
fclose(file);
}
// printf("total information:\n");
printf("%d %d %d total\n", nl_total, nw_total, nc_total);
return 0;
}
linux下编译运行结果
gcc -Wall -o count count.c
[lhf@localhost 1.5]$ ./count 01.c 02.c 03.c
15 23 131 01.c
13 18 127 02.c
14 20 128 03.c
42 61 386 total
[lhf@localhost 1.5]$ wc 01.c 02.c 03.c
15 23 131 01.c
13 18 127 02.c
14 20 128 03.c
42 61 386 总用量
可以看出与wc命令结果一致。
c语言经典程序100例50行以上,C语言非常简单的字符统计程序50行相关推荐
- c语言全面,最新版c语言经典习题100例(最全面).doc
最新版c语言经典习题100例(最全面).doc C语言习题100例(最新整理版) 习题目录:(按住Ctrl点击可以快速跳转到对应页面) TOC \o "1-3" \h \z \u ...
- c语言经典算法大全pdf,c语言经典算法100例pdf版.pdf
c语言经典算法100例pdf版 C 语言经典算法 100 例 C 语言编程经典 100 例 A:[程序1] 题目:有1.2.3.4 个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 1.程 ...
- 新颖的c语言题目,新颖版c语言经典习题100例(全面面)
新颖版c语言经典习题100例(全面面) (66页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 19.90 积分 实用文档C语言习题100例(最新整理版) ...
- C语言经典例题100例(一)
C语言经典例题100例(程序一) 程序一 有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 解: 首先看题本身是数字相互排列且不重复问题,用循环语句就可以解决.要求输出而是 ...
- C语言经典例程100例--【例程1~50】
[本部分内容源自网络,为方便学习,此处为复制版] 关于main()与_tmain()的说明: main()是标准C++的函数入口.标准C++的程序入口点函数,默认字符编码格式ANSI 函数签名为: i ...
- Mr.J--C语言经典编程100例
C语言,一般为初学者的首选语言,说简单也简单,但是要真正学好C语言,也是一件很难的事,懂了这些100个例题,也就算是入门了吧,毕竟语言要学的太多,这只是基础. [程序1] 题目:古典问题:有一对兔子, ...
- C语言经典算法100例-031-判断星期几
题目如下: 请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母. 比较简单,直接看程序吧. #include <stdio.h> #include < ...
- 优美图案c语言程序,C语言经典例题100例——C语言练习实例65解答(一个最优美的图案)...
题目:一个最优美的图案(在TC中实现). 程序分析:无. 程序源代码: // 百宝箱工作室官方网址 http://www.baibaox.com // 百宝箱工作室业务介绍 http://www.ba ...
- C语言经典算法100例
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔 子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数 为多少? _______________________ ...
- c语言经典例题100例
题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少? 1.程序分析:在10万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如果开方后 的 ...
最新文章
- mysql find_in_set
- Minimal BASH-like line editing
- opencv第一课 打开一个图片
- python玩转android_Android上执行python脚本-QPython
- 在Spring中使用JTA事务管理
- DM6467T开发板领航——dmai经验谈
- 技术回顾系列:最新最热门的技术大事-第一周
- android socket编程实例
- 区块链的本质是什么?写给区块链的未来十年
- android刷新界面的几种方法,Android UI更新的几种方法
- 网页抓取工具之数据预处理
- teamviewer 远程控制linux,Linux远程控制软件-TeamViewer
- 通用时与儒略日代码解析
- 基于89C51单片机的智能小车——06.测速小车
- Multisim基础 交流电源AC的Voltage offset的含义
- SystemUI之NavigationBar导航栏
- 树莓派python编程小车_00-树莓派做的遥控小车 python
- 吴忌寒有算力,我有的是钱,我打算用钱摧毁比特大陆|专访澳洲中本聪
- 各个专业375个国家级精品课程的网址
- Eclipse中使用Ant