指针及其应用——成绩统计

img

img


这个代码在dev-c++上运行没有问题,但是在头歌上好像进行了死循环,无法以'\n'作为标志来结束代码,请问我该怎么完善这个循环呢

把 \n 换成 EOF 试试

第55行改为:while((getchar()) != '\n'); 在getchar() 外再加一对括号如 (getchar()) != '\n'

  • 你可以看下这个问题的回答https://ask.csdn.net/questions/7554698
  • 这篇博客你也可以参考下:头歌C/C++实训 指针实训《去掉字符串首尾空格》
  • 除此之外, 这篇博客: 头歌--C++之函数应用中的 第2关:编写内联函数求圆的面积 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 本关要求编写内联函数CalArea(double radius)来求圆的面积(其中:Pi=3.14)。

    本关的编程任务是实现step2/InlineFunEx.cpp文件中的内联函数CalArea,该文件代码如下:

    1. #include <iostream>
    2. using namespace std;
    3. // 请在下面添加内联函数的实现代码
    4. /******** Program ********/
    5. /********** End **********/
    6. int main()
    7. {
    8. double radius, area;
    9. // 从命令行读入一个double型数值
    10. // 这个数取自测试集的输入
    11. cin >> radius;
    12. double r(radius);
    13. area = CalArea(r);
    14. cout << area << endl;
    15. }

    本关的测试文件仍然是step2/InlineFunEx.cpp,负责对你写的实现代码进行测试。

    以下是平台对step2.InlineFunEx的测试样例:
    测试输入:1
    预期输出:3.14

    测试输入:2
    预期输出:12.56

    测试输入:1.5
    预期输出:7.065

    开始你的任务吧,祝你成功!

    #include <iostream>
    #define Pi 3.14
    using namespace std;
    
    // 请在下面添加内联函数的实现代码
    /******** Program ********/   
    double CalArea(double &r)
    
    {
        double S;
        S=Pi*r*r;
        return S;
    }
    
    /********** End **********/ 
    
    int main()
    {
        double radius, area;
    
        // 从命令行读入一个double型数值
        // 这个数取自测试集的输入
        cin >> radius;
    
        double r(radius);
        area = CalArea(r);
        cout << area << endl;
    }
    

    本关要求编写内联函数Min(float x, float y)来求两个数的较小值。

    本关的编程任务是实现step3/FindMinOfInline.cpp文件中的Min函数,该文件代码如下:

    1. #include <iostream>
    2. using namespace std;
    3. // 请在下面添加内联函数的实现代码
    4. /******** Program ********/
    5. /********** End **********/
    6. int main()
    7. {
    8. float a, b, c;
    9. // 从命令行读入两个float型数值
    10. // 这两个数取自测试集的输入
    11. cin >> a >> b;
    12. c = Min(a,b);
    13. cout << "Min(" << a << "," << b << ")=" << c << endl;
    14. }

    本关的测试文件仍然是step3/FindMinOfInline.cpp,负责对你写的实现代码进行测试。

    以下是平台对step3.FindMinOfInline的测试样例:
    测试输入:10.5 15
    预期输出:Min(10.5,15)=10.5

    测试输入:-21.1 1.25
    预期输出:Min(-21.1,1.25)=-21.1

    测试输入:-100 -125
    预期输出:Min(-100,-125)=-125

    开始你的任务吧,祝你成功!

    #include <iostream>  
    using namespace std;  
    
    // 请在下面添加内联函数的实现代码
    /******** Program ********/  
    float Min(float x,float y)
    {
        return (x<y?x:y);
    }
    
    /********** End **********/ 
    
    int main()
    {
        float a, b, c;
        
        // 从命令行读入两个float型数值
        // 这两个数取自测试集的输入
        cin >> a >> b;
    
        c = Min(a,b);    
        cout << "Min(" << a << "," << b << ")=" << c << endl;
    }