zoukankan      html  css  js  c++  java
  • [NOI题库]1.2编程基础之变量定义、赋值及转换 题解

    01 整型数据类型存储空间大小

          这题要用到 sizeof 这个函数(其实严格说来也不能这么叫,它的执行是在编译过程中而非运行时),依次输出 sizeof(int) 和 sizeof(short) 即可。

    #include <iostream>
    using namespace std;
    int main()
    {
        int a;
        short b;
        cout<<sizeof(a)<<" "<<sizeof(b)<<endl;
        return 0;
    }
    01.cpp

    02 浮点型数据类型存储空间大小

          依次输出 sizeof(float) 和 sizeof(double)

    #include <iostream>
    using namespace std;
    int main()
    {
        float a;
        double b;
        cout<<sizeof(a)<<" "<<sizeof(b)<<endl;
        return 0;
    }
    02.cpp

    03 其他基本数据类型存储空间大小

          依次输出 sizeof(bool) 和 sizeof(char)

    #include <iostream>
    using namespace std;
    int main()
    {
        bool a;
        char b;
        cout<<sizeof(a)<<" "<<sizeof(b)<<endl;
        return 0;
    }
    03.cpp

    04 填空:类型转换1

          因为用 "%d%d" 进行输出,故$a,b$均为整数,排除A,B,E,F。显然赋值为32768时,对$a$没有问题,对$b$则发生了溢出,所以在选项中,$a$只能为 int 类型,$b$只能为 short 类型。答案为DC。

    #include <iostream>
    using namespace std;
    int main()
    {
        cout<<"D C"<<endl;
        return 0;
    }
    04.cpp

    05 填空:类型转换2

          因为用 "%.9f %.9f" 进行输出,故$a,b$均为实数,排除A,B,C,D。根据题意,$a$的精确度高于$b$,再结合选项,$a$只能为 double 类型,$b$只能为 float 类型。答案为FE。

    #include <iostream>
    using namespace std;
    int main()
    {
        cout<<"F E"<<endl;
        return 0;
    }
    05.cpp

    06 浮点数向零舍入

          这里用到了强制类型转换。根据提示,若$x$为浮点数,输出的数字就是 (int)x 或 int(x)

    #include <iostream>
    using namespace std;
    int main()
    {
        float x;
        cin>>x;
        int y=(int)x;
        cout<<y<<endl;
        return 0;
    }
    06.cpp

    07 打印ASCII码

          将 char 类型强制转换为 int 然后输出即可。

    #include <iostream>
    using namespace std;
    int main()
    {
        char c;
        cin>>c;
        int x=(int)c;
        cout<<x<<endl;
        return 0;
    }
    07.cpp

    08 打印字符

          将 int 类型强制转换为 char 然后输出即可。

    #include <iostream>
    using namespace std;
    int main()
    {
        int x;
        cin>>x;
        char c=(char)x;
        cout<<c<<endl;
        return 0;
    }
    08.cpp

    09 整型与布尔型的转换

          按照题目要求照做即可。不过也可以用判断语句来写(虽然没什么必要),即:

    • 若输入为0,则输出0;
    • 若输入不为0,则输出1。
    #include <iostream>
    using namespace std;
    int main()
    {
        int x;
        cin>>x;
        bool y=x;
        x=y;
        cout<<x<<endl;
        return 0;
    }
    09.cpp

    10 Hello, World!的大小

          输出 sizeof("Hello, World!"); 。

    #include <iostream>
    using namespace std;
    int main()
    {
        cout<<sizeof("Hello, World!")<<endl;
        return 0;
    }
    10.cpp
  • 相关阅读:
    jQuery技巧大放送
    网页挂马工作原理完全分析
    C#常见问题
    网站优化之页面优化
    SQL大全分享
    获得本机的可用的所有打印机
    C#文件操作方法大全
    编程范式及其代表语言
    23种模式简說
    C# Open Source
  • 原文地址:https://www.cnblogs.com/changke/p/4830611.html
Copyright © 2011-2022 走看看