#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=0s[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
}
循环读入字符,遇到\n累计行数,最终输出累计值即可。
以EOF作为终止条件的代码如下:
#include <stdio.h>int main()
{
int cnt = 1//最少会输出一行,每遇到一个换行,表示多输入了一行。
int c
while((c = getchar())!=EOF)
{
if(c == '\n') cnt++//统计行数。
}
printf("%d\n",cnt)
return 0
}
#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
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)