[宝典]打印asc码
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
第七次课:项目:打印ASC码表
在这个项目中,我们想去打印所有的ASCII码字符及相关联的十进制和二进制值。
关于ASCII
ASCII表示美国信息交换
标准
excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载
码,正如它的名字所暗示的, 它是由美国的一个代码指定的
数字每个信息存储或传输计算机来完成。这里是关于ASCII码的重点: , 每个键盘字符都可以映射到数字从32~127; , 数字从0 到31用于特殊字符,如制表符、铃、换行符等; , 扩展ASCII范围从128 至255,含有专门128 个字符,如边框线等;
, 扩展的ASCII字符是非标准化,可能会从一个操作系统类型到另一个(如PC和MAC
与Linux);
, 标准的 ASCII是标准化的,同样都可以跨越不同的操作系统类型。
第一步写出程序的基本框架 任何C程序都具有以下的基本框架
第七次课:项目:打印ASC码表
在这个项目中,我们想去打印所有的ASCII码字符及相关联的十进制和二进制值。
关于ASCII
ASCII表示美国信息交换标准码,正如它的名字所暗示的, 它是由美国的一个代码指定的
数字每个信息存储或传输计算机来完成。这里是关于ASCII码的重点: , 每个键盘字符都可以映射到数字从32~127; , 数字从0 到31用于特殊字符,如制表符、铃、换行符等; , 扩展ASCII范围从128 至255,含有专门128 个字符,如边框线等;
, 扩展的ASCII字符是非标准化,可能会从一个操作系统类型到另一个(如PC和MAC
与Linux);
, 标准的 ASCII是标准化的,同样都可以跨越不同的操作系统类型。
第一步写出程序的基本框架 任何C程序都具有以下的基本框架
/* * Title : Print Standard and Extended ASCII chart * Source : print_ascii.c * Author : Some Student * Version : 1.0
*/
#include
main()
{
}
第二步添加一个具有一个变量的循环语句 /* 我们想去打印所有的标准和扩展ASCII码的值,这就意味着循环从0至255* Title : Print Standard and Extended ASCII chart * Source : print_ascii.c
* Author : NJCIT
* Version : 1.0
*/
#include
main()
{
int i;
for (i=1; i<=255; i++) {
}
return(0);
}
第三步不同数据格式打印变量值 我们现在想使用十进制和十六进制和ASCII字符打印每个字符。
/*
* Title : Print Standard and Extended ASCII chart
* Source : print_ascii.c
* Author : NJCIT
* Version : 1.0 - Initial release
*/
#include
main()
{
int i;
for (i=1; i<=255; i++) {
printf("%d %x %c\n", i, i, i);
}
return(0);
}
第四步打印标题并将每列对齐
现在,我们将每一个字符打印出来,使它变得整洁些并给每一栏加一个标题,注意如何
选择适当的宽度打印每一栏。
我们也会修改一些在我们试图打印一些如“n/a”的控制符代替一些ASCLL码字符(这些
字符是一些不可打印的字符)出现的问题。
/** Title : Print Standard and Extended ASCII chart
* Source : print_ascii.c
* Author : NJCIT * Version : 1.1
*/
#include
main()
{int i;
printf("DEC HEX ASCII\n");
for (i=1; i<=255; i++) {
if (i < 32)
printf("%3d %3x %5s\n", i, i, "n/a");
else
printf("%3d %3x %5c\n", i, i, i);
}
return(0);
}
第五步使它更适应屏幕 现在你可能注意到,没有太多的屏幕是被用来横跨宽.不仅如此, 你必须退回通过输出
缓冲区以便看到更低的数字. 这样效率更高, 如何255行被分割成5栏52行的话就更容易
阅读。
/*
* Title : Print Standard and Extended ASCII chart
* Source : print_ascii.c
* Author : NJCIT
* Version : 2.0
*/
#include
main()
{
int i;
printf("| DEC HEX ASC | DEC HEX ASC | DEC HEX ASC "); printf("| DEC HEX ASC | DEC HEX ASC |\n");
第六步打印一些边框 现在,假如需要的话,我们有一个可以在一张A4纸上合理的打印ASCII的图表,我们
现在需要做的是给一张
表格
关于规范使用各类表格的通知入职表格免费下载关于主播时间做一个表格详细英语字母大小写表格下载简历表格模板下载
用一个扩展ASCII特殊字符制作一个边框。
/*
* Title : Print Standard and Extended ASCII chart
* Source : print_ascii.c
* Author : NJCIT
* Version : 2.1
*/
#include
main()
{
int i, a;
for (a=0; a<71; a++)
printf("%c", 205);
printf("\n");
printf("| DEC HEX ASC | DEC HEX ASC | DEC HEX ASC ");
printf("| DEC HEX ASC | DEC HEX ASC |\n");
for (a=0; a<71; a++)
printf("%c", 205);
printf("\n");
for (i=1; i<=51; i++) {
if (i < 32)
printf("| %3d %3x %3s ", i, i, "n/a");
else
printf("| %3d %3x %3c ", i, i, i); printf("| %3d %3x %3c | %3d %3x %3c ", i+51, i+51, i+51, i+102, i+102, i+102);
printf("| %3d %3x %3c | %3d %3x %3c |\n", i+153, i+153, i+153, i+204, i+204,
i+204);
}
第七步 将一些通用的功能转换成函数(进阶)
最后的阶段是介绍一个简单函数的概念,一个方法一个C源程序的一个模块,这个模块可以
在项目的任何地方被调用(包括函数的内部)。 我们从最后一步了解到,一段代码被重复使用了三次,这将是一个方法的理想条件。
/* Title : Print Standard and Extended ASCII chart
* Source : print_ascii.c
* Author : NJCIT
* Version : 2.2
*/
#include
void pretty_line()
{int a;
for (a=0; a<71; a++) {
printf("%c", 205);
}
printf("\n");
return;
}
main()
{int i;
/* Print the top border line */
pretty_line();
/* Print the heading */
printf("| DEC HEX ASC | DEC HEX ASC | DEC HEX ASC "); printf("| DEC HEX ASC | DEC HEX ASC |\n"); /* Print the middle border line */
pretty_line();
for (i=1; i<=51; i++) {
if (i < 32)
第八步 扩展打印函数的边界 (进阶) 这一点它看起来不错,为了使用合适的拐角和分隔栏获得一个专业的边框,我们必须去
使用一些扩展字符中的特殊字符。
以下是三种类型的线条是必要的:
, 顶线
, 标题下的线条 (中间线条)
, 底线
一个方法可以有一个通过调用时传入的参数,参数可以是任何类型的(在topic2中讨
论),我们就指派一个整数类型作为第一个参数,调用的线条类型如下:
, 0 是顶线
, 1 是中线
, 2 是底线
现在,我们观察每一个线条,除了第一个、最后一个和和分栏符,它们基本相同。
我们将使用一个例子去选择线条的样式,通过一个变量来改变调用的左右中的符号。
最后,我们可以使用嵌套的三个操作打印线条,实际打印的符号是否是根据第一条
(a=0)、是否是最后一条(a=70)或者是否是栏分割位置(a % 14 == 0)。
/*
* Title : Print Standard and Extended ASCII chart * Source : print_ascii.c
* Author : NJCIT
* Version : 3.0
*/
#include
/*
left_char = 198;
right_char = 181;
mid_char = 216; break;
case 2: /* Bottom line */ left_char = 212;
right_char = 190;
mid_char = 207; break;
default: /* Invalid argument passed to us. */
left_char = ‘-’;
right_char = ‘-’;
mid_char = ‘+’;
}
for (a=0; a<71; a++) {
ext_char= (a==0)? left_char:(a==70)?right_char:(a % 14== 0) ? mid_char : 205;
printf("%c", ext_char);
}
printf("\n");
return;
}
main()
{int i;
/* Print the top border line */
pretty_line(0);
/* Print the heading */
printf("| DEC HEX ASC | DEC HEX ASC | DEC HEX ASC ");
printf("| DEC HEX ASC | DEC HEX ASC |\n");
/* Print the middle border line */ pretty_line(1);
/* Print the ASCII table */
最终结果最终结果