⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 utilities.c

📁 《IAR EWARM 嵌入式系统 编程与实践》书中例程
💻 C
字号:
/********************************************************************  应用程序。
********************************************************************/
#include <stdio.h>    		    // 包含头文件
#include "Utilities.h"

unsigned int root[MAX_FIB];   	// 定义数组

void init_fib( void ) {            // 用Fibonacci 数列初始化数组
  int i = 45;
  root[0] = root[1] = 1;
  for ( i=2 ; i<MAX_FIB ; i++) {
    root[i] = get_fib(i) + get_fib(i-1);
  }
}

unsigned int get_fib( int nr ) {     // 返回Fibonacci数列
  if ( (nr > 0) && (nr <= MAX_FIB) ) {
    return ( root[nr-1] );
  }
  else {
    return ( 0 );
  }
}

void put_fib( unsigned int out ) {   // 从"Terminal I/O"窗口输出数字0~65536
  unsigned int dec = 10, temp;
  if ( out >= 10000 ) {
    putchar ( '#' );
    return;
  }

  putchar ( '\n' );
  while ( dec <= out ) {
    dec *= 10;
  }

  while ( (dec/=10) >= 10 ) {
    temp = out/dec;
    putchar ( (int)('0' + temp) );
    out -= temp*dec;
  }

  putchar ( (int)('0' + out) );
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -