第4章第1章基础知识1基础简介.docx

上传人:p** 文档编号:266558 上传时间:2023-04-20 格式:DOCX 页数:9 大小:70.01KB
下载 相关 举报
第4章第1章基础知识1基础简介.docx_第1页
第1页 / 共9页
第4章第1章基础知识1基础简介.docx_第2页
第2页 / 共9页
第4章第1章基础知识1基础简介.docx_第3页
第3页 / 共9页
第4章第1章基础知识1基础简介.docx_第4页
第4页 / 共9页
第4章第1章基础知识1基础简介.docx_第5页
第5页 / 共9页
第4章第1章基础知识1基础简介.docx_第6页
第6页 / 共9页
第4章第1章基础知识1基础简介.docx_第7页
第7页 / 共9页
第4章第1章基础知识1基础简介.docx_第8页
第8页 / 共9页
第4章第1章基础知识1基础简介.docx_第9页
第9页 / 共9页
亲,该文档总共9页,全部预览完了,如果喜欢就下载吧!
资源描述

《第4章第1章基础知识1基础简介.docx》由会员分享,可在线阅读,更多相关《第4章第1章基础知识1基础简介.docx(9页珍藏版)》请在第壹文秘上搜索。

1、第4章第1章基础知识1.1基础简介蓝桥比赛中,前几题往往会考查学生的基础知识,基础知识包含的内容很多,这里选择几个知识点介绍。一、计算机中数据的表示计算机中数据分为数值型数据和非数值型数据。计算机中的数字、字母、符号等信息都必须转换成二进制数据保存在计算机中。这样才能被计算机识别。能够进行算术运算得到明确数值概念的信息称为计算机数值数据,其余如字符、文字、图像、声音等均为非数值数据。L数值类型数据的表示计算机中常用的进制包括十进制、八进制、十六进制和二进制。十进制以正常数字1-9开头,八进制以数字O开头,十六进制以0x(或OX)开头,二进制不能在C语言中直接书写,部分编译器支持以Ob或OB开头

2、的二进制数据表示。例如:inta=12,b=012,c=0xl2;printf(*%d%d%d*,a,b,c);输出结果:121018上述输出结果为十进制输出,数据要想以八进制或者十六进制的形式输出,需要改变输出控制符,如下所示:printf(*%d%o%x”,a,b,c);输出结果:121212那如何表示二进制数据呢?常用的方法就是采用字符数组的方式,下面例子实现了如何将一个十进制数转换成二进制数并存储在字符数组中:WhiIe(num0)辗转取余(arrn+=num%2+0;num=2;)2.非数值类型数据非数值类型数据也是以二进制数据形式保存在计算机中。最简单的就是字符数据,其采用的编码是

3、ASCIl编码。ASClI码也是以整数形式存储在计算机中的,这个整数为编码,常用的编码和字符对应如下:F号编码字符备注10NUL(NULL)多用于字符串结束标志213CR回车键3480其它字符9的编码是依次是4957465A大写字母BZ的编码依次是6690597a小写字母bz的编码依次是98122将一段字符转换成整数存放到一个变量中,常用的方法是:intchnum(charstr)inti,n,num-0;for(i=0;stri!=0,;i+)if(stri=*O,&stri=0;i-)输出结果Printf(%c”,Hexfresulti);三、闰年计算地球绕太阳的运行周期为365天5小时4

4、8分46秒(合365.24219天),即一回归年(tropicalyear)0公历的平年只有365天,比回归年短约0.2422天,每四年累积约一天,把这一天加于2月末(即2月29日),使当年的时间长度变为366天(112月分别为31天、29天、31天、30天、31天、30天、31天、31天、30天、31天、30天、31天),这一年就是闰年。按照每四年一个闰年计算,平均每年就要多算出0.0078天,经过400年就会多出大约3天来,因此,每400年中要减少3个闰年。闰年的计算,归结起来就是通常说的:四年一闰;百年不闰,四百年再闰。利用逻辑表达式表示:year%4=0&year%100!=0year

5、%400=0而对于每月天数的表示,由于也没有规律性,所以常用的表示方式是利用数组来表示。如:intdays13=0,31,28,31,30,31,30,31,31,30,31,30,31);四、文件操作在程序中,经常会遇到需要读取的数据量比较大的情况,如果用键盘输入,则输入时间较长,这时就需要用到文件操作了。常用的文件操作分成以下四步:一是打开文件;二是判断文件打开是否成功;三是读取(写入)文件;四是关闭文件。例如:FILE*fp;fp=fopen(D:,r);if(fP=NULD(printf(*failtoOPen!n);return0;)while(!feof(fp)chi+=fgetc

6、(fp);fclose(fp);由于程序竞赛中,往往只需要从文件中读入程序数据即可,为了简化读入过程,读取文件数据最常用的方法就是文件重定向技术。常用的方式是使用freopen()函数,其声明为:FILE*freopen(constchar*fiIename,constchar*mode,FILE*stream);重定向技术的使用方法如下:将输入重定向到文件,后面的输入语句直接到文件中读取数据freopen(,r,stdin);将输出重定向到文件,后面的输出语句直接将数据输出到文件中freopen(,w,stdout);从文件中读取数据,存入变量中inta,b;scanf(,%d%d”,&a,

7、&b);printf(%dn”,a+b);关闭文件fclose(stdin);fclose(stdout);1.2购物单(2017试题A)【题目描述】小明刚刚找到工作,老板人很好,只是老板夫人很爱购物。老板忙的时候经常让小明帮忙到商场代为购物。小明很厌烦,但又不好推辞。这不,XX大促销又来了!老板夫人开出了长长的购物单,都是有打折优惠的。小明也有个怪癖,不到万不得已,从不刷卡,直接现金搞定。现在小明很心烦,请你帮他计算一下,需要从取款机上取多少现金,才能搞定这次购物。取款机只能提供100元面额的纸币。小明想尽可能少取些现金,够用就行了。你的任务是计算出,小明最少需要取多少现金。以下是让人头疼的

8、购物单,为了保护隐私,物品名称被隐藏了。180.90 10. 2556.14104. 65 100. 30 297. 15 26. 75130. 62240. 28270. 62 115. 87247. 34 73.21 101.00 79. 54278.44 199. 2612. 97166. 30 125. 5084. 98113. 35 166. 5788折65折9折9折88折半价65折 半价58折8折88折95折9折半价 半价7折半价 9折78折58折9折68折 半价42.56 81.90131.78 255. 89109. 17 146. 69 139. 33 141. 16 154

9、. 7459. 42 85. 44293. 70 261. 7911.30268. 27 128. 29251.03 208. 39 128. 8862. 06 225. 8712. 89 34. 2862. 16 129. 12218. 37289. 699折95折8折78折9折68折65折78折8折8折68折88折65折88折58折88折8折75折75折9折75折75折75折58折半价半价8折需要说明的是,88折指的是按标价的88%计算,而8折是按80%计算,余者类推。特别地,半价是按50%计算。请提交小明要从取款机上提取的金额,单位是元。答案是一个整数,类似4300的样子,结尾必然是00

10、,不要填写任何多余的内容。特别提醒:不许携带计算器入场,也不能打开手机。【解析】该题的计算不算复杂,难点在于如何将数据读入到数组中。这里利用了C+中的文件读取技术:文件重定向。程序的具体步骤是:(1)对数据进行预处理由于原始数据有数字,也有中文,需要进行预处理。将数据复制到文本文件中,利用替换工具将“半价”替换成“50”,然后将“折”替换成(空)。最后将文件保存为(2)读取数据到数组利用文件重定向技术:freopen,将数据输入改成到文件中读取。然后利用循环语句读取文件数据。(3)计算数据并输出将读取的数据进行计算,这里注意的是:折扣如果小于10的话,需要进行乘10处理。【参考程序】#incl

11、udeusingnamespacestd;floatprice100;intdiscount100;intmain()(inti;freopcn(z,zz,r”,stdin);i=0;while(cinpriceidiscounti)i+;i=0;floatsum=0;while(pricei!=0)(if(discounti10)sum+=pricei*discounti10;elsesum+=pricei*discounti100;i+;)coutsumendl;return0;)1.3第几天(2018试题A)【问题描述】2000年的1月1日,是那一年的第1天。那么,2000年的5月4日,是那一年的第几天?注意:需要提交的是一个整数,不要填写任何多余内容。【参考答案】125【解析】本题考查

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 资格/认证考试 > 证券从业资格考试

copyright@ 2008-2023 1wenmi网站版权所有

经营许可证编号:宁ICP备2022001189号-1

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第壹文秘网,我们立即给予删除!