书签 分享 收藏 举报 版权申诉 / 76
上传文档赚钱

类型[IT认证]河南二级C语言培训课件.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:3371532
  • 上传时间:2022-08-24
  • 格式:PPT
  • 页数:76
  • 大小:390.52KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《[IT认证]河南二级C语言培训课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    IT认证 IT 认证 河南 二级 语言 培训 课件
    资源描述:

    1、河南省计算机等级考试河南省计算机等级考试二级二级C C培训讲义培训讲义yoyoyoyo电脑培训电脑培训第一讲:了解第一讲:了解HNCRE-2CHNCRE-2C 河南省计算机等级考试中的二级河南省计算机等级考试中的二级C语言考试采用机试的形式,内语言考试采用机试的形式,内容包括二大部分:基础知识部分和容包括二大部分:基础知识部分和C语言部分,总分语言部分,总分100分。基础知识分。基础知识占占30分,题型为选择题,共分,题型为选择题,共30题,每题题,每题1分。分。C语言部分占语言部分占70分,题型分,题型为编写程序题,其中第为编写程序题,其中第1道编程题是必做题,分值道编程题是必做题,分值20

    2、分;第分;第2、3、4道道编程题每题编程题每题25分,考生从后分,考生从后3道编程题中选做两题,我们一般选做第道编程题中选做两题,我们一般选做第2和第和第3道编程题。道编程题。这这4道编程题,每一题都有固定的内容道编程题,每一题都有固定的内容,很有规律;,很有规律;比如比如第第1道编程是与数列有关的题,第道编程是与数列有关的题,第2题通常是求方程的根、求积分题通常是求方程的根、求积分的值等方面内容的题,第的值等方面内容的题,第3题是与文件操作有关的题题是与文件操作有关的题,第,第4题是可视化题是可视化设计方面的题。因为我们的教材没有讲可视化设计方面的内容,所以设计方面的题。因为我们的教材没有讲

    3、可视化设计方面的内容,所以我们一般不选这个题;当然,同学如果对可视化很有兴趣,而且也掌我们一般不选这个题;当然,同学如果对可视化很有兴趣,而且也掌握了这方面的知识和编程技术,也可以选这个题。如果握了这方面的知识和编程技术,也可以选这个题。如果4个编程题都做个编程题都做了,只计算前了,只计算前3道编程题的分值。基础知识的题一般同学最少也能拿到道编程题的分值。基础知识的题一般同学最少也能拿到15分,而编程题则要求较严,要求程序必须能顺利运行而且结果正确。分,而编程题则要求较严,要求程序必须能顺利运行而且结果正确。我们的培训班紧扣编程题的内容,仔细讲解这些题的编写方法,力求我们的培训班紧扣编程题的内

    4、容,仔细讲解这些题的编写方法,力求同学都能过关。同学都能过关。1.与数列有关的题与数列有关的题 数列就是一组排列有序,变化有规律的数据。我们在数学中学过数列就是一组排列有序,变化有规律的数据。我们在数学中学过的等比数列、等差数列,以及我们前面讲过的斐波拉契数列都是典型的等比数列、等差数列,以及我们前面讲过的斐波拉契数列都是典型数列。对于有关数列的题目,关键在于发现数列变化的规律,以及找数列。对于有关数列的题目,关键在于发现数列变化的规律,以及找到用到用C C语言的语句体现这种变化规律的方法。语言的语句体现这种变化规律的方法。例:编程序例:编程序,计算并输出下面数列前计算并输出下面数列前n n项

    5、的和项的和(设设n=20,x=0.5),n=20,x=0.5),要求要求结果保留结果保留3 3位小数。位小数。sin(x)/x,sin(2x)/2x,sin(3x)/3x,sin(x)/x,sin(2x)/2x,sin(3x)/3x,sin(n,sin(n*x)/(nx)/(n*x)x),(其中其中,sin(x),sin(x)为正弦函数为正弦函数)程序如下:程序如下:#include#include#include math.h#include math.h main()main()float s=0;float s=0;float n=1,x=0.5;float n=1,x=0.5;whil

    6、e(n=20)while(n=20)s=s+sin(n s=s+sin(n*x)/(nx)/(n*x);x);n=n+1;n=n+1;printf(ok=%7.3fn,s);printf(ok=%7.3fn,s);2.求方程根、求积分值等计算方面的题求方程根、求积分值等计算方面的题 例:在给定程序中,函数例:在给定程序中,函数funfun和和funxfunx的功能是用二分法求解方程的功能是用二分法求解方程2x2x3 3-4x-4x2 2+3x-6=0+3x-6=0的一个根,并要求绝对误差不超过的一个根,并要求绝对误差不超过0.0010.001。例如:给。例如:给m m输输入入-100,-100

    7、,给给n n输入输入9090,则函数求得一个根值为,则函数求得一个根值为2.0002.000。程序如下:程序如下:#include math.h#include math.h#include#include double funx(double x);double funx(double x);double fun(double m,double n);double fun(double m,double n);main()main()double m,n,root;double m,n,root;printf(Enter m,n:n);printf(Enter m,n:n);scanf(%l

    8、f,%lf,&m,&n);scanf(%lf,%lf,&m,&n);root=fun(m,n);root=fun(m,n);printf(The root is%6.3fn,root);printf(The root is%6.3fn,root);double funx(double x)double funx(double x)return(2 return(2*x x*x x*x-4x-4*x x*x+3x+3*x-6);x-6);double fun(double m,double n)double fun(double m,double n)double r;double r;r=(m

    9、+n)/2;r=(m+n)/2;while(fabs(n-m)=0.001)while(fabs(n-m)=0.001)if(funx(r)if(funx(r)*funx(n)0)m=r;funx(n)0)m=r;else n=r;else n=r;r=(m+n)/2;r=(m+n)/2;return r;return r;3.与文件操作有关的题与文件操作有关的题 已知在文本文件下载文件已知在文本文件下载文件“20075.txt20075.txt”(右击,选择(右击,选择“目标另存目标另存为为”)中共有)中共有500500个记录,每个记录是用以下格式表示的个记录,每个记录是用以下格式表示的5

    10、5项数据项数据(各数各数据间以空格分开据间以空格分开):学号学号 姓名姓名 机试成绩机试成绩 笔试成绩笔试成绩 平时成绩平时成绩 nnnnnnnnnnnnnnnnnn cccccccccccc nnnn nnnn nnnn (说明:(说明:n n表示整型;表示整型;c c表示字符型;表示字符型;n n的个数表示数据位数的个数表示数据位数,例如例如nnnn表示两位整数表示两位整数,c,c的个数表示字符位数)的个数表示字符位数)求出前求出前100100人的笔试的平均成绩。人的笔试的平均成绩。程序如下:程序如下:#include stdio.h#include stdio.h struct cour

    11、se_type struct course_type long sno;long sno;char sname6;char sname6;short course1;short course1;short course2;short course2;short course3;short course3;ycourse501;ycourse501;void main()void main()int i;int i;float avecourse=0;float avecourse=0;FILE FILE*fp;fp;if(fp=fopen(20075.txt,rb)=NULL)if(fp=fo

    12、pen(20075.txt,rb)=NULL)printf(Can not open the file!n);printf(Can not open the file!n);return;return;for(i=0;i100;i+)for(i=0;i100;i+)fscanf(fp,%ldt%st%dt%dt%dt,&ycoursei.sno,&ycoursei.fscanf(fp,%ldt%st%dt%dt%dt,&ycoursei.sno,&ycoursei.sname,&ycoursei.course1,&ycoursei.course2,&ycoursei.cousname,&yco

    13、ursei.course1,&ycoursei.course2,&ycoursei.course3);rse3);avecourse=avecourse+(float)(ycoursei.course2)/100;avecourse=avecourse+(float)(ycoursei.course2)/100;printf(average course2 is:%fnn,avecourse);printf(average course2 is:%fnn,avecourse);fclose(fp);fclose(fp);return;return;1.C1.C源程序文件的建立源程序文件的建立

    14、打开打开Microsoft Visual C+6.0(Microsoft Visual C+6.0(简称简称VC6.0VC6.0)的开发环境窗口,选用)的开发环境窗口,选用FileFile(文(文件)菜单下的件)菜单下的NewNew(新建)菜单项,这样会打开一个(新建)菜单项,这样会打开一个NewNew(新建)对话框,选择其中(新建)对话框,选择其中的的FilesFiles(文件)标签页,然后在该标签页左边的文件类型列表中选中(文件)标签页,然后在该标签页左边的文件类型列表中选中C+Source C+Source FileFile(C+C+源程序文件),并在右边的源程序文件),并在右边的Fil

    15、e(File(文件名文件名)输入框中,输入所要创建的程序输入框中,输入所要创建的程序文件的基本名和扩展名(文件的基本名和扩展名(.c.c或或.cpp.cpp),其中的扩展名(),其中的扩展名(.c.c或或.cpp.cpp)可以不输入,)可以不输入,VC6.0VC6.0的开发环境会自动在其后加上的开发环境会自动在其后加上“.cpp.cpp”这一扩展名这一扩展名。对于我们的考试范围而。对于我们的考试范围而言,言,.c.c和和.cpp.cpp并没有什么区别,但因为我们考的是二级并没有什么区别,但因为我们考的是二级c c,而不是二级,而不是二级c+c+。所以好。所以好象用象用.c.c合适些。如果你想省

    16、事,让系统在源程序文件主名后加上合适些。如果你想省事,让系统在源程序文件主名后加上.cpp.cpp的扩展名,也的扩展名,也什么错。在文件名输入框下面的什么错。在文件名输入框下面的Location:Location:(位置)输入框中可以查看和改变所建立(位置)输入框中可以查看和改变所建立的程序文的程序文第二讲:熟悉考试的软件环境第二讲:熟悉考试的软件环境Microsoft Visual C+6.0Microsoft Visual C+6.0件在电脑上的存放位置,还可以用该输入框右边的件在电脑上的存放位置,还可以用该输入框右边的“省略号省略号”按钮选择另一按钮选择另一个位置来存放所要建立的程序。指

    17、定了文件的名称和位置后,按下该对话框个位置来存放所要建立的程序。指定了文件的名称和位置后,按下该对话框最下边的最下边的OKOK(确定)按钮,光标就进入(确定)按钮,光标就进入VC6.0VC6.0开发环境主窗口右边的程序代开发环境主窗口右边的程序代码输入、编辑区域(主区域),你可以在这里将你所写的程序代码逐字逐行码输入、编辑区域(主区域),你可以在这里将你所写的程序代码逐字逐行地输入。地输入。如果有一个已经存在的如果有一个已经存在的C C语言源程序文件,我们可以用语言源程序文件,我们可以用“我的电脑我的电脑”这这一工具程序或一工具程序或“资源管理器资源管理器”这一工具程序找到这个文件,双击它,就

    18、能在这一工具程序找到这个文件,双击它,就能在VC6.0VC6.0的开发环境下的程序代码输入编辑区域(主区域)中打开它,并可以的开发环境下的程序代码输入编辑区域(主区域)中打开它,并可以进行修改、编辑、链接、运行。进行修改、编辑、链接、运行。如果如果VC6.0VC6.0的开发环境已经打开,我们还可以用其的开发环境已经打开,我们还可以用其FileFile(文件)菜单下(文件)菜单下的的OpenOpen(打开)菜单项来打开一个(打开)菜单项来打开一个“打开打开”对话框,并通过这一对话框打开对话框,并通过这一对话框打开一个机器上已有的文件。一个机器上已有的文件。无论是输入了一个新程序文件的内容,还是修

    19、改了一个旧程序文件的内无论是输入了一个新程序文件的内容,还是修改了一个旧程序文件的内容后,都可以用菜单项或工具条上的按钮来保存程序的内容。或者是使用容后,都可以用菜单项或工具条上的按钮来保存程序的内容。或者是使用FileFile(文件)菜单上的(文件)菜单上的Save asSave as(另存为)菜单项用一个另外的文件名称来(另存为)菜单项用一个另外的文件名称来保存你所输入或修改的程序。但一般情况下,我们无论是输入了一个新文件保存你所输入或修改的程序。但一般情况下,我们无论是输入了一个新文件的内容还是修改了一个旧文件的内容,我们都会先看看,这个程序能不能运的内容还是修改了一个旧文件的内容,我们

    20、都会先看看,这个程序能不能运行,运行结果对不对。这样的话,我们就会对源程序文件进行编译、链接、行,运行结果对不对。这样的话,我们就会对源程序文件进行编译、链接、运行。而在这个过程中,系统会对你的源程序文件进行保存。所以一个源程运行。而在这个过程中,系统会对你的源程序文件进行保存。所以一个源程序文件运行通过后,其内容已经保存在电脑的盘上了。序文件运行通过后,其内容已经保存在电脑的盘上了。2.C2.C程序文件的编译、链接、运行程序文件的编译、链接、运行 在输入完一个新的程序文件的代码或修改好一个旧的程序文件的代码后,在输入完一个新的程序文件的代码或修改好一个旧的程序文件的代码后,我们使用我们使用B

    21、uildBuild(创建)菜单下的(创建)菜单下的Compile Compile (编译(编译 某文件)菜单项某文件)菜单项来编译它,编译一个源程序时,来编译它,编译一个源程序时,VC6.0VC6.0很可能会显示一个这样的提示框。很可能会显示一个这样的提示框。这是系统告诉你要编译一个源程序文件,这个源程序文件一定要在一个活动这是系统告诉你要编译一个源程序文件,这个源程序文件一定要在一个活动的项目或工程的工作空间中,而你还没有为你的程序文件建立一个项目的项目或工程的工作空间中,而你还没有为你的程序文件建立一个项目工作空间,所以系统要为你建立一个项目工作空间,问你愿意吗,我们当然工作空间,所以系统

    22、要为你建立一个项目工作空间,问你愿意吗,我们当然选选“是是(Y)(Y)”以便系统为我们建立这个工作空间。如果是对一个新程序文件的以便系统为我们建立这个工作空间。如果是对一个新程序文件的代码进行编译或是对一个已经被改过的旧程序文件的代码进行编译,系统会代码进行编译或是对一个已经被改过的旧程序文件的代码进行编译,系统会显示如下的信息框,问你是否要保存文件。显示如下的信息框,问你是否要保存文件。我们选我们选“是(是(Y Y)”进行保存。如果程序代码没有语法错误,编译就会进行保存。如果程序代码没有语法错误,编译就会顺利通过,在顺利通过,在VC6.0VC6.0开发环境的左下边显示开发环境的左下边显示 X

    23、XXXXXX.obj-0 error(s)0 XXXXXXX.obj-0 error(s)0 warning(s).warning(s).这里的这里的“XXXXXXXXXXXXXX”代表文件的基本名,它会与你给程序文件所代表文件的基本名,它会与你给程序文件所起的基本名一致。而起的基本名一致。而“.obj.obj”是编译后形成的一种不同于是编译后形成的一种不同于.c.c或或.cpp.cpp的文件类的文件类型,我们称之为目标代码。目标代码仍然不能直接运行,接下来我们使用型,我们称之为目标代码。目标代码仍然不能直接运行,接下来我们使用Build(Build(创建创建)菜单下的菜单下的Build Bu

    24、ild (链接(链接 某文件)将目标代码链接为可某文件)将目标代码链接为可执行文件。如果不出现错误,链接通过后,执行文件。如果不出现错误,链接通过后,VC6.0VC6.0开发环境的左下边显示开发环境的左下边显示 XXXXXXX.exe-0 error(s)0 warning(s).XXXXXXX.exe-0 error(s)0 warning(s).这里的这里的“XXXXXXXXXXXXXX”代表文件的代表文件的基本名,它会与你给程序文件所起的基本名一致。而基本名,它会与你给程序文件所起的基本名一致。而.exe.exe就代表可执行文件就代表可执行文件这种文件类型。最后,我们用这种文件类型。最后

    25、,我们用BuildBuild(创建)菜单下的(创建)菜单下的Execute Execute (执行(执行 某文件)来执行我们的程序。如果顺利的话,我们会看到一个黑底某文件)来执行我们的程序。如果顺利的话,我们会看到一个黑底色的窗口。其中显示了我们想要看的内容。色的窗口。其中显示了我们想要看的内容。如果程序没有错误,可以不一步一步地发指令进行编译、链接、运行。如果程序没有错误,可以不一步一步地发指令进行编译、链接、运行。也可使用也可使用“创建创建”菜单中的菜单中的“运行运行”菜单项或工具栏中的运行图标菜单项或工具栏中的运行图标/快捷方快捷方式(!)让系统自动连续地完成这三个步骤。式(!)让系统自

    26、动连续地完成这三个步骤。3.C3.C程序文件的调试程序文件的调试 如果程序代码有错误,编译就不能通过,在如果程序代码有错误,编译就不能通过,在VC6.0VC6.0开发环境的左下边显开发环境的左下边显示示 XXXXXXX.obj-n error(s)m warning(s).XXXXXXX.obj-n error(s)m warning(s).表示机器发现了表示机器发现了n n个严重个严重错误,错误,m m个不太严重的警告性的错误。如下图所示:个不太严重的警告性的错误。如下图所示:其中其中errorerror型的严重错误是必须改正的。我们将光标指向出错提示信息型的严重错误是必须改正的。我们将光标

    27、指向出错提示信息处,阅读出错的大致原因,然后用光标双击错误文字行,系统就会在代码输处,阅读出错的大致原因,然后用光标双击错误文字行,系统就会在代码输入、编辑区域中出错行的左边显示一个出错标志,指示你进行修改。入、编辑区域中出错行的左边显示一个出错标志,指示你进行修改。大家在编译和链接时发现的错误通常是语法错误,例如句尾缺了分号或大家在编译和链接时发现的错误通常是语法错误,例如句尾缺了分号或变量没有定义就给它赋值就会在编译是被系统告知出错,如果一个工程的工变量没有定义就给它赋值就会在编译是被系统告知出错,如果一个工程的工作空间里有两个作空间里有两个main()main()函数,在链接时也会被函数

    28、,在链接时也会被VCVC告知有错误。一般来说,语告知有错误。一般来说,语法错误相对好查找、纠正一些,因为法错误相对好查找、纠正一些,因为VCVC有错误提示信息显示在开发环境的下有错误提示信息显示在开发环境的下面。面。另一类错误是语意错误或称之为逻辑错误,是程序的算法不能满足题目另一类错误是语意错误或称之为逻辑错误,是程序的算法不能满足题目或任务的要求而产生的错误。如程序中出现了一个无限次执行的循环体,或或任务的要求而产生的错误。如程序中出现了一个无限次执行的循环体,或者是数学公式在输入、编辑时写错了(比如把求圆的面积的公式者是数学公式在输入、编辑时写错了(比如把求圆的面积的公式3.143.14

    29、*r r*r r写写成了成了2 2*3.143.14*r r),都会造成程序运行的结果不对。这种错误一般比较难定位),都会造成程序运行的结果不对。这种错误一般比较难定位和纠正,通常是通过仔细阅读程序来找出出错的原因并进行修正。和纠正,通常是通过仔细阅读程序来找出出错的原因并进行修正。在调试程序时,如果怀疑某条语句是否必要,可能想把这条语句删除掉在调试程序时,如果怀疑某条语句是否必要,可能想把这条语句删除掉以后,再试着运行一下程序。我们建议你不要直接在代码中彻底删掉它,如以后,再试着运行一下程序。我们建议你不要直接在代码中彻底删掉它,如果这样的话,假设这条语句不能少,我们还得重新输入进出,一个好

    30、的方法果这样的话,假设这条语句不能少,我们还得重新输入进出,一个好的方法是先把它注释掉。这样在执行时就不把它当作一条可执行的语句去执行了,是先把它注释掉。这样在执行时就不把它当作一条可执行的语句去执行了,如果后来发现这条语句还得要,我们把注释标志去掉即可。当然,如果发现如果后来发现这条语句还得要,我们把注释标志去掉即可。当然,如果发现这条语句确实是多余,就可以把它彻底删掉了。这条语句确实是多余,就可以把它彻底删掉了。在在C C程序中加注释的方法有两种,一种是在一行的行首加程序中加注释的方法有两种,一种是在一行的行首加“/”,这种方这种方式只能使其所在的一行成为注释。还有一种方法是用式只能使其所

    31、在的一行成为注释。还有一种方法是用“/*”和和“*/”这两个定这两个定界符把任意位置、任意长度的内容变成注释。界符把任意位置、任意长度的内容变成注释。我们对程序代码进行修改后,重新进行编译、链接、运行。直到得到较我们对程序代码进行修改后,重新进行编译、链接、运行。直到得到较满意的结果。满意的结果。4.4.编写、运行多个程序时的注意事项编写、运行多个程序时的注意事项 编写、调试、运行好一个程序后,请先使用编写、调试、运行好一个程序后,请先使用“文件文件”菜单下的菜单下的“保存保存”菜单项予以保存。然后,使用菜单项予以保存。然后,使用“文件文件”菜单下的菜单下的“关闭工作空间关闭工作空间”,将其所

    32、,将其所在项目工作空间关闭。接下来再使用在项目工作空间关闭。接下来再使用“文件文件”菜单下的菜单下的“新建新建”菜单项新建菜单项新建一个一个C+source fileC+source file。否则,两个或多个程序文件的多个。否则,两个或多个程序文件的多个main()main()函数混在函数混在一个项目的工作空间中,会使你无法生成新程序的一个项目的工作空间中,会使你无法生成新程序的exeexe文件。文件。如果不小心将多个程序的多个如果不小心将多个程序的多个main()main()函数混写在一个项目中,在组函数混写在一个项目中,在组建建.exe.exe文件时出现错误:文件时出现错误:_main

    33、already defined in XXX.obj_main already defined in XXX.obj。这时可以用。这时可以用以下方法解决它们之间的冲突:以下方法解决它们之间的冲突:a.a.在在VCVC开发环境窗口的左边有一个工作空间观察框,逐步点开其中的分开发环境窗口的左边有一个工作空间观察框,逐步点开其中的分枝结点,你会看到多个枝结点,你会看到多个main()main()函数。函数。b.b.使用使用“工程工程”菜单下的菜单下的“设置设置”菜单项,打开菜单项,打开“工程设置工程设置”(Project settingsProject settings)对话框,点开左边列表框中的分

    34、枝结点,找到此前已)对话框,点开左边列表框中的分枝结点,找到此前已经调好和运行过的程序,选中它,再在右边的常规标签页中点选经调好和运行过的程序,选中它,再在右边的常规标签页中点选“组建时排组建时排除文件除文件XX”可选项,单击可选项,单击“确定确定”按钮。这样在组建按钮。这样在组建.exe.exe文件时就不包含其文件时就不包含其中的内容,如果在工程中有多个在组建中的内容,如果在工程中有多个在组建.exe.exe文件时不想包含其内容的文件,文件时不想包含其内容的文件,可以按上述步骤一一排除它们。这样就能在组建可以按上述步骤一一排除它们。这样就能在组建.exe.exe文件避免出现前述的错文件避免出

    35、现前述的错误了。误了。5.5.使用使用scanf()scanf()函数的有关注意事项函数的有关注意事项 在在scanf()scanf()函数的格式串(第一个参数)中,不能使用函数的格式串(第一个参数)中,不能使用“nn”要求光标换要求光标换行;否则,输入数据后按回车键无法返回程序继续执行。另外在格式串中使行;否则,输入数据后按回车键无法返回程序继续执行。另外在格式串中使用用%f%f或或%lf%lf格式符时不能指定实型数或双精度数的精度,即不能使用形如格式符时不能指定实型数或双精度数的精度,即不能使用形如%7.2f%7.2f这样的格式符要求小数点后输入两位小数;但是可以指定实型数在输这样的格式符

    36、要求小数点后输入两位小数;但是可以指定实型数在输入时所占的总宽度(字符数),比如使用入时所占的总宽度(字符数),比如使用%7f%7f是正确的。是正确的。在调试程序时,当黄箭头指向在调试程序时,当黄箭头指向scanf()scanf()语句,使用语句,使用Step OverStep Over方式执行该方式执行该语句时,会发现黄箭头并不向下移动,这是因为语句时,会发现黄箭头并不向下移动,这是因为scanf()scanf()语句执行时,等着语句执行时,等着用户到那个黑底色的窗口去输入数据,所以要点开黑底的窗口,在那里进行用户到那个黑底色的窗口去输入数据,所以要点开黑底的窗口,在那里进行输入,回车后才能

    37、回到调试界面接着进行调试。当你不想再调试下去时,可输入,回车后才能回到调试界面接着进行调试。当你不想再调试下去时,可以使用以使用Stop DebugingStop Debuging菜单项菜单项/按钮结束调试,回到对程序进行编辑的界面。按钮结束调试,回到对程序进行编辑的界面。第三讲第三讲:从最简单的从最简单的C C程序到复杂的程序到复杂的C C程序程序1.1.显示显示Hello everyone!Hello everyone!#include stdio.h#include stdio.hmain()main()printf(Hello everyone!n);printf(Hello ever

    38、yone!n);2.2.求求1010的阶乘的阶乘#include stdio.h#include stdio.hmain()main()int m;int m;m=1 m=1*2 2*3 3*4 4*5 5*6 6*7 7*8 8*9 9*10;10;printf(10!=%dn,m);printf(10!=%dn,m);3.3.输入一个任意正整数,求其阶乘输入一个任意正整数,求其阶乘#include#include main()main()unsigned long m=1;unsigned long m=1;int i,j;int i,j;printf(Please input a int

    39、eger:);printf(Please input a integer:);scanf(%d,&j);scanf(%d,&j);for(i=1;i=j;i+)for(i=1;i=j;i+)m=m m=m*i;i;printf(m!=%ldn,m);printf(m!=%ldn,m);4.4.求求C Cn nm m#include#include int jc(int k)int jc(int k)int p,q=1;int p,q=1;for(p=1;p=k;p+)for(p=1;p=k;p+)q=q q=q*p;p;return q;return q;main()main()int n,m

    40、,jc1,jc2,jc3,jg;int n,m,jc1,jc2,jc3,jg;printf(Please input the value of n,m:);printf(Please input the value of n,m:);scanf(%d,%d,&n,&m);scanf(%d,%d,&n,&m);jc1=jc(n);jc2=jc(m);jc3=jc(n-m);jc1=jc(n);jc2=jc(m);jc3=jc(n-m);jg=jc1/(jc2 jg=jc1/(jc2*jc3);jc3);printf(The resulut is:%dn,jg);printf(The resulu

    41、t is:%dn,jg);有的同学在上机时,输入了书上第有的同学在上机时,输入了书上第1111页例页例1-81-8的程序,发现编译不能通的程序,发现编译不能通过,原因是这个程序有一个自定义函数过,原因是这个程序有一个自定义函数mul()mul(),这个自定义函数没有写在,这个自定义函数没有写在main()main()函数的前面,而是写在函数的前面,而是写在main()main()的后面,的后面,main()main()函数中的第函数中的第4 4条语句调条语句调用用mul()mul()时,因为在此前没有发现对它的定义,不知道这是一个什么东西,时,因为在此前没有发现对它的定义,不知道这是一个什么东

    42、西,所以报错。所以报错。#include stdio.h#include stdio.h main()main()int a,b,c;int a,b,c;printf(input two number:);printf(input two number:);scanf(%d,%d,&a,&b);scanf(%d,%d,&a,&b);c=mul(a,b);c=mul(a,b);printf(product=%dn,c);printf(product=%dn,c);int mul(int a,int b)int mul(int a,int b)int c;int c;c=ac=a*b;b;retu

    43、rn c;return c;解决的办法是在解决的办法是在main()main()函数前或是在函数前或是在main()main()函数中的声明部分说明它的函数中的声明部分说明它的函数形式。如下所示:函数形式。如下所示:#include stdio.h#include stdio.h main()main()int a,b,c;int a,b,c;int mul(int a,int b);int mul(int a,int b);printf(input two number:);printf(input two number:);scanf(%d,%d,&a,&b);scanf(%d,%d,&a

    44、,&b);c=mul(a,b);c=mul(a,b);printf(product=%dn,c);printf(product=%dn,c);int mul(int a,int b)int mul(int a,int b)int c;int c;c=ac=a*b;b;return c;return c;或者如下所示:或者如下所示:#include stdio.h#include stdio.h int mul(int a,int b);int mul(int a,int b);main()main()int a,b,c;int a,b,c;printf(input two number:);p

    45、rintf(input two number:);scanf(%d,%d,&a,&b);scanf(%d,%d,&a,&b);c=mul(a,b);c=mul(a,b);printf(product=%dn,c);printf(product=%dn,c);int mul(int a,int b)int mul(int a,int b)int c;int c;c=ac=a*b;b;return c;return c;注意,在对函数的自变量进行说明时,如果有多个参数,每个参数的类注意,在对函数的自变量进行说明时,如果有多个参数,每个参数的类型都要分别说明,即使是相邻的两个参数的类型一样,也要用两

    46、个类型说明型都要分别说明,即使是相邻的两个参数的类型一样,也要用两个类型说明字说明,而不能象定义变量时那样,让多个变量名字共用一个类型说明字。字说明,而不能象定义变量时那样,让多个变量名字共用一个类型说明字。前面讲过前面讲过C C程序中的每一条语句后面都要用分号(程序中的每一条语句后面都要用分号(;)作为结束符,但有)作为结束符,但有的同学发现有些句子后面没有分号。确实有这种情况,如的同学发现有些句子后面没有分号。确实有这种情况,如main()main()函数语句行函数语句行和和#include#include 语句行都没有用分号结尾。我们告诉大家,你记住三语句行都没有用分号结尾。我们告诉大家

    47、,你记住三点:点:(1)(1)在以在以#号开头的语句后面一定不用分号;号开头的语句后面一定不用分号;(2)(2)左大括号()的前面左大括号()的前面一条语句末尾,不要用分号;一条语句末尾,不要用分号;(3)(3)书中书中4040页中的页中的9 9种控制语句中种控制语句中1 1、2 2、3 3、5 5条条控制语句中的这几个词(与其后紧跟的一对小括号在一起)后一般不要用分控制语句中的这几个词(与其后紧跟的一对小括号在一起)后一般不要用分号:号:if()if()else else switch()switch()while()while()注注:是是whilewhile型循环的型循环的while()

    48、,while(),不是不是dodowhilewhile型循环的型循环的while()while()for()for()还有一条也要切记,程序代码中所有的标点符号都要求是英文的标点符还有一条也要切记,程序代码中所有的标点符号都要求是英文的标点符号(即所谓的半角标点符号,宽度占同样字体字号的一个汉字的一半),如号(即所谓的半角标点符号,宽度占同样字体字号的一个汉字的一半),如果用了中文的标点符号(即所谓的全角标点符号,宽度与同样字体字号的一果用了中文的标点符号(即所谓的全角标点符号,宽度与同样字体字号的一个汉字相同)个汉字相同),就会出错。,就会出错。5 5.求一个任意的一元二次方程的根求一个任意

    49、的一元二次方程的根 程序程序1 1:#include#include#include#include main()main()double a,b,c,delta,x1,x2;double a,b,c,delta,x1,x2;printf(Please input the factor a,b,c:);printf(Please input the factor a,b,c:);scanf(%lf,%lf,%lf,&a,&b,&c);scanf(%lf,%lf,%lf,&a,&b,&c);delta=b delta=b*b-4b-4*a a*c;c;if(delta0)if(delta=0)i

    50、f(delta=0)x1=(-b+sqrt(delta)/(2 x1=(-b+sqrt(delta)/(2*a);x2=(-b-sqrt(delta)/(2a);x2=(-b-sqrt(delta)/(2*a);a);printf(has two real roots:%10.6f and%10.6fn,x1,x2);printf(has two real roots:%10.6f and%10.6fn,x1,x2);程序程序2 2:#include#include#include#include main()main()double a,b,c,delta,x1,x2;double a,b,

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:[IT认证]河南二级C语言培训课件.ppt
    链接地址:https://www.163wenku.com/p-3371532.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库