• C语言程序设计(方红琴)
  • C语言程序设计(方红琴)
21年品牌 40万+商家 超1.5亿件商品

C语言程序设计(方红琴)

正版全新

22.8 7.1折 32 全新

库存3件

上海浦东
认证卖家担保交易快速发货售后保障

作者方红琴,杨玉蓓 主编

出版社华中科技大学出版社

ISBN9787560984971

出版时间2013-02

装帧平装

开本16开

纸张胶版纸

定价32元

货号1847222

上书时间2024-03-12

闲暇一卷书的书店

三年老店
已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
【书    名】 C语言程序设计(方红琴)
【书    号】 9787560984971
【出 版 社】 华中科技大学出版社
【作    者】 方红琴,杨玉蓓 主编
【出版日期】 2013-02-01
【开    本】 16开
【定    价】 32.00元

【编辑推荐】 
《C语言程序设计》这本书是各位参与编写的老师多年对C语言课程的教学经验的总结,对C语言的各项知识都做了详细和全面的介绍,并配以大量的例题和练习题。本书在认真吸收经典教材的优秀经验的基础上,对知识结构进行了调整,略去了一些过深过专的知识点,方便学生能够学以致用,使其更贴近于实际应用,可以说《C语言程序设计》是一本不可多得的好书。

【内容简介】 
《C语言程序设计》对传统的C语言程序设计教材在结构和内容方面进行了调整,充分考虑了应用型本科院校的教学现状及其学生的学习规律,使其更适于应用型本科院校的教学。《C语言程序设计》*重要的特点是理论与实践相结合,让学生在实践中理解和掌握理论,这也更加符合应用型本科院校学生的认知规律。《C语言程序设计》共11章,主要包括C语言程序设计基础,数据类型、运算符和表达式,数据的输入/输出,选择结构,循环结构,函数,数组,指针,编译预处理,结构体及文件等内容。为了方便教学,本书还配有电子课件等教学资源包,任课教师和学生可以登录我们爱读网(www.ibook4us.com)免费注册下载,也可以发邮件至hustpeiit@163.com索取。本书既适用于应用型本科院校信息大类相关专业的师生,也适用于以提高实践能力为主的培训班的师生及C语言自学者等

【目录】 
第0章 绪论 
  0.1 传统设计方法与EDA设计方法的区别 
  0.2 常用硬件描述语言 
第1章 EDA工具软件Quartus II 6.0 
  1.1 安装Quartus II 6.0软件 
  1.2 Quartus II 6.0软件应用向导 
  1.3 嵌入式逻辑分析仪的使用方法 
  1.4 原理图输入设计方法 
  习题 
第2章 大规模可编程逻辑器件 
  2.1 可编程逻辑器件概述 
  2.2 复杂可编程逻辑器件 
  2.3 现场可编程门阵列 
  2.4 CPLD和FPGA器件的编程与配置 
  2.5 FPGA  CPLD器件的测试技术 
  2.6 FPGA和CPLD器件的开发应用选择 
  习题 
第3章 VHDL基本结构 
  3.1 VHDL概述 
  3.2 设 计 实 体 
  3.3 结构体 
  3.4 VHDL结构体的子结构 
  3.5 子程序结构 
  3.6 库和程序包 
  3.7 配置 
  习题 
第4章 VHDL语言要素 
  4.1 VHDL数据对象 
  4.2 VHDL数据类型 
  4.3 VHDL操作符 
  习题 
第5章 VHDL顺序语句 
  5.1 赋 值 语 句 
  5.2 流程控制语句 
  5.3 WAIT语句 
  5.4 ASSERT语句 
  5.5 RETURN语句 
  5.6 NULL语句 
  习题 
第6章 VHDL并行语句 
  6.1 进 程 语 句 
  6.2 块 语 句 
  6.3 并行信号赋值语句 
  6.4 子程序和并行过程调用语句 
  6.5 元件例化语句 
  6.6 生 成 语 句 
  习题 
第7章 组合逻辑电路模块 
  7.1 门 电 路 
  7.2 编码器、译码器、选择器电路 
  习题 
第8章 时序逻辑电路设计 
  8.1 触发器 
  8.2 寄存器 
  8.3 计数器 
  8.4 有限状态机 
  8.5 有限状态机的基本描述 
  8.6 MOORE型状态机 
  8.7 MEALY型状态机 
  8.8 MEALY型和MOORE型状态机的变种 
  8.9 异步状态机 
  习题 
第9章 EDA技术的综合应用 
  9.1 显示电路设计 
  9.2 多路彩灯控制器的设计 
  9.3 智力抢答器的设计 
  9.4 量程自动转换数字式频率计的设计 
  9.5 用8×8行共阴、列共阳双色点阵发光器件显示汉字 
  9.6 音乐发生器的设计 
  习题 
第10章 Verilog HDL 
  10.1 Verilog HDL程序模块结构 
  10.2 Verilog HDL的词法 
  10.3 Verilog HDL的语句 
  10.4 不同抽象级别的Verilog HDL模型 
  习题 
第11章 宏模块的应用 
  11.1 宏模块概述 
  11.2 存储器设计 
  11.3 乘法器设计 
  11.4 锁相环设计 
第12章 SoPC技术与应用基础 
  12.1 SoPC技术发展概况 
  12.2 SoPC技术的应用 
  12.3 Nios II简介 
  12.4 SoPC设计流程与支持Nios II的FPGA器件 
附录A VHDL语言的保留字 
参考文献

【文摘】 
第3章数据的输入/输出
一个计算机程序通常分为输入、处理、输出三个部分。计算机通过输入操作接收数据,然后对数据进行处理,*后将处理完成的数据以完整有效的方式提供给用户。C语言没有提供专门的输入/输出语句,输入/输出功能由C语言的标准输入/输出库函数提供。C语言有非常丰富的输入/输出库函数,有用于键盘输入的函数,有用于显示器输出的函数,有用于磁盘文件读写的函数,有用于硬件端口操作的输入/输出函数等。编写程序时通过对这些库函数的调用就可以达到输入/输出的目的。本章主要介绍用于键盘输入和用于显示器输出的字符输入/输出库函数和格式化输入/输出库函数。3.1字符的输入与输出函数3.1.1字符的输出函数
putchar函数putchar函数的相关知识介绍如下。1) 函数原型intputchar ( int );2)
函数功能向标准输出设备(一般指显示器)输出一个字符,并返回该输出字符的ASCII码值。3)
使用说明函数的参数可以是字符型常量或变量,也可以是整型常量或变量,均输出其相应的字符。例如,若定义char
ch='a',则putchar(ch)输出字符'a';若定义int
i=65,则putchar(i)输出字符'A'。【例3?1】字符数据的输出。
#include
void main()
{
char a,b;
a='b';
b='o';
putchar(a);/*参数可以是字符型变量,输出该变量所对应的字符*/
putchar(b);
putchar('y');/*参数可以是字符型常量,输出该字符常量*/
putchar('\n');/*参数还可以是起控制作用的控制字符,输出回车换行*/
}程序运行结果如下。
boy3.1.2字符的输入函数1. getchar函数 getchar函数的相关知识介绍如下。1)
函数原型intgetchar(void);2)
函数功能从输入设备(一般指键盘)上接收输入的一个字符,函数的返回值是所输入字符的ASCII码值。3)
使用说明该函数每调用一次,就从标准输入设备(键盘)上取一个字符,函数值可以赋给一个字符型变量,也可以赋给一个整型变量。例如,分析如下的程序。

#include
void main()
{
int ch;
ch=getchar();
putchar(ch);
}程序运行后,输入字符“a”,并按回车键。a ↙则变量ch的值为97,程序运行结果如下。a
注意:① 执行getchar(
)函数从键盘输入字符时,应注意输入的字符并不是立即赋值给字符型变量或整型变量,而只有在按回车键后,字符才会被赋值给字符变量或整型变量。也就是说,键入字符后需要按回车键,程序才会继续执行后续语句。②
getchar(
)函数从键盘读入字符时,该函数会将回车键也作为一个字符读入。因此,在使用getchar()函数连续读入多个字符时需特别注意。例如,下面程序的功能是“从键盘输入三个字符并反向输出这三个字符”,但运行的结果却事与愿违。

#include
main()
{
int ch1,ch2,ch3;
ch1=getchar();
ch2=getchar();
ch3=getchar();/*依次输入三个字符*/
putchar(ch3);/*反向输出三个字符*/
putchar(ch2);
putchar(ch1);
}2. getch函数getch函数的相关知识介绍如下。1) 函数原型intgetch(void);2)
函数功能从键盘读取一个字符,但不显示在屏幕上。3)
使用说明该函数声明在conio.h头文件中,使用的时候要包含conio.h头文件。具体声明的格式如下。
#includegetch()与getchar()的基本功能相同,区别是getch()直接从键盘获取键值,不需要用户按回车键,而只要用户按一个键,getch()就立刻返回键值,getch()的返回值是用户所输入键的ASCII码值,出错时返回-1。输入的字符不会显示在屏幕上。例如,下面的程序使用getchar()函数接收从键盘输入一个字符。

#include
#include
main()
{
int ch;
ch=getchar();
putchar(ch);
}程序运行后,若用户输入字符a并按回车键后,程序运行结果如下。
a
a第*行显示的a是程序执行getchar()函数后,用户所输入的a显示在屏幕上。而第二行显示的a是程序执行putchar(ch)函数后,将刚才键盘输入的数据显示到屏幕上。但是同样的程序,改为使用getch(
)函数接收从键盘输入一个字符,则其结果就不相同了。
#include
#include
main()
{
int ch;
ch=getch();
putchar(ch);
}程序运行后(用户输入字符a后不用按回车键便可显示结果)结果如下。
a为什么该程序运行后只显示1个字符a
因为getch()函数接收从键盘输入的字符,但返回后并不显示至屏幕,因此屏幕上只有putchar()函数将刚才键盘输入的字符显示到屏幕上。

总结利用getch()函数从控制台读取一个字符,不等待用户按回车键,只要用户按一个键,getch就立刻返回键值,并且读取的字符不显示在屏幕上的特点,getch()函数经常用于在程序中完成“按下任意键,再继续执行下面的程序”的功能,即起到“分屏显示”的作用。例如,分析如下程序。

#include
#include
main()
{
clrscr();/*清屏函数 */
printf("This is example 1\\n");
printf("Press any key to continue.......\\n");
getch();①=1\*GB3
clrscr();
printf("This is example 2\\n");
printf("Press any key to continue.......\\n");
getch();②=2\*GB3
clrscr();
printf("End !\\nThankyou ! \\n");
}程序执行后首先显示如下内容。
This is example 1
Press any key tocontinue.......执行至 ①=1\*GB3
句时,程序暂停,等待用户按下任意键,当用户按下任意键后,程序继续,屏幕上显示如下内容。
This is example 2
Press any key tocontinue.......再执行至②=2\*GB3
句时,程序暂停,等待用户按下任意键,当用户按下任意键后,程序继续,屏幕上显示如下内容。
End !
Thankyou
!至此程序结束。在此程序中,getch()函数起到了“分屏显示”的功能。getch函数常用于程序调试中。调试时,若在程序中间要查看某些变量的结果,可以插入getch()函数使程序暂停运行,从而查看变量的值,当按下任意键后程序继续运行。例如,分析如下的程序。

#include
#include
main()
{
int a=10;
clrscr();
printf("0: a=%d\\n",a); /*为了查看此时a变量的值,下一句使用getch()*/
getch();

a+=10;
clrscr();

printf("1: a=%d\\n",a); /*为了查看此时a变量的值,下一句使用getch()*/
getch();

a+=20;
clrscr();
printf("2:a=%d\\n",a);
}程序运行后,屏幕上显示如下内容。
0:a=10程序暂停,当按下任意键后程序继续执行,屏幕上显示如下内容。
1:a=20程序再一次暂停,当按下任意键后程序继续执行,屏幕上显示如下内容。
2:a=403. getche函数getche函数的相关知识介绍如下。1) 函数原型intgetche(void);2)
函数功能从键盘读取一个字符,并显示在屏幕上。3)
使用说明该函数声明在conio.h头文件中,使用的时候要包含conio.h头文件。getche()和getch()相似,都是读入单个字符,都是从键盘获取键值,不需要用户按回车键,只要用户按一个键,函数就立刻返回,返回值是用户所输入键的ASCII码值。不同的是getch()不会将读入的数据显示在屏幕上,而getche()会把读入的字符显示在屏幕上。例如,分析如下的程序。

#include
#include
main()
{
int ch;
ch=getche();
putchar(ch);
}程序执行后等待用户从键盘输入值,若用户按下a键后(不等用户按回车键),程序运行结果如下。
aa其中,第*个字符a是getche()函数接收用户所输入的字符并显示在屏幕上的,第二个字符a是putchar()函数将接收的字符显示在屏幕上的。3.2格式化输入与输出函数3.2.1格式化的输出函数printf格式化输出函数printf的相关知识介绍如下。1)
一般形式printf ( "格式控制字符串",输出项列表 );2)
函数功能按指定的格式向输出设备(一般指显示器)输出数据,并返回实际所输出的字符个数,如果出错则输出负数。3) 使用说明(1)
例如,在printf("%d*%d=%d\\n",i,j,i*j)
语句中,“i,j,i*j”部分称为“输出项列表”,列表中可以是若干个常量、变量或表达式,每个输出项之间用逗号分隔,输出的数据可以是整型数、浮点型数、字符或字符串。例如,分析如下的程序。

#include
main()
{
int i,j;
i=2;
j=3;
printf("%d*%d=%d\\n",i,j,i*j);/*三个输出项*/
printf("%d÷%d=%g\\n",j,i,(float)j/i);
}程序运行结果如下。
2*3=6
3÷2=1.5(2) 例如,在printf("The output x=%d\n",x) 语句中,用双引号括起来的"The
output x=%d\n"
部分称为“格式控制字符串”,使用时必须用双引号括起来,它的作用是控制输出项的格式和输出一些提示信息。“格式控制字符串”中可以包含以下三方面的内容。①
“格式控制字符串”中可以包含若干个一般字符,如上述的 "The output x= ",它主要用于显示程序中的提示信息。②
“格式控制字符串”中可以包含若干个以“\\”开头的转义字符(转义字符指一些特定的操作,如“\\n”表示换行,“\\t”表示水平制表等,参见第2章的相关内容)。例如,分析如下程序。

int i=2;
int j=3;
printf("%d\\t%d\\t%d\\t%g\\n",i,j,i*j,(float)j/i );程序运行结果如下。
2 36 1.5常用的以“\\”开头的转义字符所表示的特定操作参见表2?4。●
“控制字符串”中可以包含若干个以“%”开头的格式说明(如上述的“%d”),它们的作用是定义每一个输出项的显示格式。每一个输出项需要有一个对应的格式说明,并且每个输出项将按照其对应的格式说明进行输出。常见的printf格式说明如表3?1所示。

表3?1常见的printf格式说明
格式说明功能%d以带符号的十进制形式输出整数(正数不输出“+”号)%o(字母o)以无符号的八进制形式输出整数(但前导数字0不输出)%x或%X以无符号的十六进制形式输出整数(前导符号0x不输出)%u以无符号十进制形式输出整数%c输出一个字符%s输出一个字符串%f以小数形式输出单精度、双精度浮点数%e或%E以指数形式输出单精度、双精度浮点数%g根据给定的值和精度,自动选择f与e中较紧凑的一种格式,不输出无意义的0%p用于输出变量在内存中的地址(变量的地址由编译程序分配)%ld,
%lo, %lx, %lu
%lf, %le, %lg用于长整型数据输出(%ld, %lo, %lx, %lu), 以及双精度型数据输出(%lf, %le,
%lg)【例3?2】分别用十进制、八进制及十六进制的方式显示整数16。
#include
main()
{
int x=16;
printf("%d\\n",x);/*按十进制方式显示*/
printf("%o\\n",x);/*按八进制方式显示*/
printf("%x\\n",x);/*按十六进制方式显示*/
printf("十八 十六\\n");
printf("%d\\t%o\\t%x\\n",x,x,x);
printf("%p\\n",x); /*输出变量x在内存中的地址*/
}程序运行结果如下。
16
20
10
十八 十六
162010
0010【例3?3】下面的程序用于输出字符及字符串。
#include
main()
{
char ch;
char*st;/*定义一个字符串*/
ch='I';
st="This is an example----";
printf("%s",st); /*输出字符串*/
printf("%c----\\n",ch); /*输出字符、常规字符、转义字符*/
}程序运行结果如下。
This is an example----I----字符串将在后面的章节中详细介绍。(3)
关于格式控制说明符的补充说明。由前面的内容已经知道“%d”格式用来输出十进制整数,它将按照数据的实际长度进行输出。实际上还可以对输出数据所占的字节位数加以限制,方法是在“%”和“d”之间加一个整数,整数可正可负。正整数表示输出数据在所给空间中右对齐,左边留出空格;负整数表示左对齐,右边留出空格。当输出数据位数大于所给空间时,则可突破位数的限制,按其实际大小全部输出。例如,分析如下程序。

#include
main()
{
printf("123456789\\n");
printf("a=%5d\\n",13);/*正整数表示输出数据右对齐,左边空格填充*/
printf("a=%-5d",13);/*负整数表示左对齐,右边空格填充*/
printf("a=%3d\\n",12345);/*当数据位数大于所给位数时,则按实际位数输出*/
}程序运行结果如下。
123456789
a=13
a=13a=12345“%s”格式用来输出字符串。一般情况下它按实际大小输出字符串,但若字符串中含有'\0'字符,则输出到'\0'截止,即此时并不是把双引号中的内容全部输出。例如,分析如下程序。

#include
main()
{
printf("%s\\n","Beijing");
printf("%s\\n","Bei\\0Jing");
}程序运行结果如下。
Beijing
Bei另外,使用“%s”来输出字符串时,也可以指定输出字符串的长度,规则同前。例如分析以下表达式。
printf("s=%6s","book");
printf("s=%-6s","book");
printf("s=%2s","book"); 以上三个表达式的运行结果如下。
s=book(右对齐)
s=book(左对齐)
s=book (突破限制,按实际位数输出)
使用“%s”输出字符串时也可以指定输出字符串前端的部分字符,格式为:%.s。这种格式表示在m列宽度中输出字符串的前n个字符。当m

#include
main()
{
printf("123456789\\n");
printf("s=%7.3s\\n","Beijing");
printf("s=%-7.3s","Beijing");
printf("s=%3.4s\\n","Beijing");
}程序运行结果如下。
123456789
s=Bei
s=Beis=Beij“%f”格式则以小数形式输出单精度、双精度类型的浮点数。以%f格式输出浮点数时,整数部分全部输出,小数部分输出
6 位,但输出的不一定全是有效数字。对单精度浮点数只有左边 7 位有效,而对双精度浮点数只有前 16
位有效。用“%f”格式以小数形式输出单精度、双精度型浮点数时也可以指定输出的宽度和小数位数,方法是在“%”和“f”之间加一小数“m.n”,小数的整数部分m表示输出的浮点数共占m位,其中有n位小数。当所给宽度m小于数据实际位数时,则会自动突破m的限制,这时数据的整数部分全部输出,而小数部分则按要求输出。例如,分析如下程序。

#include
main()
{
printf("%f\\n",1000.1234567);/*整数部分全部输出,小数部分输出6位*/
printf("%10.3f\\n"

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP