热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

c语言程序设计习题6,C语言程序设计习题6.doc

C语言程序设计习题6.doc习题习题6参考解答参考解答1请解释以下术语的含义地址指针指针变量直接访问间接访问解解1地址内存单元的编号叫做地址2指针内存单元的编号叫做地址通常也叫做指

253b171540df25e1b84436cbe50dfc72.gifC语言程序设计习题6.doc

习题习题 6 参考解答参考解答 1 请解释以下术语的含义 地址 指针 指针变量 直接访问 间接访问 解 解 1 地址 内存单元的编号叫做地址 2 指针 内存单元的编号叫做地址 通常也叫做指针 3 指针变量 在 语言中 允许用一个变量来存放指针 这种变量称为指针变量 4 直接访问 通过变量名称引用变量内存单元的方式称为直接访问 5 间接访问 利用了指针变量 通过变量的指针 即变量的内存地址 来引用内存 单元的值 这种方式称为间接访问 2 指针能参与哪几种运算 举例说明 解 解 1 指针变量和整数可以进行加 减运算 p p p i p i p i p i 2 指针变量可进行赋值运算 p 变量 a 的地址赋给 p 即指针 p 指向 a p array 数组 array 首地址赋给 p p 数组元素 array i 的地址赋给 p p max 函数 max 的入口地址赋给 p p1 p2 指针 p2 的值赋给指针 p1 即 p1 p2 所指的数据相同 3 同类指针变量在一定的条件下可以作相减运算 p q 4 同类指针变量在一定的条件下可以作比较运算 p q 3 判断下面两个程序的正误 若错误指出原因 1 include int main char p p DATA printf s n p return 0 解 解 该程序错 应为 printf s n p 2 include int main int p p 25 printf d p return 0 解 解 该程序错 指针变量没有赋初值 4 输入 3 个整数 输出其中最大数 要求用指针变量实现 解 解 include stdio h int main int a 0 b 0 c 0 int aa NULL bb NULL cc NULL p NULL aa printf 3 number scanf d d d printf a d b d c d n a b c p aa if p bb p bb if p cc p cc printf d n p return 0 程序运行情况如下 3 number 4 5 9 a 4 b 5 c 9 9 5 有 3 个整型变量 i j k 请编写一个程序 设置 3 个指针变量 p1 p2 p3 分别 指向 i j k 然后通过指针变量使 i j k 3 个变量的值顺序交换 即原来 i 的值赋给 j 把 j 的原值赋给 k 把 k 的原值赋给 i i j k 的原值由键盘输入 要求输出 i j k 的原值和 新值 解 解 include int main int i j k tmp int p1 p2 p3 scanf d d d printf Before change d t d t d n i j k p1 p2 p3 tmp p3 p3 p2 p2 p1 p1 tmp printf After change d t d t d n i j k return 0 程序运行情况如下 1 2 3 Before change 1 2 3 After change 3 1 2 6 输入一个 10 个元素的一维数组 在主函数中用 scanf 函数输入 用指针方式编程找 出最大和最小数 并指出最大数和最小数的位置 解解 int y max int p int n int max p i k 0 for i 0 i n i 这里判断到 i n 而不是 i n if max p i k i max p i 记得要在这里更新一下 max 的记录 return k define N 10 include int main int a N int i m max for i 0 i N i scanf d for i 0 i N i printf d a i m y max a N printf nmax a d d m a m return 0 程序运行情况如下 1 5 6 78 9 6 4 7 2 3 1 5 6 78 9 6 4 7 2 3 max a 3 78 7 输入一段文字 统计其中所包含的数字字符和字母字符个数 解 解 include include include define N 80 int cnum 0 dnum 0 全局变量用于在两个函数之间传递数据 int main char ch N void count char c int i n gets ch n strlen ch for i 0 i 0 return 0 程序运行情况如下 hello12345 5 5 8 请写出下列程序段的输出结果 1 include int main int a 1 2 3 4 5 6 p p a p 3 2 printf d d p p 3 return 0 解 解 1 6 2 include int main int a 1 2 3 4 5 6 int p p a printf 5d 5d 5d 5d n p p p p printf 5d 5d n p a 2 return 0 解 解 3 3 2 1 2 3 3 include include int main char s1 AbDeG char s2 AbdEg s1 2 s2 2 printf d n strcmp s1 s2 return 0 解 解 1 4 include include fun char w int n char t s1 s2 s1 w s2 w n 1 while s1 s2 t s1 s1 s2 s2 t s1 s2 int main char p 1234567 fun p strlen p puts p return 0 解 解 7654321 5 include int main char a Pascal C language dBase Coble char p int j p a 3 for j 3 j 0 j printf s n p return 0 解 解 Coble dBase C language Pascal 9 用一个函数实现两个字符串的比较 即自己写一个 strcmp 函数 strcmp s1 s2 如果 s1 s2 则函数返回值为 0 如果 s1 s2 返回它们两者第一个不同字符的 ASCII 码差值 如 BOY 与 BAD 第二个字符不同 O 与 A 之差为 79 65 14 如果 s1 s2 则输出正值 如果 s1 s2 则输出负值 两个字符串 s1 s2 由 main 函数输入 strcmp 函数的返回值也在 main 函数中输出 解 解 include int strcmp char s1 char s2 for s1 s2s1 s2 找不同的字符 return s1 s2 void main char a 10 b 10 gets a gets b printf d n strcmp a b 程序运行结果如下 hello world 15 10 设计一个程序 管理一个班的计算机成绩 要求采用一维数组来存储学生的成绩 解 解 include int main void float a 10 int i 0 double sum 0 0 float avg 0 0 for i 0 i 10 i printf 请输入第 d 个同学的成绩 i 1 scanf f printf n sum a i avg sum 10 0 printf f n avg return 0 程序运行结果如下 请输入第 1 个同学的成绩 85 请输入第 2 个同学的成绩 89 请输入第 3 个同学的成绩 90 请输入第 4 个同学的成绩 78 请输入第 5 个同学的成绩 69 请输入第 6 个同学的成绩 58 请输入第 7 个同学的成绩 78 请输入第 8 个同学的成绩 95 请输入第 9 个同学的成绩 100 请输入第 10 个同学的成绩 89 83 100000 11 输入 10 个整数 将其中最小的数与第一个数对换 把最大的数与最后一个数对换 用指针来实现 解 解 include void aa int array int i for i 0 i 10 i scanf d void bb int array int max min t int p max min array for p array p array 9 p if max p min p t max max array 9 array 9 t t min min array 0 array 0 t void cc int array int p for p array p array 9 p printf d p void main int number 10 aa number bb number cc number 程序运行结果如下 0 9 10 20 30 40 50 60 70 66 9 0 10 20 30 40 50 60 66 70 12 分析下列程序的运行结果 include int f1 int x return x 1 int f2 int x return x 1 int sum square int f int m int n int k sum 0 for k m k n k sum f k f k return sum int main printf result d n sum square f1 1 2 sum square f2 1 2 return 0 解 解 result 14



推荐阅读
  • 《2017年3月全国计算机等级考试二级C语言上机题库完全版》由会员分享,可在线阅读,更多相关《2017年3月全国计算机等级考试二级C语言上机题库完全版( ... [详细]
  • 前景:当UI一个查询条件为多项选择,或录入多个条件的时候,比如查询所有名称里面包含以下动态条件,需要模糊查询里面每一项时比如是这样一个数组条件:newstring[]{兴业银行, ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 本文主要解析了Open judge C16H问题中涉及到的Magical Balls的快速幂和逆元算法,并给出了问题的解析和解决方法。详细介绍了问题的背景和规则,并给出了相应的算法解析和实现步骤。通过本文的解析,读者可以更好地理解和解决Open judge C16H问题中的Magical Balls部分。 ... [详细]
  • c语言\n不换行,c语言printf不换行
    本文目录一览:1、C语言不换行输入2、c语言的 ... [详细]
  • 本文介绍了P1651题目的描述和要求,以及计算能搭建的塔的最大高度的方法。通过动态规划和状压技术,将问题转化为求解差值的问题,并定义了相应的状态。最终得出了计算最大高度的解法。 ... [详细]
  • http:my.oschina.netleejun2005blog136820刚看到群里又有同学在说HTTP协议下的Get请求参数长度是有大小限制的,最大不能超过XX ... [详细]
  • Linux环境变量函数getenv、putenv、setenv和unsetenv详解
    本文详细解释了Linux中的环境变量函数getenv、putenv、setenv和unsetenv的用法和功能。通过使用这些函数,可以获取、设置和删除环境变量的值。同时给出了相应的函数原型、参数说明和返回值。通过示例代码演示了如何使用getenv函数获取环境变量的值,并打印出来。 ... [详细]
  • 本文介绍了PE文件结构中的导出表的解析方法,包括获取区段头表、遍历查找所在的区段等步骤。通过该方法可以准确地解析PE文件中的导出表信息。 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • 本文介绍了一个题目的解法,通过二分答案来解决问题,但困难在于如何进行检查。文章提供了一种逃逸方式,通过移动最慢的宿管来锁门时跑到更居中的位置,从而使所有合格的寝室都居中。文章还提到可以分开判断两边的情况,并使用前缀和的方式来求出在任意时刻能够到达宿管即将锁门的寝室的人数。最后,文章提到可以改成O(n)的直接枚举来解决问题。 ... [详细]
  • C++字符字符串处理及字符集编码方案
    本文介绍了C++中字符字符串处理的问题,并详细解释了字符集编码方案,包括UNICODE、Windows apps采用的UTF-16编码、ASCII、SBCS和DBCS编码方案。同时说明了ANSI C标准和Windows中的字符/字符串数据类型实现。文章还提到了在编译时需要定义UNICODE宏以支持unicode编码,否则将使用windows code page编译。最后,给出了相关的头文件和数据类型定义。 ... [详细]
  • This article discusses the efficiency of using char str[] and char *str and whether there is any reason to prefer one over the other. It explains the difference between the two and provides an example to illustrate their usage. ... [详细]
  • Android自定义控件绘图篇之Paint函数大汇总
    本文介绍了Android自定义控件绘图篇中的Paint函数大汇总,包括重置画笔、设置颜色、设置透明度、设置样式、设置宽度、设置抗锯齿等功能。通过学习这些函数,可以更好地掌握Paint的用法。 ... [详细]
  • Non-ASCIIhelponitsownisOK: ... [详细]
author-avatar
手机用户2502941585_336
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有