c程序设计语言官方题解版勘误1
#include <stdio.h>
#define MAXHIST 15
#define MAXWORD 11
#define IN 1
#define OUT 0
//打印输入中单词长度的水平方向直方图,
void main()
{
int c, i, nc, state;
int len; //length of each bar
int maxvalue; //maximum value for wl[]
int ovflow; //number of overflow words
int wl[MAXWORD]; //word length count
state = OUT;
nc = 0; //number of chars in a word
ovflow = 0;
for (i = 0; i < MAXWORD; ++i)//数组初始化
wl[i] = 0;
while((c = getchar()) != EOF){
if (c == ' ' || c == '\n' || c == '\t'){
state = OUT;
if(nc > 0)
if(nc < MAXWORD)
++wl[nc];
else
++ovflow;
nc = 0;
}else if (state == OUT){
state = IN;
nc = 1;
}else
++nc;
}
maxvalue = 0;
for (i = 1; i < MAXWORD; ++i)
if (wl[i] > maxvalue)
maxvalue = wl[i];
for (i = 1; i < MAXWORD; ++i){
printf("%5d - %d : ",i, wl[i]);
if(wl[i] > 0) {
if((len * wl[i] * MAXHIST / maxvalue) <= 0)
len = wl[i];//书上此处本来为len = 1
}else
len = 0;
while (len > 0){
putchar('*');
--len;
}
putchar('\n');
}
if (ovflow > 0)
printf("There are %d words >= %d\n", ovflow, MAXWORD);
}
相关文档:
上学期间基本上都在windows下编程,就是学了一点LINUX,也是一些基本操作,在LINUX下编程几乎没有过,上班后都是在UNIX下的开发,突然之间有点感觉自己无处下手,感觉不会了,组长让我编一个程序,我想了半天在网上查了半天,有点思路了,在编译时确实错误连连,感觉都很有压力,但我会慢慢习惯的,我相信自己。
问题:
1 ......
C语言文件操作接触很久了,一直没有总结相关内容,今天用到了就去找了找相关内容。
在ANSI C中,对文件的操作分为两种方式,即流式文件操作和I/O文件操作
typedef struct {
int level; /* fill/empty level of buffer */
unsigned flags; /* File status flags */
char fd; /* File descriptor */
unsigned char hold ......
Python 3 输出重定向使用C/C++
By:gddsky
目标
希望将Python 3的输出重定向到自定义的输出目标。
核心
Python使用sys.stdout、sys.stderr做输出目标,只要我们替换这两个值就可以重定向到我们自定义目标。替换的值的规则在Python的文档中sys (module)的sys.stdout上面说明只要添加一个write函数就可以 ......
from:邹鑫的专栏
什么时候需要创建线程池呢?简单的说,如果一个应用需要频繁的创建和销毁线程,而任务执行的时间又非常短,这样线程创建和销毁的带来的开销就不容忽视,这时也是线程池该出场的机会了。如果线程创建和销毁时间相比任务执行时间可以忽略不计,则没有必要使用线程池了。
&n ......
1、开发环境请参考《搭建ACE-5.7.4+VS2008开发环境》一文
2、gSOAP库,下载地址:http://gsoap2.sourceforge.net/,本文使用的版本是:gsoap_2.7.15,gSOAP的编程可以参考doc目录下的soapdoc2.pdf,官方文档写的非常详细。
让我们开始gSOAP编码旅程:
1、创建gsoap_server.h:
//gsoap ns2 service namespace: http://l ......