首页 > 其他分享 >山东大学23强基班计算机导论第三次习题答案

山东大学23强基班计算机导论第三次习题答案

时间:2024-03-21 23:58:30浏览次数:21  
标签:输出 23 int 样例 强基班 格式 习题 输入 10

山东大学23强基班计算机导论第三次习题答案

7-1 计算分段函数[1]

分数 10

作者 颜晖

单位 浙大城市学院

本题目要求计算下列分段函数f(x)的值:

公式

输入格式:

输入在一行中给出实数x。

输出格式:

在一行中按“f(x) = result”的格式输出,其中x与result都保留一位小数。

输入样例1:

10

输出样例1:

f(10.0) = 0.1

输入样例2:

0

输出样例2:

f(0.0) = 0.0

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

代码

#include <stdio.h>

int main()
{
    double n;
    scanf("%lf",&n);
    if(n == 0)
    {
        printf("f(0.0) = 0.0");
    } else {
        printf("f(%.1lf) = %.1lf",n,1.0/n);
    }
    return 0;
}

7-2 比较大小

分数 10

作者 杨起帆

单位 浙大城市学院

本题要求将输入的任意3个整数从小到大输出。

输入格式:

输入在一行中给出3个整数,其间以空格分隔。

输出格式:

在一行中将3个整数从小到大输出,其间以“->”相连。

输入样例:

4 2 8

输出样例:

2->4->8

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

代码

操作有点骚,可忽略

#include <stdio.h>

int main()
{
    int a,b,c;
    scanf("%d%d%d",&a,&b,&c);
    st:
    if(a > b)
    {
        a^=b;
        b^=a;
        a^=b;
    }
    if(b > c)
    {
        b^=c;
        c^=b;
        b^=c;
        goto st;
    }
    printf("%d->%d->%d",a,b,c);
}

7-3 判断一个三位数是否为水仙花数

分数 10

作者 颜晖

单位 浙大城市学院

本题要求编写程序,判断一个给定的三位数是否为水仙花数。三位水仙花数,即其个位、十位、百位数字的立方和等于该数本身。

输入格式:

输入在一行中给出一个需要判断的整数 N(100≤N≤999)。

输出格式:

如果N是水仙花数,则在一行中输出Yes,否则输出No。如果N不是三位数,则输出Invalid Value.

输入样例1:

153

输出样例1:

Yes

输入样例2:

500

输出样例2:

No

输入样例3:

-2

输出样例3:

Invalid Value.

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

代码

#include <iostream>
using namespace std;

int main()
{
    int n;
    cin >> n;
    if (n >= 1000 || n < 100){
        cout<<"Invalid Value.";
        return 0;
    }
    int a,b,c;
    c = n % 10;
    b = n % 100 - c;
    a = n - b;
    b /= 10;
    a /= 100;
    if (a*a*a + b*b*b + c*c*c == n)
        cout<<"Yes";
    else
        cout<<"No";
    return 0;
}

7-4 计算分段函数[2]

分数 10

作者 陈建海

单位 浙江大学

本题目要求计算下列分段函数f(x)的值:

f2-11

注:可在头文件中包含math.h,并调用sqrt函数求平方根,调用pow函数求幂。

输入格式:

输入在一行中给出实数x。

输出格式:

在一行中按“f(x) = result”的格式输出,其中x与result都保留两位小数。

输入样例1:

10

输出样例1:

f(10.00) = 3.16

输入样例2:

-0.5

输出样例2:

f(-0.50) = -2.75

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

代码

#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;

double f(double x)
{
    if(x >= 0)
        return sqrt(x);
    else
        return (x+1)*(x+1) + 2*x + 1/x;
}

int main()
{
    double x;
    cin>>x;
    printf("f(%.2lf) = %.2lf",x,f(x));
}

7-5 阶梯电价

分数 10

作者 陈建海

单位 浙江大学

为了提倡居民节约用电,某省电力公司执行“阶梯电价”,安装一户一表的居民用户电价分为两个“阶梯”:月用电量50千瓦时(含50千瓦时)以内的,电价为0.53元/千瓦时;超过50千瓦时的,超出部分的用电量,电价上调0.05元/千瓦时。请编写程序计算电费。

输入格式:

输入在一行中给出某用户的月用电量(单位:千瓦时)。

输出格式:

在一行中输出该用户应支付的电费(元),结果保留两位小数,格式如:“cost = 应付电费值”;若用电量小于0,则输出"Invalid Value!"。

输入样例1:

10

输出样例1:

cost = 5.30

输入样例2:

100

输出样例2:

cost = 55.50

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

代码

#include <iostream>
using namespace std;

double f(double x)
{
    if( x <= 50)
        return x * 0.53;
    else
        return 50*0.53 + (x-50)*0.58;
}

int main()
{
    double x;
    cin >> x;
    if(x < 0)
        printf("Invalid Value!");
    else
        printf("cost = %.2lf",f(x));
    return 0;
}

7-6 计算符号函数的值

分数 10

作者 C课程组

单位 浙江大学

对于任一整数n,符号函数sig**n(n)的定义如下:

img

请编写程序计算该函数对任一输入整数的值。

输入格式:

输入在一行中给出整数n。

输出格式:

在一行中按照格式“sign(n) = 函数值”输出该整数n对应的函数值。

输入样例1:

10

输出样例1:

sign(10) = 1

输入样例2:

0

输出样例2:

sign(0) = 0

输入样例3:

-98

输出样例3:

sign(-98) = -1

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

代码

#include <iostream>
using namespace std;

int main()
{
    int n;
    cin >> n;
    if(n==0)
        printf("sign(%d) = %d",n,n);
    else{
        int sign = n & (1 << 31);
        if(sign)
            printf("sign(%d) = -1",n);
        else
            printf("sign(%d) = 1",n);
    }
    
        
}

7-7 谁是赢家

分数 10

作者 陈越

单位 浙江大学

某电视台的娱乐节目有个表演评审环节,每次安排两位艺人表演,他们的胜负由观众投票和 3 名评委投票两部分共同决定。规则为:如果一位艺人的观众票数高,且得到至少 1 名评委的认可,该艺人就胜出;或艺人的观众票数低,但得到全部评委的认可,也可以胜出。节目保证投票的观众人数为奇数,所以不存在平票的情况。本题就请你用程序判断谁是赢家。

输入格式:

输入第一行给出 2 个不超过 1000 的正整数 Pa 和 Pb,分别是艺人 a 和艺人 b 得到的观众票数。题目保证这两个数字不相等。随后第二行给出 3 名评委的投票结果。数字 0 代表投票给 a,数字 1 代表投票给 b,其间以一个空格分隔。

输出格式:

按以下格式输出赢家:

The winner is x: P1 + P2

其中 x 是代表赢家的字母,P1 是赢家得到的观众票数,P2 是赢家得到的评委票数。

输入样例:

327 129
1 0 1

输出样例:

The winner is a: 327 + 1

鸣谢安阳师范学院软件学院李栋同学完善测试数据。

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

代码

#include <iostream>
using namespace std;

int main()
{
    int pa,pb;
    cin>>pa>>pb;
    int a,b,c;
    cin>>a>>b>>c;
    int p[2] = { 0 };
    p[a] ++;
    p[b] ++;
    p[c] ++;
    if((pa + p[0] > pb + p[1] || p[0] == 3) && (p[1] !=3))
    {
        cout<<"The winner is a: "<< pa << " + "<<p[0];
    } else {
        cout<<"The winner is b: "<< pb << " + "<<p[1];
    }
}

7-8 12-24小时制

分数 10

作者 翁恺

单位 浙江大学

编写一个程序,要求用户输入24小时制的时间,然后显示12小时制的时间。

输入格式:

输入在一行中给出带有中间的:符号(半角的冒号)的24小时制的时间,如12:34表示12点34分。当小时或分钟数小于10时,均没有前导的零,如5:6表示5点零6分。

提示:scanf的格式字符串中加入:,让scanf来处理这个冒号。

输出格式:

在一行中输出这个时间对应的12小时制的时间,数字部分格式与输入的相同,然后跟上空格,再跟上表示上午的字符串AM或表示下午的字符串PM。如5:6 PM表示下午5点零6分。注意,在英文的习惯中,中午12点被认为是下午,所以24小时制的12:00就是12小时制的12:0 PM;而0点被认为是第二天的时间,所以是0:0 AM

输入样例:

21:11

输出样例:

9:11 PM

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

代码

#include <iostream>
using namespace std;

int main()
{
    int a,b;
    scanf("%d:%d",&a,&b);
    if(a >= 12)
    {
        if(a > 12)
            a %= 12;
        printf("%d:%d PM",a,b);
    } else {
        printf("%d:%d AM",a,b);
    }
}

7-9 C程序设计 实验2-1求绝对值

分数 10

作者 王群芳

单位 合肥师范学院

计算并输出一个实数的绝对值。从键盘任意输入一个实数,不使用计算绝对值函数编程计算并输出该实数的绝对值。

输入格式:

输入任一实数。

输出格式:

输出的绝对值包含两位小数。

输入样例:

-2.5

输出样例:

2.50

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

栈限制

8192 KB

代码

全是骚操作,具体原理可以看看IEEE对浮点的定义

#include <stdio.h>

int main()
{
    union {float f;unsigned int u} x;
    scanf("%f",&x.f);
    x.u &= 0x7fffffff;
    printf("%.2f\n",x.f);
}

7-10 成绩处理

分数 10

作者 王群芳

单位 合肥师范学院

编写程序,根据输入的成绩score(整型),输出及格与否的信息。

60≤ score≤100时, 输出P

当0≤ score<60时,输出F

如果输入成绩 score<0或 score>100,则输出Input error!

输入格式:

输入在一行中给出一个整数,表示成绩。

输出格式:

输出对应信息。

输入样例:

86

输出样例:

P

输入样例:

48

输出样例:

F

输入样例:

125

输出样例:

Input error!

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

栈限制

8192 KB

代码

#include <iostream>
using namespace std;

int main()
{
    int x;
    cin>> x;
    if(60 <= x && x <= 100)
        cout<<'P'<<endl;
    else if(0<= x && x <60)
        cout<<'F'<<endl;
    else
        cout<<"Input error!"<<endl;
}

标签:输出,23,int,样例,强基班,格式,习题,输入,10
From: https://www.cnblogs.com/Icys/p/18088500

相关文章

  • AcWing 1230. K倍区间 C++满分题解
    原题链接https://www.acwing.com/problem/content/1232/题目分析求区间和,我们可以通过前缀和来求出。我们规定sum[i]表示第1个元素到第i个元素的和。那么sum[r]-sum[l-1]就是区间[l,r]的和。一维前缀和for(inti=1;i<=n;i++){scanf("%lld",&sum[i]);......
  • 23种设计模式核心思想及代码实现(Java C++)
    目录代码OOP七大原则策略模式单例模式观察者模式装饰模式抽象工厂模式工厂模式简单工厂模式工厂模式抽象工厂模式三种工厂模式的区别简单工厂模式和策略模式的不同pipeline模式职责链模式代理模式静态代理动态代理......
  • 第一章 计算机网络概述——提纲 + 练习题(体系结构相关习题、时延计算相关习题)
    文章目录第一章计算机网络概述1.2因特网概述1.3三种交换方式1.4计算机网络的分类1.5计算机网络的性能指标1.6计算机网络的体系结构(重点、难点)第一章-习题第一部分-体系结构相关1、2、3、4、5、6、7、8、9、10、练习题第二部分-时延相关1、2、3、4、5、第一......
  • 栈和队列章节课后习题答案集锦
    目录4.34.44.54.84.94.114.124.3#include<stdio.h>#include<stdlib.h>//定义栈的最大容量#defineMAX_SIZE100//定义栈结构typedefstruct{chardata[MAX_SIZE];inttop;}Stack;//初始化栈voidinitStack(Stack*s){s->top=-1;......
  • MATLAB 2023a助力自然语言处理,开启智能对话新时代
    在深度学习领域,MATLAB2023版深度学习工具箱以其完整的工具链和高效的运行环境,为研究人员和开发者提供了前所未有的便利。这一工具箱不仅集成了建模、训练和部署的全部功能,更以其简洁易用的语法和强大的算法库,为深度学习任务的快速实现铺平了道路。相较于Python等编程语言,M......
  • Dubbo23_服务注册中心Zookeeper3
    通过前面的Dubbo架构图可以看到,Registry(服务注册中心)在其中起着至关重要的作用。Dubbo官方推荐使用Zookeeper作为服务注册中心。一、Zookeeper介绍Zookeeper是ApacheHadoop的子项目,是一个树型的目录服务,支持变更推送,适合作为Dubbo服务的注册中心,工业强度较高,可用于生产......
  • Dubbo23_Apache Dubbo概述2
    一、Dubbo简介ApacheDubbo是一款高性能的JavaRPC框架。其前身是阿里巴巴公司开源的一个高性能、轻量级的开源JavaRPC框架,可以和Spring框架无缝集成。什么是RPC?RPC全称为remoteprocedurecall,即**远程过程调用**。比如两台服务器A和B,A服务器上部署一个应用,B服务器上......
  • 236. 二叉树的最近公共祖先c
    /***Definitionforabinarytreenode.*structTreeNode{*intval;*structTreeNode*left;*structTreeNode*right;*};*/structTreeNode*lowestCommonAncestor(structTreeNode*root,structTreeNode*p,structTreeNode*q){......
  • Dubbo23_软件架构的演进过程1
    软件架构的发展经历了由单体架构、垂直架构、SOA架构到微服务架构的演进过程,下面我们分别了解一下这几个架构。一、单体架构架构说明:全部功能集中在一个项目内(Allinone)。架构优点:​架构简单,前期开发成本低、开发周期短,适合小型项目。架构缺点:全部功能集成在一个......
  • 2023年护网新情况总结
    2023年护网新情况总结✦.甲方客户预算总体上降低了,甚至有的客户预算直接砍了一半。厂商、供应商、安全工程师都面临了不小的压力。甲方客户开始没有那么专业的安全人员,到招兵卖马,成立安全运营的部门,厂商工程师或早期护网人员及后来护网的人员逐渐进入甲方。所以甲方客户......