Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我很难弄明白为什么我的代码不会打印GPA的计算结果_C#_Visual Studio 2012 - Fatal编程技术网

C# 我很难弄明白为什么我的代码不会打印GPA的计算结果

C# 我很难弄明白为什么我的代码不会打印GPA的计算结果,c#,visual-studio-2012,C#,Visual Studio 2012,----这最后一部分是我认为是错误的,但我不知道如何修复它。它不会输出实际计算的gpa,您需要这一行- using System; namespace gpa { class gpa { static void Main(string [] args) { double credit = 0; double totalCreditHours = 0; char grade = '

----这最后一部分是我认为是错误的,但我不知道如何修复它。它不会输出实际计算的gpa,您需要这一行-

using System;

namespace gpa
{
    class gpa
    {
        static void Main(string [] args)
        {
            double credit = 0;
            double totalCreditHours = 0;

        char grade = ' ';
        double gradePoints = 0;
        double totalGradePoints = 0;

        int counter = 0;
        double gpa = 0;

        do 
        {
            Console.Write("Enter letter grade for class #{0} \n(use A, B, C, or D. Type 0 after all classes entered.): ", counter += 1);
            char userInput = char.Parse(Console.ReadLine());

            if (userInput == '0')
            {
                break;
            }

            else 
            {
                grade = userInput;
                Console.Write("Enter your credit hours: ");
                credit = int.Parse(Console.ReadLine());

                switch (grade)
                {
                    case 'A': gradePoints = 4;
                        break;
                    case 'B': gradePoints = 3;
                        break;
                    case 'C': gradePoints = 2;
                        break;
                    case 'D': gradePoints = 1;
                        break;

                }

                totalGradePoints = totalGradePoints + (credit * gradePoints);
                totalCreditHours = totalCreditHours + credit;

            } 

        } while (grade != 0);

            gpa = CalculateGPA(totalGradePoints, totalCreditHours);
            Console.Write("Your GPA is ", gpa);

            Console.ReadKey();
        }


        static double CalculateGPA(double totalGradePoints, double totalCreditHours)
        {
            return (totalGradePoints / totalCreditHours);

        }
    }
}


你需要这条线-

using System;

namespace gpa
{
    class gpa
    {
        static void Main(string [] args)
        {
            double credit = 0;
            double totalCreditHours = 0;

        char grade = ' ';
        double gradePoints = 0;
        double totalGradePoints = 0;

        int counter = 0;
        double gpa = 0;

        do 
        {
            Console.Write("Enter letter grade for class #{0} \n(use A, B, C, or D. Type 0 after all classes entered.): ", counter += 1);
            char userInput = char.Parse(Console.ReadLine());

            if (userInput == '0')
            {
                break;
            }

            else 
            {
                grade = userInput;
                Console.Write("Enter your credit hours: ");
                credit = int.Parse(Console.ReadLine());

                switch (grade)
                {
                    case 'A': gradePoints = 4;
                        break;
                    case 'B': gradePoints = 3;
                        break;
                    case 'C': gradePoints = 2;
                        break;
                    case 'D': gradePoints = 1;
                        break;

                }

                totalGradePoints = totalGradePoints + (credit * gradePoints);
                totalCreditHours = totalCreditHours + credit;

            } 

        } while (grade != 0);

            gpa = CalculateGPA(totalGradePoints, totalCreditHours);
            Console.Write("Your GPA is ", gpa);

            Console.ReadKey();
        }


        static double CalculateGPA(double totalGradePoints, double totalCreditHours)
        {
            return (totalGradePoints / totalCreditHours);

        }
    }
}


您得到的错误是什么?您所说的“它不会输出实际计算的gpa”是什么意思?您的计算是否错误,控制台是否没有显示任何内容,或者您从未到达该代码块?您缺少{0}->“您的GPA为{0}”是否有办法设置默认值,以便如果用户输入的字母不是B C D或F,它将给出错误消息??您得到的错误是什么?您的意思是什么“它不会输出实际计算的gpa”?您的计算是否错误,控制台是否没有显示任何内容,或者您是否从未到达该代码块?您缺少{0}->“您的gpa为{0}”"有没有办法设置默认值,以便用户输入的不是B C D或F的字母会发出错误消息?有没有办法设置默认值,以便用户输入的不是B C D或F的字母会发出错误消息?有没有办法设置默认值,以便用户输入的不是B C D或F的字母会发出错误消息它将给出一个错误消息??
Console.Write("Your GPA is {0}" ,gpa);