网站大量收购闲置独家精品文档,联系QQ:2885784924

C语言实训指导书_改教程.doc

  1. 1、本文档共78页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言实训指导书_改教程

PAGE \* MERGEFORMAT- 78 - 实训项目一 数的转换与计算 一、实训目的与要求 通过实训,能熟练使用VC++集成开发环境,对数的按位分离及合并、数的进制转换、素数、整除及奇偶判断等实际问题,能够理解相关问题的解决算法,能用C语言程序实现相关算法,并能完成程序的编写、纠错、调试与测试。 实训过程中,要求养成良好的编程习惯,分析问题与解决问题的严谨务实,同时,积极通过互联网、文献资料巩固和拓展所学知识。 二、实训内容 任务1:数的按位分离及合并 基础知识 程序基本构成 1)一个C程序一般由预编译命令,自定义函数,主函数(即main函数)构成。预编译命令“#include”将有关的“头文件”包括到用户源文件中; 2)一个C程序必须有且只能有一个main函数; 3)所有函数是平行关系,即一个函数内不能嵌套定义另一个函数; C程序基本构成 4)C程序的执行从main函数开始,如在main函数中调用其它函数,在调用结束后流程返回到main函数,在main函数中结束整个程序的运行。 函数定义的一般形式 1)无参数函数定义 类型标识符 函数名() { 声明部分 语句部分 } 2)有参数函数定义 类型标识符 函数名(形式参数列表) { 声明部分 语句部分 } 通过函数返回或传回数据的方法 方法1:通过return语句 #include stdio.h /*预编译命令*/ int fun() /*自定义函数*/ { int x; /*声明部分,定义自定义函数中所用变量*/ x = 100; /*将100赋给变量x*/ return (x); /*将x的值作为函数值带回到main函数*/ } main() /*主函数*/ { printf(“%d\n”,fun()); /*调用自定义函数,并在显示器中显示100*/ } 方法2:通过指针形参 如果定义i_pointer为指针变量,则(*i_pointer)是i_pointer所指向的变量,“*”符号表示“指向”; (b) 指针 指针变量i_pointer内存放的是变量地址,(b)图中,变量地址为2000。(*i_pointer)是地址为 2000的变量,(b)图中,为3。 变量(*i_pointer)和变量i等价。 下面两个语句作用相同: (1) i = 3; (2) *i_pointer = 3; #include stdio.h void fun(int *p)/*void表示函数不带返回值,函数体中不得出现return*/ { *p = 100; /*将100赋给指针变量p所指的变量*/ } main() { int x; /*声明部分,定义主函数中所用变量*/ fun(x); /*为取地址运算符*/ printf(“%d\n”,x); } 编程思路 数的按位分离 对于某个整数的各个位上数据处理,通常需要用到“%”取余运算和“/”除法运算。 获取某个整数最后某位,使用 % 运算符 %10^n:获取最后n位 举例:假设1234和10都已被定义为int型 1234%10 = 4 1234%100 = 34 1234%1000 = 234 删除某个整数最后某位,使用 / 运算符 /10^n:删除最后n位 举例:1234/10 = 123 1234/100 = 12 1234/1000 = 1 数的合并 如三个数字a=1,b=2,c=3,希望合并成一个整数x 方法1:x = a*100 + b*10 + c*1 方法2: x = 0 x * 10 + a x * 10 + b x * 10 + c 易错点: 自定义函数是void型时,不得使用return语句,需通过指针传回数据。 花括号和小括号必须成对输入,切忌少或多半个括号。 程序编制 程序1: 将两个两位数的正整数a、b合并形成一个整数放在c中,合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的个位和百位上。 例如,当a=45,b=12。调用该函数后,c=4251。 #include stdio.h void fun(int a,int b,long *c) { } main() { int a,b;long c; scanf(%d%d,a,b); fun(

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档