作业:源代码计算器
要求:(目标一)给定一个源文件(.cs 或.java),计算出该文件的总行数,空行数和注释行数和代码行数。
程序源代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace ConsoleApplication1
{
public class Program
{
static void Main(string[] args)
{
int cnt = 0;
int zscnt=0;
int nullcnt=0;
//读取文件
StreamReader sr = new StreamReader("C:\\Users\\aoc\\Desktop\\1.cs");
string content = sr.ReadToEnd();
//存入字符串
string[] str = content.Split(new string[] { "\r\n" }, StringSplitOptions.None);
for (int i = 0; i < str.Length; i++)
{
Console.WriteLine("第 {0} 行: {1}", i + 1, str[i]);
cnt++;
nullcnt = konghang(nullcnt, str, i);//采用重构
zscnt = zhushihang(zscnt, str, i);//采用重构
}
Console.WriteLine("文件的总行有: {0}", cnt);
Console.WriteLine("带注释的行有: {0}", zscnt);
Console.WriteLine("空行有: {0}", nullcnt);
}
//判断是否空行
private static int konghang(int nullcnt, string[] str, int i)
{
if (str[i] == "")
nullcnt++;
return nullcnt;
}
//判断是否注释
private static int zhushihang(int zscnt, string[] str, int i)
{
bool a = (str[i].Contains("//"));
if (a)
{
zscnt++;
}
return zscnt;
}
}
}

总结(心得):其实算是刚开始接触C#吧,然后一开始就觉得老师就给这么有难度的一个题目。但后来做完成后觉得很简单。虽然只是完成目标一,但是收益不少。因为在做这个代码计算器的时候我对C#的“文件流”这一块的知识有了很深的了解了。希望老师多给这种针对性的题目,通过每次的作业能够对不同的模块进行了解。
------解决思路----------------------
呵呵
试试 File.ReadAllLines()
再试着处理 /* 。。。。 */
------解决思路----------------------
分享咯

------解决思路----------------------
恭喜小童鞋。
------解决思路----------------------
不错,值得鼓励
------解决思路----------------------
加油。
另外,看到最后那段话很感动。
说实话,这门课程给大家增加了很多困扰;在接下来的日子里,老师会全力以赴,投入到这门课程上来。谢谢理解与支持。