程序设计2018秋

上传人:n**** 文档编号:93077128 上传时间:2019-07-16 格式:PPT 页数:62 大小:402KB
返回 下载 相关 举报
程序设计2018秋_第1页
第1页 / 共62页
程序设计2018秋_第2页
第2页 / 共62页
程序设计2018秋_第3页
第3页 / 共62页
程序设计2018秋_第4页
第4页 / 共62页
程序设计2018秋_第5页
第5页 / 共62页
点击查看更多>>
资源描述

《程序设计2018秋》由会员分享,可在线阅读,更多相关《程序设计2018秋(62页珍藏版)》请在金锄头文库上搜索。

1、程序设计-2018秋,1,Allan Turing (阿伦图灵),2019/7/16,程序设计-2018秋,2,Allan Turing,1912年生于英国伦敦 1931年进入剑桥大学国王学院学习 1936年发表论文“On computable numbers with an application to the Entscheidungs problem”,提出图灵机“Turing Machine”模型 1938年在普林斯顿大学获博士学位 1939年服役,从事密码破译研究 1945-1948年在英国国家物理实验室,研制ACE计算机 此后,加盟曼切斯特大学皇家学会计算实验室,此期间发表著名论文

2、“Computing Machine and Intelligence” 1951年被选为英国皇家学会院士 1952年,因同性恋遭政府刑事起诉 1954年,在其42岁生日前服毒自杀身亡 2009年9月10日,当时的英国首相戈登布朗代表英国政府对图灵当年遭受到的不公正处置公开表示正式道歉,2019/7/16,程序设计-2018秋,3,ACM Turing Award(图灵奖),美国计算机协会(Association for Computing Machinery)于1966年设立的第一个奖项 宗旨:奖励在计算机科学研究中做出创造性贡献、推动计算机科学技术发展的杰出计算机科学家 奖金额:最初2万美

3、金;1989年增至2万5千美金;2007年在 Intel和Google资助下,奖金提升到25万美金;从2014年开始,在Google资助下,奖金提升到100万美金 到2018年,总共有67位计算机科学家获得该奖项,2019/7/16,第二讲 基本数据及其运算,(第二部分) 周水庚 2018年9月27日,程序设计-2018秋,5,提要,数据输入输出基础 实例讲解,2019/7/16,程序设计-2018秋,6,提要,数据输入输出基础 实例讲解,2019/7/16,程序设计-2018秋,7,字符输出函数: putchar(),字符输出函数的功能 函数调用putchar(ch)将实参ch的值作为ASC

4、II码,输出该代码对应的字符到标准输出设备上 putchar()的使用方法 调用函数时,需提供一个实参,实参可以是字符型或整型数据,包括字符型常量(包括控制字符和转义字符),字符型变量,整型变量等,2019/7/16,#include void main() char ch; int i; ch = h; i = i; putchar(C); /* 输出字符 C */ putchar(ch); /* 输出字符 h */ putchar(i); /* 以字符形式输出整型变量值 */ putchar(n); putchar(141);/* 输出字符 a */ putchar(n); 运行该程序将输

5、出: China,8,程序设计-2018秋,2019/7/16,程序设计-2018秋,9,字符输入函数:getchar(),从标准输入设备上读取一个字符。该函数没有参数,对它的每次调用,就返回下一个输入字符的ASCII码值 getchar()读取字符的时候,是从stdin的“缓存”中读的。用户输入的字符被存放在键盘缓冲区中,当用户键入回车(回车字符也放在缓冲区中)之后,getchar ()才开始从stdin流中每次读入一个字符。getchar ()函数的返回值是用户输入的第一个字符的ASCII码,如出错返回-1 如用户在按回车之前输入了不止一个字符,其它字符会保留在键盘缓存区中,等待后续get

6、char ()调用读取。也就是说,后续的getchar ()调用不会等待用户按键,而直接读取缓冲区中的字符,直到缓冲区中的字符读完为后,才等待用户按键 执行语句:“ch = getchar(); ”使变量ch得到输入字符的ASCII码值。变量ch为char型或int型,2019/7/16,#include void main() char c ; c = getchar(); /* 调用getchar()不要参数*/ putchar(c); /* 输出读入的字符 */ putchar(n); 程序运行时,如果从键盘键入字符 Z 和回车: Z 程序输出 c 的值Z: Z,10,程序设计-2018

7、秋,2019/7/16,/*输入字符,输出字符及其代码*/ #include void main() char c1, c2; c1 = getchar(); /* 输入一个字符 */ c2 = getchar(); /* 再输入一个字符 */ putchar(c1); putchar(c2); printf(“code1 = %d code2 = %dn“, c1, c2); ,11,程序设计-2018秋,2019/7/16,输入: Y+回车 Y+回车 输出: 1: Y 2: 3: Y end,#include void test_GetChar() char c; c = getchar(

8、); printf(“1: %cnn“, c); c = getchar(); printf(“2: %cnn“, c); c = getchar(); printf(“3: %cnn“, c); printf(“endnn“); ,12,程序设计-2018秋,2019/7/16,#include int main(void) int c; while (c = getchar() != n) printf(“%c“, c); return 0; ,利用getchar()函数让程序等待用户按下“回车键”(Enter键)后才退出,在调试程序的时候很有用。用法:在主函数结尾return 0之前,加

9、上getchar()即可。,13,程序设计-2018秋,2019/7/16,关于字符输出,在输出字符串中,出现以转义符+数字表示的字符时,转义符将结合尽可能多的有效数字作为一个字符输出 譬如: printf(“06711”);输出:711 /* 7的ASCII码为55,即067 printf(“081111”);输出: /* 0是字符串结束符 printf(“1081111”);输出:81111 /* 10 表示退格符b printf(“7ag”);输出:zg /* 7a表示122,z的ASCII码 printf(“7gc”);输出:先嘟一下,然后输出gc 计算机键盘上的enter键,表示n,

10、2019/7/16,程序设计-2018秋,14,程序设计-2018秋,15,printf(),printf()函数的功能是将输出项按指定的格式排版输出到标准输出设备上 调用printf()函数的一般形式为: printf(格式控制字符串,输出项,输出项, ) 格式控制字符串是字符串表达式,通常是由用一对双引号括起来的字符串常量。格式控制字符串包含三类字符:普通字符、转义字符和格式转换说明 普通字符,要求按原样输出 转义字符,要求按转义字符的意义输出,如n,表示输出时回车换行, b表示退格等 格式转换说明,以字符%开头至输出格式符结束的字符列组成,2019/7/16,程序设计-2018秋,16,

11、printf()(续),格式转换说明的一般形式 %-+ #w.ph/l/L输出格式符 其中,用方括号括住的内容是格式修饰说明,可以缺省,如”%d”、”%7.5f”等。每个格式转换说明对应一个输出项,输出项可以是常量、变量或表达式 格式转换说明的作用是将对应输出项的内容按要求产生出字符列,并排版输出 例如: printf(“a=%d,b=%d,a+b=%dn“, a, b, a+b) 字符串“a=%d,b=%d,a+b=%dn” 为格式控制字符串 %d为格式转换说明,a=、,b=、,a+b=都为普通字符,n是转义字符。格式控制字符串后的a、b、a+b为输出项。若格式控制字符串中没有格式转换说明,

12、输出项也就不再需要,2019/7/16,printf(格式控制字符串,输出项,输出项, ),%格式修饰说明 输出格式符,-+ #w.ph/l/L,“普通字符/转义字符/格式转换说明”,17,程序设计-2018秋,2019/7/16,输出格式符共有16个,有12种不同的格式 格式符 意 义 d或i 整型数据以十进制形式输出 o 整型数据以八进制形式输出 x或X 整型数据以十六进制形式输出 u 无符号整型数据以十进制形式输出 c 字符的ASCII码数据,输出对应的字符 s 输出字符串 f 以“整数部分.小数部分”形式输出实型数据 e或E 以-n .nnnnnexx输出实型数据 g或G 以f或e格式

13、输出实型数据 p 指针值转换成一串可显示的字符输出 n 记录已输出的字符个数 % 输出一个字符%,18,程序设计-2018秋,2019/7/16,程序设计-2018秋,19,printf()(续),x(或X)和o格式符把符号位作为数的一部分输出。x(或X)用字符a、b、c、d、e、f(或A、B、C、D、E、F)表示 9 之后的6个十六进制数字符 一个整数,只要它的值在0255 范围内,也可以用字符形式输出,输出以该整数为ASCII代码的字符。反之,一个字符数据也可以用整数形式输出,输出该字符的ASCII代码值 f、e(或E)和g(或G)格式符用于输出实型数据, 格式转换时有四舍五入处理 对于f

14、 格式,小数点后的数字个数可由格式修饰说明p指定,若p为0,不显示小数点,2019/7/16,程序设计-2018秋,20,printf()(续),用e(或E)格式输出时,对于非0实数,小数点前有一位非零数字,输出格式中的有效位数可由格式修饰说明p指定;字符 e(或E)之后是指数,指数部分至少包含两个数字。若输出值的绝对值不小于 1E+100,则指数部分多于两位数字 g(或G)格式能根据表示数据所需字符的多少自动选择f格式或e(或E)格式输出实数,选择是以输出时所需字符少为标准 n格式符不产生输出,对应输出项是一个整型变量地址(int *),即整型指针;printf()把本次调用截至解释该格式符

15、为止已输出字符个数放在对应变量中,2019/7/16,程序设计-2018秋,21,printf()(续),格式修饰说明有7种: %-+ #w.ph/l/L w域宽说明,w 是一个十进制整数,表示输出字段的字符数。若转换后需要的字符个数比给出的宽度w 多,以实际需要为准;若转换后需要的字符数比w 少,就在左边用填充字符补足(若左边对齐(-),则在右边补填充字符)。通常用空白符作填充字符,若十进制整数w有前导0(此0不表示以八进制数给出字段宽度),则以字符0作填充字符 域宽说明也可以是字符*,这时域宽大小由下一个输出项的整数值给出,又若该值为负值,相当于有左对齐标志-。例如printf(“%*d“,iw,123)显示123占用的域宽由整型变量iw给出,并当iw为负值时,表示以左对齐方式编排输出的格式,2019/7/16,程序设计-2018秋,22,printf()(续),- 左对齐标志,当转换后字符个数少于w时,在w所限定的字段宽度内,转换所得字符列左对齐,右边补填充符。缺省时,右对齐,左边补填充符 + 正数也带符号输出,适用于带符号的数值数据输出。根据数值的正、负,在数值字符列之前加上符号+或-。缺省时,只对负数输出有负号-

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号