zzuli OJ 1101-1110

因为整理起来比较慢,如果喜欢java或python的人想要代码的话,请私信我或者评论区留言。
这都是大一上学期写的代码比较稚嫩,如果想要看哪一个题目的分析或者不会做的,可以私信我,或者评论都行,如果再刷zzulioj觉得下面代码有用的话,点个赞关注一下呗。
这些都是最基本的题目,也不会在这个oj做题了,整理的原因是因为想要帮助有需要的人,同时记录一下不成熟的自己。
题目如果存在缺失,私信或者评论。必回。

ZZULI—刷题之路

zzulioj_1000-1010

zzulioj_1011-1050


目录

zzuli OJ 1101: 逆序数字(函数专题)

zzuli OJ 1102: 火车票退票费计算(函数专题)

zzuli OJ 1103: 平均学分绩点(函数专题)

zzuli OJ 1104: 求因子和(函数专题)

zzuli OJ 1105: 判断友好数对(函数专题)

zzuli OJ 1106: 回文数(函数专题)

zzuli OJ 1107: 回文数猜想(函数专题)

zzuli OJ 1108: 打印数字图形(函数专题)

zzuli OJ 1009: 求平均分

zzuli OJ 1110: 最近共同祖先(函数专题)


zzuli OJ 1101: 逆序数字(函数专题)

int inverse(int n){
    int ans = 0;
    while(n){
        ans = ans * 10 + n % 10;
        n /= 10;
    }
    return ans;
}

zzuli OJ 1102: 火车票退票费计算(函数专题)

#include<stdio.h>
double CancelFee(double price);
int main ()
{
    double m;
    scanf("%lf", &m);
    CancelFee(m);
    return 0;
}

double CancelFee(double price)
{
    double sum;
    sum = price * 0.05;
    float y = (int)sum;
    if((sum >=y)&&(sum < y +0.25))
    {
        y = y;
    }
    else
    {
        if((sum >= y + 0.25)&&(sum < y + 0.75))
        {
            y = y + 0.5;
        }
        else
        {
            y = y + 1.0;
        }
    }
    printf("%.1f", y);

    return sum;
}

zzuli OJ 1103: 平均学分绩点(函数专题)

#include<stdio.h>
#include<math.h>
int GP(int n);
int main()
{
    int n,m,ncase;
      scanf("%d",&ncase);
       double sum1=0,sum2=0;
        while(ncase--)
            {
                scanf("%d%d",&m,&n);
        sum1+=GP(n)*m;    sum2+=m;
         }
         printf("%.1f",sum1/sum2);
          return 0;}int GP(int n)
          {    if(n<60)
           return 0;
           else    return (n-50)/10;
           }

zzuli OJ 1104: 求因子和(函数专题)

#include <stdio.h>
int FacSum (int n);
int main()
{
    int n;
    scanf("%d", &n);
    n = FacSum(n);
    printf("%d", n);
    return 0;
}

int FacSum (int n)
{
    int i = 1, sum = 0;
    while(i < n)
    {
        if(n % i == 0)
        {
            sum = sum + i;
        }
        i++;
    }
    return sum;
}

zzuli OJ 1105: 判断友好数对(函数专题)

#include <stdio.h>
int FacSum (int n);
int main()
{
    int m, n, t, i = 0;
    scanf("%d%d", &m, &n);
    while (m <= n)
    {
        t = FacSum(m);
        if( m == FacSum(t)&&(m < t))
        {
           printf("%d %d\n", m, t);
           i++;
        }
        m++;
    }
    if(i == 0)
    {
        printf("No answer");
    }
    return 0;
}

int FacSum (int n)
{
    int i = 1, sum = 0;
    while(i < n)
    {
        if(n % i == 0)
        {
            sum = sum + i;
        }
        i++;
    }
    return sum;
}

zzuli OJ 1106: 回文数(函数专题)

#include<stdio.h>
#include<stdlib.h>
int fn (int n);
int main ()
{
    int m, n;
    scanf("%d%d", &m, &n);
    for(; m <= n; m++)
    {
        if(fn (m) == 1)
            printf("%d ", m);
    }

    return 0;
}
int fn (int n)
{
    int sum = 0, i;
    i = n;
    while(n > 0)
    {
        sum = sum * 10 + n % 10;
        n = n / 10;
    }

    if(i == sum)
        return 1;
    return 0;

}

zzuli OJ 1107: 回文数猜想(函数专题)

#include <stdio.h>
int hui (int n);
int main()
{
   int m , n, sum;
   scanf("%d", &n);
   printf("%d ", n);
   while(m = hui(n), m != n )
   {
        sum = m + n;
        n = sum;
        printf("%d ", sum);
   }

   return 0;
}

int hui (int n)
{
    int sum = 0, a;
    while(n > 0)
    {
        a = n % 10;
        sum = a + sum * 10;
        n = n / 10;
    }
    return sum;
}

zzuli OJ 1108: 打印数字图形(函数专题)

#include<stdio.h>
#include<stdlib.h>
void PrintSpace (int n);
void PrintLine  (int n);
int main ()
{
    int n, i;
    scanf("%d", &n);
    for(i = - (n -1); i <= n-1; i++)
    {
        PrintSpace(abs(i));
        PrintLine(n - abs(i));
    }
    return 0;
}

void PrintSpace(int n)
{
    while(n--)
        printf(" ");
}
void PrintLine(int n)
{
    int i;
    for(i = -(n - 1); i <= n-1;i++)
    {
        printf("%d", n - abs(i));
    }
    printf("\n");
}

zzuli OJ 1009: 求平均分

#include <stdio.h>

int main (void )
{
    double a,b,c;
    scanf("%lf%lf%lf",&a,&b,&c);
    printf("%.2f\n",(a + b + c)/3);
    return 0;

}

zzuli OJ 1110: 最近共同祖先(函数专题)

#include <stdio.h>
int digitSum(int n);
int main()
{
    int m, n;
    scanf("%d%d", &m, &n);
    while( m != n)
    {
        if(m > n)
        {
            m = digitSum(m);
        }
        else
        {
            n = digitSum(n);
        }
    }
    printf("%d", m);
    return 0;
}

int digitSum(int n)
{
    if(n % 2 == 0)
    {
        n = n / 2;
    }
    else
    {
        n = ( n - 1) / 2;
    }
    return n;
}
发布了73 篇原创文章 · 获赞 89 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_43906799/article/details/104966319