行計數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行。