博客
关于我
B1022 D进制的A+B (20 分)
阅读量:321 次
发布时间:2019-03-04

本文共 725 字,大约阅读时间需要 2 分钟。

#include 
#define MAX 32int main() { int ans[MAX]; int sum, num; scanf("%d %d %d", &a, &b, &d); sum = a + b; do { ans[num++] = sum % d; sum /= d; } while(sum != 0); for(int i = num - 1; i >= 0; i--) { printf("%d", ans[i]); } return 0;}

这段代码用于计算两个整数的和对第三个整数取模的结果,并将这些结果按逆序输出。以下是代码的详细解释:

  • 代码结构

    • 首先包含了<stdio.h>,用于标准输入输出操作。
    • 使用#define MAX 32定义了一个常量,用于存储最多32个取模结果。
  • 函数主体

    • 在函数main中,首先定义了一个名为ans的数组,大小为MAX,用于存储取模结果。
    • 定义了变量sumnum,分别用于存储当前的和以及存储的结果数。
    • 使用scanf函数读取输入的三个整数abd,并将它们赋值给相应的变量。
    • ab的和赋值给sum
  • 循环处理

    • 使用do-while循环来处理取模和整数除法的过程。
    • 在循环中,首先将sumd取模的结果存储在ans数组中,并增加num的值。
    • 然后将sum除以d,并继续循环,直到sum不再为0。
  • 输出结果

    • 退出循环后,使用for循环从ans数组的末尾开始遍历,逆序输出结果。
  • 通过上述步骤,程序能够有效地计算并输出两个整数的和对第三个整数取模后的结果。

    转载地址:http://pzph.baihongyu.com/

    你可能感兴趣的文章
    NAT工作原理
    查看>>
    Processes, threads and goroutines
    查看>>
    c++中的10种常见继承
    查看>>
    Vue学习—深入剖析渲染函数
    查看>>
    wxpython的Hello,World代码探索
    查看>>
    【数字图像处理】OpenCV3 学习笔记
    查看>>
    【单片机开发】智能小车工程(经验总结)
    查看>>
    【单片机开发】基于stm32的掌上游戏机设计 (项目规划)
    查看>>
    KeepAlived介绍、配置示例、KeepAlived配置IPVS、调用脚本进行监控
    查看>>
    Scala集合-数组、元组
    查看>>
    04 程序流程控制
    查看>>
    C++&&STL
    查看>>
    子集(LeetCode 78)
    查看>>
    1093 Count PAT‘s (25分) 含DP做法
    查看>>
    一篇解决JMM与volatile详解(二)
    查看>>
    数据结构之数组与经典面试题(二)
    查看>>
    无锁并发框架-Disruptor的使用(二)
    查看>>
    Android wm命令
    查看>>
    Android4.4 平板背光设置
    查看>>
    codeforces The Eternal Immortality 题解
    查看>>