- 1、本文档共52页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c编程入门第一次课课件
一、编程思想和语言基础;绪论;课表;一、编程思想和语言基础;1.1编程思想;1.1编程思想;1.1编程思想;1.1编程思想;1.2C/C++语言初步;1.2C/C++语言初步;1.2C/C++语言初步;1.2C/C++语言初步;明明的随机数;明明的随机数;明明的随机数;明明的随机数;1.2C/C++语言初步;1.3 结构体(记录类型);1.3 结构体(记录类型);1.3 结构体(记录类型);?谁拿了最多奖学金;?谁拿了最多奖学金;?谁拿了最多奖学金;1.4高精度计算;1.4高精度计算;【例1】高精度加法。输入两个正整数,求它们的和。
【分析】
输入两个数到两个变量中,然后用赋值语句求它们的和,输出。但是,我们知道,在C++语言中任何数据类型都有一定的表示范围。而当两个被加数很大时,上述算法显然不能求出精确解,因此我们需要寻求另外一种方法。在读小学时,我们做加法都采用竖式方法,如图1。 这样,我们方便写出两个整数相加的算法。;因此,算法描述如下:
int c[100];
void add(int a[],int b[]) //a,b,c都为数组,分别存储被加数、加数、结果
{
int i=1,x=0; //x是进位
while ((i=a数组长度)||(i=b数组的长度))
{
c[i]=a[i]+b[i]+x; //第i位相加并加上次的进位
x=c[i]/10; //向高位进位
c[i]%=10; //存储第i位的值
i++; //位置下标变量
}
}; 通常,读入的两个整数用可用字符串来存储,程序设计如下:
#includeiostream
#includecstdio
#includecstring
using namespace std;
int main()
{
char a1[100],b1[100];
int a[100],b[100],c[100],lena,lenb,lenc,i,x;
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
memset(c,0,sizeof(c));
gets(a1);
gets(b1); //输入加数与被加数
lena=strlen(a1);
lenb=strlen(b1);
for (i=0;i=lena-1;i++) a[lena-i]=a1[i]-48; //加数放入a数组
for (i=0;i=lenb-1;i++) b[lenb-i]=b1[i]-48; //加数放入b数组
lenc =1;
x=0;
; ;【例2】高精度减法。输入两个正整数,求它们的差。
【算法分析】
类似加法,可以用竖式求减法。在做减法运算时,需要注意的是:被减数必须比减数大,同时需要处理借位。高精度减法的参考程序: #includeiostream
#includecstdio
#includecstring
using namespace std;
int main()
{
int a[256],b[256],c[256],lena,lenb,lenc,i;
char n[256],n1[256],n2[256];
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
memset(c,0,sizeof(c));
; printf(Input minuend:); gets(n1); //输入被减数
printf(Input subtrahend:); gets(n2); //输入减数
if (strlen(n1)strlen(n2)||(strlen(n1)==strlen(n2)strcmp(n1,n2)0))
//strcmp()为字符串比较函数,当n1==n2, 返回0;
//n1n2时,返回正整数;n1n2时,返回负整数
{ //处理被减数和减数,交换被减数和减数
strcp
您可能关注的文档
- BP-英国议会制辩论赛制简介课件.ppt
- Braden--压疮评分表详解课件.ppt
- BOSTON2003全球通品牌调研报告课件.ppt
- BowTieXP风险分析与管理软件介绍课件.ppt
- BRAS培训-ADSL接入基础课件.ppt
- 店铺销售员英语培训详解.ppt
- 应用文概述详解.ppt
- 店面服务礼节规范详解.ppt
- BMW技术亮点课件.ppt
- Brunnstrom各个时期的康复治疗课件.doc
- 安徽省滁州市民办高中2025年高三自主命题摸拟试题(一)英语试题含解析.doc
- 安徽省安庆一中安师大附中2025届教学质量检测试题语文试题含解析.doc
- 安徽省蚌埠市三县联谊校2025年高三下-第一次考试生物试题试卷含解析.doc
- 安徽省安庆二中碧桂园分校2025届高三下学期等级考调研(二模)语文试题试卷含解析.doc
- 安徽省蚌埠市田家炳中学2025届高三下学期开学考试(2月)语文试题含解析.doc
- 安徽省巢湖市汇文实验学校2025年高三联考A卷英语试题含解析.doc
- 安徽省滨湖寿春中学2024-2025学年高三下学期四调考试语文试题(8K版,含解析)含解析.doc
- 安徽省亳州市三十二中2025届高三下学年期末考试英语试题试卷含解析.doc
- 安徽省池州市重点中学2025年高三下学期教学质量监测(三模)生物试题含解析.doc
- 安徽省滁州市民办高中2025年高三下学期大联考卷Ⅱ英语试题试卷含解析.doc
文档评论(0)