两小道题目的分享


前言

本篇文章对我做到的题中有巧妙部分的进行讲解,每个题目下面有对应链接,题目来自于牛客网,没有账号的老铁,需要注册一个。


`

一、判断两个数的大小

链接:BC49-判断两个数的大小

请大家先读题,自己尝试写代码,进行思考。

1.我的代码:

#include <stdio.h>
int main() 
{
    int a, b;
    char c;
    while(scanf("%d %d",&a,&b)==2)
    {
        if(a>b)
        c='>';
        else if(a==b)
        c='=';
        else
        c='<';
        printf("%d%c%d\n",a,c,b);
    }
    return 0;
}

2.题目要求及我的解决方案:

1.首先,题目要求多组输入,且每组有两个数;

简单了解scanf函数的返回值:
scanf函数返回值为int型。

int a,b;
scanf("%d %d",&a,&b);

若a,b两数字均正常输入,返回2;
若只有a正常输入,返回1;
简单来说就是,它返回已成功赋值的数据项数。
出错时则返回EOF(end of file).
请添加图片描述
实际上EOF就是-1;

办法一:while(scanf(“%d %d”,&a,&b)==2)

int main()
{
int a,b;
char c;
while(scanf("%d %d",&a,&b)==2)
{
	    if(a>b)
        c='>';
        else if(a==b)
        c='=';
        else
        c='<';
        printf("%d%c%d\n",a,c,b);
}
return 0;
}

方法二:while(scanf(“%d”,&n) != EOF)
!=
此方法不建议使用,有bug;如果正常输入了两组数的一个,仍然进入循环。
如果输入一个数,便可以。

方法三:while(~scanf(“%d”,&n))
若错误输入scanf返回EOF
~EOF==0,
不建议:
如果正确输入,两个数,scanf返回2
~2是0.循环结束,产生问题。

综上:
此处使用第一种最好:
while(scanf(“%d %d”,&a,&b)==2 )

二、最高分与最低分之差

链接:BC95-最高分与最低分之差

1.我的代码

#include <stdio.h>
int main() 
{
    int n,input;
    int max=0;
    int min=100;
    int i=0;
    int arr[10000]={-1};
    scanf("%d",&n);
    for(i=0;i<n;i++)
    {
        scanf("%d ",&input);
        arr[i]=input;
    }
    for(i=0;i<n;i++)
    {
        if(arr[i]>max)
        max=arr[i];
        else
        ;
    }
        for(i=0;i<n;i++)
    {
        if(arr[i]>min)
        ;
        else
        min=arr[i];
    }
    printf("%d",max-min);
    return 0;
}

2.题目要求及我的解决方案

1,成绩范围为0-100,巧妙给max,min赋初值

int max=0; 如果max的值过大,底下就不能成功比较出成绩最大值。
例如:让max初始值为100.肯定所有的成绩都不能超过,且同时成绩中没有考100分的,就会产生错误的最大值。

    for(i=0;i<n;i++)
    {

        if(arr[i]>max)
        max=arr[i];
        else
        ;
    }

int min=100;
尝试思考为什么是这样?

        for(i=0;i<n;i++)
    {
        if(arr[i]>min)
        ;
        else
        min=arr[i];
    }

总结

在进行学习的同时,也要进行编程题目的练习。一些推荐,难度有差异,随后出一篇,难度排行。
链接:牛客网
链接: lintcode

链接:leetcode

拜拜了!

内容概要:文章基于4A架构(业务架构、应用架构、数据架构、技术架构),对SAP的成本中心和利润中心进行了详细对比分析。业务架构上,成本中心是成本控制的责任单元,负责成本归集与控制,而利润中心是利润创造的独立实体,负责收入、成本和利润的核算。应用架构方面,者都依托于SAP的CO模块,但功能有所区分,如成本中心侧重于成本要素归集和预算管理,利润中心则关注内部交易核算和获利能力分析。数据架构中,成本中心与利润中心存在多对一的关系,交易数据通过成本归集、分摊和利润计算流程联动。技术架构依赖SAP S/4HANA的内存计算和ABAP技术,支持实时核算与跨系统集成。总结来看,成本中心和利润中心在4A架构下相互关联,共同为企业提供精细化管理和决策支持。 适合人群:从事企业财务管理、成本控制或利润核算的专业人员,以及对SAP系统有一定了解的企业信息化管理人员。 使用场景及目标:①帮助企业理解成本中心和利润中心在4A架构下的运作机制;②指导企业在实施SAP系统时合理配置成本中心和利润中心,优化业务流程;③提升企业对成本和利润的精细化管理水平,支持业务决策。 其他说明:文章不仅阐述了理论概念,还提供了具体的应用场景和技术实现方式,有助于读者全面理解并应用于实际工作中。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值