您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > C++简易教程byscy
中山市第一中学第一章C++入门工具下载:://(后备)一、编程由键盘输入两个整数a和b,将它们的和输出到屏幕上。(顺便介绍+-*/%六种运算,程序基本结构,scanf,printf的各种作用,熟悉dev)#includecstdio#includeiostreamusingnamespacestd;intmain(){inta,b;scanf(%d%d,&a,&b);printf(%d,a+b);system(pause);//提交OJ的时候,这句话要删掉。return0;}练习:1.换行就是加\n2.到OJ上提交,同时学会怎么上OJ做题,以及介绍各大OJ和入门阶段常用OJ。a)中山一中OJ:)杭州电子科技大学OJ:把int改成double那么%d改为%lf4.控制小数位数5.控制宽度(实数和整数)6.int和double混用会怎样?7.把int改成char,介绍char的输入输出,以及char和int的关系,引入ASII码。8.输入三个数,计算并输出它们的平均值以及三个数的乘积,写出程序。(任意组合)9.某梯形的上底、下底和高分别为8,12,9,求该梯形的面积。10.输入圆的半径R,求圆的面积和周长。11.已知图圆柱体的高为12,底面圆的半r径为7,求圆柱体表面积。12.输入球的半径r,计算球的表面积和球的体积。球体积V=(3.1415926535*r^3)*(4/3)二、输入三角形的三条边(实数),输出三角形的面积(计算公式:S=。其中P=)学习使用函数:sqrt开平方:sqrt(25)=5,并且要附带加一个头文件cmath解析:海伦公式,三条边确定了,那么三角形确定吗?如果确定,那么三角形的面积也确定,那么面积怎么求呢?三角形的三条边分别为a,b,c,p=(a+b+c)/2,三角形ABC面积S=sqrt[p(p-a)(p-b)(p-c)]#includecstdio#includeiostream#includecmathusingnamespacestd;intmain()中山市第一中学{doublea,b,c,p,s;scanf(%lf%lf%lf,&a,&b,&c);p=(a+b+c)/2.0;s=sqrt(p*(p-a)*(p-b)*(p-c));printf(%.2lf\n,s);system(pause);return0;}练习:1.abs:#includecstdlibintabs(intnum);2.floor:#includecmathdoublefloor(doublearg);3.ceil:#includecmathdoubleceil(doublenum)三、调试程序:输入一个三位自然数,把这个数的百位与个位数对调,例如358反转成853,输出对调后的自然数。调试的内容:单步进入,下一步,断点,跳过、运行到光标、调试、停止运行。#includecstdio#includeiostreamusingnamespacestd;intmain(){intn,x1,x2,x3,xn;scanf(%d,&n);x1=n%10;x2=?;//这里需要同学们填写x3=n/100;xn=x1*100+x2*10+x3;printf(%d\n,xn);system(pause);return0;}练习:1.一个程序内同时设置两个数的翻转,从而更进一步实现调试的各种功能。2.交换模块:交换两个变量的值:由键盘输入两个正整数A和B,编程交换这两个变量的值。提示:t=a;a=b;b=t;3.文件输入输出下的调试。说明:考试的时候都是这样的。具体格式如下:intmain(){freopen(haha.in,r,stdin);freopen(haha.out,w,stdout);……第二章选择结构中山市第一中学一、从键盘读入一个数,判断它的正负。是正数,则输出“+”,是负数,则输出“-”。intn;scanf(%d,&n);if(n=0){printf(+);}else{printf(-);}练习:1.输入两个数x1和x2,如果x1x2,就输出“YES”,否则输出“NO”。2.判断两个数a,b,输出较大数的平方值。3.输入一个整数n,判断它是奇数(yes)还是偶数(no)。二、逻辑运算符在选择结构中的应用。输入一个数,判断能否同时被3和5整除,如果能输出“YES”,否则输出“NO”。scanf(%d,&n);if((n%3==0)&&(n%5==0)){printf(YES);}else{printf(NO);}练习:1.输入一个数,判断能否被3整除或者被5整除,如果能输出“YES”,否则输出“NO”。提示:把&&改成||2.输入三条边的值,判断它们是否可以构成三角形。如果可以就输出“yes”,否则输出“no”。(组成三角形的条件为:任意两边之和大于第三边)3.鸡兔同笼。一个笼子里面关了鸡和兔子(鸡有2只脚,兔子有4只脚,没有例外)。已经知道了笼子里面脚的总数a,问笼子里面至少有多少只动物,至多有多少只动物给一个年份n,判断是否为闰年(0=n=9999)。如果是闰年(366天,其中闰年的二月份29天,平年的二月份28天)就输出'YES',否则输出'NO'。多组测试数据。每组输入输出都为一行。=1042判断闰年的条件:满足下面两个条件的其中之一。(四年一闰,百年不闰,四百年再闰)条件一:能被4整除,但不能被100整除条件二:能被400整除5.输入年份y和月份m,求y年的第m月的天数。比如输入:20002,要输出:28=1049中山市第一中学三、else也可以+if。输入三个实数(double)a、b、c,输出它们中的最大值。=1057doublea,b,c;scanf(%lf%lf%lf,&a,&b,&c);if(ab&&ac){printf(%lf,a);}elseif(ba&&bc){printf(%lf,b);}else//这里省去了if(ca&&cb){printf(%lf,c);}练习:1.老师说考试以后不发具体成绩,只评等级:90~100为A,80~89为B,70~79为C,60~69为D,0~59为E,其他分数就是错误的,输出“erro!”。2.函数的表达式如下:)40(402)4020(205.0)2010(10)100()0(0yxxxxxxxx编写程序,当输入x后输出y的值。(单步跟踪测试:-1,0,1,6,10,15,11,20,21,39,40,41,60)四、研究性学习:【高级条件判断】棋盘距离=1006第三章循环结构一、【单纯for】求s=1+2+3+4+…+n,其中n由键盘输入。(单补跟踪试试)inti,s,n;scanf(“%d”,&n);s=0;for(i=1;i=n;i++){s=s+i;}printf(%d,s);练习:1.计算s=n!,n!表示n的阶乘,n!=1*2*3*4*…*n,其中n由键盘输入。中山市第一中学2.输入n,求s=1+1/2+1/3+…+1/n(注:s=s+1.0/i)(保留4位小数)3.求s=11+22+33+..+nn(n=9)4.【for+数组】Fibonacci序列,1、1、2、3、5、8、13、21……,输入n(n=1000),求第n个数是多少?inta[1100];//注意一般数组的定义在main函数外面。intmain(){inti,n;scanf(%d,&n);a[1]=1;a[2]=1;for(i=3;i=n;i++){a[i]=a[i-1]+a[i-2];}printf(%d\n,a[n]);5.先输入n,然后输入n个实数。求这n个数的平均值,保留2位小数。比如输入:31.53.53.6输出:2.87二、【for+if】计算100之内所有的奇数之和。inti,s;s=0;for(i=1;i=100;i++){if(i%2==1){s=s+i;}}printf(%d,s);练习:1.判断一个正整数n是否素数(或称:质数),是输出yes,否则输出no。注:多种做法2.找出1到100之间所有的素数(引入函数)。3.哥德巴赫猜想(任何充分大的偶数都可由两个素数之和表示)。将4-100中的所有偶数分别用两个素数之和表示。输出为:4=2+26=3+38=3+510=3+7(就不用写10=5+5,每个偶数只需要写一条)….中山市第一中学100=3+974.任给一个自然数n,求出这个自然数不同因数的个数。如:n=6时,因为1,2,3,6这四个数均是6的因数,故输出为4。5.【zsyz1002素数判定】对于表达式n^2+n+41,当n在[x,y]范围内取整数值时(包括x,y)(-39≤xy≤50),判定该表达式的值是否都为素数。对于给定范围内的取值,如果表达式的值都为素数,则输出OK,否则请输出“Sorry”,输出占一行。=10026.【偶数求和】=1471三、【用for查找】求n个数中的最大值(n=100)。#includecstdio#includeiostreamusingnamespacestd;inta[110];intmain(){intn,i;scanf(%d,&n);//第一个数读进来,使我可以知道下来要读多少个for(i=1;i=n;i++){scanf(%d,&a[i]);}intmaxx=0;//用来记录最大的值,所以一开始很小,大家知道为什么吗?for(i=1;i=n;i++){if(a[i]maxx)//如果遇到比maxx大的数,马上赋值给maxx,相当于记录下来{maxx=a[i];}}//这样for结束后,可以肯定那个最大的值被记录到maxx里了printf(%d\n,maxx);system(pause);return0;}练习:1.求n个数中的最小值(n=100)。2.【查找中记录】不高兴的津津:第1天到第7天,找出学习时间最长的一天。如果最长的一天学习时间不超过8小时,那么输出0。=10353.【陶陶摘苹果】=1030四、【多重for循环】打印乘法表中山市第一中学#includecstdio#includeiostreamusingnamespacestd;intmain(){freopen(cfb.out,w,stdout);//因为打印在输出文件上比较好看intn,i,j;for(i=1;i=9;i++){f
本文标题:C++简易教程byscy
链接地址:https://www.777doc.com/doc-2904354 .html