如何对每个用户输入进行编号?C#
刚开始学习C#,我的问题是如何按如下顺序记录用户输入:如何对每个用户输入进行编号?C#,c#,C#,刚开始学习C#,我的问题是如何按如下顺序记录用户输入:score 1: score 1: 98 score 2: 76 score 3: 65 score 4: 78 score 5: 56 在我的代码中,我可以输入数字,但似乎无法设置顺序。如何实现这一目标 我的意见: 98 76 65 78 56 代码: 使用系统; 使用System.Collections.Generic; 使用System.Linq; 使用系统文本; 使用System.Threading.Tasks; 命名空间MyGr
score 1:
score 1: 98
score 2: 76
score 3: 65
score 4: 78
score 5: 56
在我的代码中,我可以输入数字,但似乎无法设置顺序。如何实现这一目标
我的意见:
98
76
65
78
56
代码:
使用系统;
使用System.Collections.Generic;
使用System.Linq;
使用系统文本;
使用System.Threading.Tasks;
命名空间MyGrade03
{
公共课程
{
private int total;//等级之和
private int gradeCounter;//输入的分数
private int aCount;//等级的计数
private int bCount;//B级计数
private int cCount;//C级计数
private int dCount;//D级的计数
private int fCount;//F级计数
私有字符串v;
公共字符串CourseName{get;set;}
公共程序(字符串名称)
{
CourseName=名称;
}
public void DisplayMessage()
{
Console.WriteLine(“欢迎来到\n{0}!\n的成绩册”,
CourseName);
}
public void InputGrade()
{
国际等级;
字符串输入;
Console.WriteLine(“{0}\n{1}”,
“输入0-100范围内的整数等级”,
键入z并按Enter键终止输入:);
input=Console.ReadLine();//读取用户输入
while(输入!=null)
{
grade=Convert.ToInt32(输入);//读取用户输入的等级
总计+=等级;//将等级添加到总计
gradeCounter++;//增加等级数
递增字母等级计数器(等级);
input=Console.ReadLine();
}
}
专用void IncrementLetterGradeCounter(内部等级)
{
道岔(10级)
{
案例9://年级在90年代
案例10:
++A账户;
打破
案例8:
++b计数;
打破
案例7:
++会计科目;
案例6:
++数据计数;
打破
违约:
++F计数;
打破
}
}
公共报告()
{
Console.WriteLine(“\n交易报告”);
如果(坡度计数器!=0)
{
双倍平均值=(双倍)总计/成绩计数器;
WriteLine(“输入的{0}个等级的总数为{1}”,
成绩计数器(总计);
WriteLine(“类平均值为{0:F}”,平均值);
Console.WriteLine(“{0}A:{1}\nB:{2}\nC:{3}\nD:{4}\nF:{5}”,
“每个年级的学生人数:\n”,
一个帐户,
b计数,
帐户,
D计算,
f计数);
}
其他的
Console.WriteLine(“未输入等级”);
}
静态void Main(字符串[]参数)
{
程序mygradebook=新程序(
“CS101 C3编程简介”);
mygradebook.DisplayMessage();
mygradebook.InputGrade();
mygradebook.DisplayGradeReport();
}
}
}
有很多数据结构可以让您按顺序存储数据。我个人会为此推荐一种新的方法
您可以简单地向其中添加内容,如下所示:
var list = new List<int>();
list.Add(37);
list.Add(95);
var list=newlist();
增加(37);
增加(95);
您可以使用迭代器(
foreach(列表中的var分数){…}
)读取它,也可以从中取出单个数字(var firstScore=list[0]
)。文档将向您详细介绍如何使用列表您可以在C#()中查找可用的集合
在您的情况下,您并不真正关心顺序,您可以使用List
。否则,如果您想保留订单,可以使用堆栈
或队列
。如果你想保留学生姓名+分数的集合,你可以使用字典声明一个变量来计算输入,比如私有静态int counter=0代码>
在InputGrade
方法中,输入如下内容
Console.WriteLine("{0}\n{1}",
"Enter the integer grades in the range 0-100",
"Type <Ctrl> z and press Enter to terminate input:");
counter++;
System.Console.Write("score " + counter + ":");
input = Console.ReadLine(); //read user input
所以,输出将是
这是完整的代码
public class Program
{
private int total; // sum of grades
private int gradeCounter; //number of grades entered
private int aCount; // Count of A grades
private int bCount; // Count of B grades
private int cCount; // Count of C grades
private int dCount; // Count of D grades
private int fCount; // Count of F grades
private string v;
private static int counter = 0;
public string CourseName { get; set; }
public Program(string name)
{
CourseName = name;
}
public void DisplayMessage()
{
Console.WriteLine("Welcome to the grade book for \n{0}!\n",
CourseName);
}
public void InputGrade()
{
int grade;
string input;
Console.WriteLine("{0}\n{1}",
"Enter the integer grades in the range 0-100",
"Type <Ctrl> z and press Enter to terminate input:");
counter++;
System.Console.Write("score " + counter + ":");
input = Console.ReadLine(); //read user input
while (input != null)
{
grade = Convert.ToInt32(input); //read grade off user input
total += grade;// add grade to total
gradeCounter++; // increment number of grades
IncrementLetterGradeCounter(grade);
counter++;
System.Console.Write("score " + counter + ":");
input = Console.ReadLine();
}
}
private void IncrementLetterGradeCounter(int grade)
{
switch (grade / 10)
{
case 9: //grade was in the 90s
case 10:
++aCount;
break;
case 8:
++bCount;
break;
case7:
++cCount;
case6:
++dCount;
break;
default:
++fCount;
break;
}
}
public void DisplayGradeReport()
{
Console.WriteLine("\nGrade Report");
if (gradeCounter != 0)
{
double average = (double)total / gradeCounter;
Console.WriteLine("Total of the {0} grades entered is {1}",
gradeCounter, total);
Console.WriteLine("class average is {0:F}", average);
Console.WriteLine("{0}A: {1}\nB: {2}\nC: {3}\nD: {4}\nF: {5} ",
"Number of students who received each grade: \n",
aCount,
bCount,
cCount,
dCount,
fCount);
}
else
Console.WriteLine("No grades were entered");
}
static void Main(string[] args)
{
Program mygradebook = new Program(
"CS101 introduction to C3 programming");
mygradebook.DisplayMessage();
mygradebook.InputGrade();
mygradebook.DisplayGradeReport();
Console.ReadKey();
}
}
公共类程序
{
private int total;//等级之和
private int gradeCounter;//输入的分数
private int aCount;//等级的计数
private int bCount;//B级计数
private int cCount;//C级计数
private int dCount;//D级的计数
private int fCount;//F级计数
私有字符串v;
专用静态整数计数器=0;
公共字符串CourseName{get;set;}
公共程序(字符串名称)
{
CourseName=名称;
}
public void DisplayMessage()
{
Console.WriteLine(“欢迎来到\n{0}!\n的成绩册”,
CourseName);
}
public void InputGrade()
{
国际等级;
字符串输入;
Console.WriteLine(“{0}\n{1}”,
“输入0-100范围内的整数等级”,
键入z并按Enter键终止输入:);
计数器++;
System.Console.Write(“分数”+计数器+:”);
input=Console.ReadLine();//读取用户输入
while(输入!=null)
{
grade=Convert.ToInt32(输入);//读取用户输入的等级
总计+=等级;//将等级添加到总计
gradeCounter++;//增加等级数
递增字母等级计数器(等级);
计数器++;
系统
IncrementLetterGradeCounter(grade);
counter++;
System.Console.Write("score " + counter + ":");
input = Console.ReadLine();
public class Program
{
private int total; // sum of grades
private int gradeCounter; //number of grades entered
private int aCount; // Count of A grades
private int bCount; // Count of B grades
private int cCount; // Count of C grades
private int dCount; // Count of D grades
private int fCount; // Count of F grades
private string v;
private static int counter = 0;
public string CourseName { get; set; }
public Program(string name)
{
CourseName = name;
}
public void DisplayMessage()
{
Console.WriteLine("Welcome to the grade book for \n{0}!\n",
CourseName);
}
public void InputGrade()
{
int grade;
string input;
Console.WriteLine("{0}\n{1}",
"Enter the integer grades in the range 0-100",
"Type <Ctrl> z and press Enter to terminate input:");
counter++;
System.Console.Write("score " + counter + ":");
input = Console.ReadLine(); //read user input
while (input != null)
{
grade = Convert.ToInt32(input); //read grade off user input
total += grade;// add grade to total
gradeCounter++; // increment number of grades
IncrementLetterGradeCounter(grade);
counter++;
System.Console.Write("score " + counter + ":");
input = Console.ReadLine();
}
}
private void IncrementLetterGradeCounter(int grade)
{
switch (grade / 10)
{
case 9: //grade was in the 90s
case 10:
++aCount;
break;
case 8:
++bCount;
break;
case7:
++cCount;
case6:
++dCount;
break;
default:
++fCount;
break;
}
}
public void DisplayGradeReport()
{
Console.WriteLine("\nGrade Report");
if (gradeCounter != 0)
{
double average = (double)total / gradeCounter;
Console.WriteLine("Total of the {0} grades entered is {1}",
gradeCounter, total);
Console.WriteLine("class average is {0:F}", average);
Console.WriteLine("{0}A: {1}\nB: {2}\nC: {3}\nD: {4}\nF: {5} ",
"Number of students who received each grade: \n",
aCount,
bCount,
cCount,
dCount,
fCount);
}
else
Console.WriteLine("No grades were entered");
}
static void Main(string[] args)
{
Program mygradebook = new Program(
"CS101 introduction to C3 programming");
mygradebook.DisplayMessage();
mygradebook.InputGrade();
mygradebook.DisplayGradeReport();
Console.ReadKey();
}
}