行计数c语言程序
‘壹’ 请编写程序统计一个.cpp文件的行数(c语言)
#include"stdio.h"
#include"string.h"
int main()
{ int i,j,n=0;
char s[200];
FILE*fp;
fp=fopen("0.cpp","r");
while(!feof(fp))
{fgets(s,200,fp);
// printf("%s",s);
for(i=0;s[i]==' ';i++);
if(s[i]=='/'&&s[i+1]==' ')continue;
if(s[i]=='('&&s[i+1]==')')continue;
if(strlen(s)==1)continue;
n++;
}
printf("%d\n",n);
fclose(fp);
return 0;
}
‘贰’ 小白 C语言 行计数
#include<stdio.h>
int main()
{
int c,nl;
nl=0;
/*
注意是: (c=getchar())!=EOF
而不是: c=getchar()!=EOF
因为 "!=" (逻辑运算符不等于)比 "=" (赋值运算衡孝符等于) 的优先级要高
因此, c=getchar()!=EOF 等价于 c = (getchar()!=EOF) ,
也就嫌搜是 c 的是一个逻辑值:0 (输入不是换行时)或 1 (输入是换行时)
c 不在是输入的字符,不符合芹拦历你的预期。
你的预期是: c 是输入的字符,然后 c 和 EOF 比较,因此,是 (c=getchar())!=EOF
*/
while((c=getchar())!=EOF)
if(c=='\n')
++nl;
printf("%d\n",nl);
}
‘叁’ 编写一个程序,统计一个文本文件的行数(C语言)
#include<stdio.h>
main()
{FILE *fp,*fp1;
int cap=0, i=1;
char mid,filename[10];
printf("Input the filename like *.txt!\n");
scanf("%s",filename);
if((fp=fopen(filename,"r"))==NULL)
{printf("Can not open the file!\n");
exit (0);
}
if((fp1=fopen("stdout.txt","w+"))==NULL)
{printf("Can not open the file!\n");
exit (0);
}
while(!feof(fp))
{
mid=fgetc(fp);
if(mid=='\n') cap++;
}
fclose(fp);
if((fp=fopen(filename,"r"))==NULL)
{printf("Can not open the file!\n");
exit (0);
}
fprintf(fp1,"%d ",i++);
while(!feof(fp))
{
if(fputc(fgetc(fp),fp1)=='\n')
fprintf(fp1,"%d ",i++);
}
printf("cap=%d \n",cap+1);
fclose(fp);
fclose(fp1);
}
//相信你可以自己新建一个文本文件来实验这个程序了烂歼,当然
//stdout.txt是程序自己建立的猛游,我运行的没有什么问题!
//如果有兴趣的话,可以加枝历销我qq,彼此交流经验,共同进步
//qq:237263394
‘肆’ 用C语言写程序输出要求控制每行输出五个数,怎么控制
在C语言写程序输出时,要控制每行输出数据的个数,可以通过自定义计数器来完成。
如:
//输出自然数1-30,每5个数为一行
main()
{inti;
intcnt=0;//定义cnt用作输出数据的计数器,初始为0
for(i=1;i<蚂清=30;i++)//循环30次
{printf("%5d",i);派带//输出数据值
cnt++;//每输出一个值,计尘物芦数器加一次
if(cnt%5==0)//假设每行输出5个(如果计数器与5取余为0,则换行)
printf("
");//输出换行
}
}
‘伍’ C语言编写程序统计输入的行数
循环读入字符,遇到 累计行数,最终输出累计值即可。
以EOF作为终止条件的代码如下:
#include<stdio.h>
intmain()
{
intcnt=1;//最少会输出一行,每遇到一个换行,表示多输入了一行。
intc;
while((c=getchar())!=EOF)
{
if(c==' ')cnt++;//统计行数。
}
printf("%d ",cnt);
return0;
}
‘陆’ C语言 行计数程序显示有错
行应该是从1开始计数的
否则如果不输入回车,单独一行,你这个就错误了
或者洞尘最后肆迹一行没有回车效果也是一样,会导致错误
另外while后面的语句最好用大括号括起来
最后,你这纳雹禅个结束的条件是getchar函数出错,而且没有回显
程序运行之后,输入任何东西都没有显示,而且无法正常结束
只能强制终止,但会导致printf函数无法执行
整个代码需要重写
‘柒’ c语言 行计数程序
#include <stdio.h>
main()
{FILE *fp;
int line=0;
clrscr();
if((fp=fopen("你文件的路径","r"))==NULL)
{printf("Can't open file!\n");
exit(0);}
while(!feof(fp))
if(fgetc(fp)=='\n') line++;
fclose(fp);
printf("%d",line);
}
printf("%d",line);
}
‘捌’ 如何用C语言编写这个计数程序
按照题目要求编写的C语言计数程序如下
#include<stdio.h>
int main(){
int i,start,end,step;
printf("从哪个数字开始计数:");
scanf("%d",&start);
printf("在哪个数字停止计数:");
scanf("%d",&end);
printf("每次增加的数字:");
scanf("%d",&step);
for(i=start;i<=end;i=i+step){
printf("%d ",i);
}
return 0;
}
‘玖’ 试写一个C语言程序统计输入的字符串中,包含的字符数,行数及单词数
#include<stdio.h>
#defineIN1//在单词内
#defineOUT0//在单词外
/**
*统计输入的行数,单词数与字符数
*/
intmain(void)
{升埋和
//c:每次读的支付,nl:行数,nw:单词数,nc:字符数,state:标示状态
intc,nl,nw,nc,state;
state=OUT;
吵盯nl=nw=nc=0;
while((c=getchar())!=EOF)
{
++nc;
if(c==' '){
++nl;
}
if(c==''||c==' '||c==液枝' '){
state=OUT;
}elseif(state==OUT){
state=IN;
++nw;
}
}
printf("%d%d%d",nl,nw,nc);
return0;
}
‘拾’ 统计文件行数 c语言
统计行数可以通过统计换行符 来实现。不过需要注意的是,有些文件最后一行并不存在换行符,所以代码中需要对此作处理。
可以在达到文件结尾后,判断前一个字符,如果不是换行符,那么应补加最后一行统计。
代码如下:
假定输入文件为in.txt,该文件存在且可读。
#include<stdio.h>
intmain()
{
FILE*fp=NULL;//文件指针。
intc,lc=0;//c为文件当前字符,lc为上一个字符,供结尾判断用。
intline=0;//行数统计
fp=fopen("in.txt","r");//以只读方式打开文件。
while((c=fgetc(fp))!=EOF)//逐个读入字符直到文件结尾
{
if(c==' ')line++;//统计行数。
lc=c;//保存上一字符。
}
fclose(fp);//关闭文件
if(lc!=' ')line++;//处理末行
printf("文件共有%d行。 ",line);
return0;
}
样例输入输出:
如in.txt有如下内容:
testline1
testline2
则会输出:
文件共有2行。