我正在编写一个不使用printf的打印整数函数 . 该函数应该能够接受需要打印的整数,输出的基数以及要在整数值之前插入的字符 . 我已经能够制作大部分代码;然而,一旦输入超过15亿,输出保持不变,大约为10亿 . 在平台上我使用INT_MAX是21.7亿,所以我知道这肯定在int的范围内 . 另外,我想知道如何在没有静态数组的情况下创建这个函数:在我的情况下是baseDigs .

#include

#include

#include

#include

#include "hw02.h"

int Pow(int a, int b);

void print_integer(int n, int radix, char* prefix){

if(radix == 0){

return -1;

}

char baseDigs[36]={'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f','g','h','i','j','k','l','m','n','n','p','q','r','s','t','u','v','w','x','y','z'};

unsigned int buffer = n;

int dollar = 0;

int counter = 0;

int counter2 = 0;

int counter3 = 0;

int j = 0;

if (prefix[0] == '$'){

dollar++;

}

if(n < 0){

fputc('-', stdout);

buffer = -buffer;

}

while(prefix[j] != '\0'){

fputc(prefix[j], stdout);

j++;

}

while (buffer >= radix){

counter = 0;

counter2 = 0;

while((Pow(radix, counter)) <= buffer){

counter++;

}

counter--;

while(counter3 - counter > 1){

fputc('0', stdout);

counter3--;

}

counter3 = counter;

while((Pow(radix, counter)* counter2)<= buffer){

counter2++;

}

counter2--;

if (dollar > 0){

if(counter == 1){

fputc('.', stdout);

}

}

putchar(baseDigs[counter2]);

buffer-= Pow(radix,counter) * counter2;

}

while(counter3 > 1){

fputc('0', stdout);

counter3--;

}

fputc(baseDigs[buffer], stdout);

return;

}

int Pow(int a, int b){

if(b<0){

return (1/a) * Pow(a ,b-1);

}

else if (b==0) {

return 1;

}

else if (b==1){

return a;

}

else{

return a * Pow(a,b-1);

}

}

java输出int_如何使打印整数函数(没有printf)输出INT_MAX相关推荐

  1. Java char数组的神奇打印(数组名直接输出内容!)

    char数组的神奇打印 一维char数组的输出 char[] cArr = new char[]{'a','b','c'};System.out.println(cArr);//char类型数组的输出 ...

  2. python每行输出5个数_python打印杨辉三角及输出第m行第k个数

    1.打印杨辉三角及输出第m行第k个数 1.计算到m行,打印出k项 第m行有m项,m是正整数,因此k一定不会大于m,这个需求需要保存m行的数据,那么可以使用一个嵌套结构[[],[],[]] m=int( ...

  3. php output详解,PHP输出缓冲控制Output Control系列函数详解,output函数详解

    PHP输出缓冲控制Output Control系列函数详解,output函数详解 概述 以前研究过PHP的输入输出缓冲,不过博客搬家以后,原来文章找不到了,今天看到一篇好文,顺便转载过来. 简介 说到 ...

  4. 编写程序,输入一个3位整数,反转后输出。

    撰写人--软工二班--陈喜平 题目描述 编写程序,输入一个3位整数,反转后输出. 输入 一个3位整数. 输出 反转后3位整数.注意:输出后换行. 样例输入 128 样例输出 821 提示 注意: 21 ...

  5. printf()输出

    printf()函数是式样化输出函数, 一般用于向准则输出设备按规定式样输出消息.正在编写步骤时经常会用到此函数.printf()函数的挪用式样为: printf("<式样化字符串&g ...

  6. C语言 vprintf 函数和 printf 函数区别 - C语言零基础入门教程

    目录 一.vprintf 函数和 printf 函数声明简介 1.printf 函数声明 2.vprintf 函数声明 二.vprintf 函数和 printf 函数使用 三.猜你喜欢 零基础 C/C ...

  7. java 打印详解_Java格式化输出printf()详解

    概要: 本文通过实例详细介绍Java格式化输出 System.out.printf() 方法的使用.参数的含义.格式转换符使用时的注意事项. System.out.printf() 是 Java 5 ...

  8. Java打印整数的二进制表示(代码与解析)

    Java打印整数的二进制表示(代码与解析) int a=-99; for(int i=0;i<32;i++){int t=(a & 0x80000000>>>i)> ...

  9. C语言学习之用函数处理,而且用指针类型的数据作函数参数,对输入的两个整数按大小顺序输出

    对输入的两个整数按大小顺序输出.用函数处理,而且用指针类型的数据作函数参数. int main(){void swap(int *p1,int *p2);//声明swap函数 int a,b;int ...

  10. java beetl 视频_04.Beetl常用内置函数以及安全输出---《Beetl视频课程》

    本期视频实现了三个功能,模糊搜索.标签分类.登录/注销功能: 内容简介:使用了常用内置函数,以及安全输出,实现了上面提到的三个业务 作者:GK 常用内置方法 date 返回一个java.util.Da ...

最新文章

  1. C++的简单文本IO
  2. python指定数据写入指定excel_python脚本——生成EXCEL,连接数据库,并将指定数据写入EXCEL...
  3. 在表空间有足够free space的情况下出现ORA-1652
  4. IOS CoreImage实现人脸识别
  5. c++ 多线程 垃圾回收器_7种jvm垃圾回收器,这次全部搞懂
  6. 当Grid的数据源是View时,如何使用PeopleSoft自带的Save Function?
  7. html td显示隐藏,显示/隐藏Html TR/TD
  8. curl 的用法指南
  9. 网络克隆软件_网文生成器,克隆的是骗钱“病毒”
  10. 登陆SQL Server 2008时提示评估期已过的解决办法
  11. Oracle 20c 新特性:强制大小写敏感密码文件 Force Password File Case Sensitive
  12. Ajax实现搜索提示框~超级详细
  13. 在python中如何判断数组中的数据为空值_缓存穿透问题,开发中真实解决方案
  14. 计算机图形学的学习心得,计算机图形学学习心得
  15. 吉林大学计算机学院杜天宇,2016年全国研究生数学建模竞赛获奖名单
  16. unity自动生成敌人_unity 2d AI 敌人 自动追踪(1)
  17. 华为云服务器参数配置文件,华为云服务器参数配置文件
  18. 由人类进化想到软件的作用
  19. 代写硕士论文 计算机 代码,天大、厦大两硕士代写买卖论文被撤销学位
  20. 【推荐】两大APP与云账户红包SDK集成详情及Demon分享v

热门文章

  1. es6基础(4)--字符串扩展
  2. Mysql 查询列名
  3. java基础-对象-练习集锦
  4. Mac OS X中Apache开启ssl
  5. 关于性格内向者的10个误解,献给奋战在一线的程序员
  6. 代码大全旁边的一本书--感受《UNIX编程艺术》
  7. 拓端tecdat|R语言用FNN-LSTM假近邻长短期记忆人工神经网络模型进行时间序列深度学习预测4个案例
  8. 拓端tecdat|R语言最优化问题中的共轭函数
  9. 如何让php支持mysql的,怎么让php支持MySql
  10. 利用deepface网络进行表情分类