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

C语言程序设计-第1-4章习题解答.ppt

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

华中科技大学计算机学院 C语言程序设计 C语言程序设计 第1-4章 部分习题解答 作业中问题较多的习题 第1章 1.9,1.12 第2章 2.4,2.9, 2.15, 2.16 第3章 3.5, 3.11, 3.14 第4章 4.7, 4.16 第1章 1.9,1.12 1.9 求157和-153的16位原码,补码. 思路: 1.用除2取余法求出157和153的二进制表示. 2. 按照原码的定义给出对应的16位原码,最高位为符号位. 3. 正数的补码和原码相同,负数的补码为:原码符号位不动,其余位变反,然后加1. 1.12题 思路: 1.查ASCII码表得字符0的ASCII码值0x30或48. 2. 加5后得0x35或53; 3.查ASCII码表得ASCII码值0x35或53对应的ASCII码字符是5. 第2章 2.4,2.9, 2.15, 2.16 2.4 非法常数: ‘’’, 0x1ag, E20, ‘018’, ‘\0xa’, “3’4”” 2.9 思路 1. 掌握操作符的含义,运算功能; 2. 优先级与结合性 (6)w=x|yx|zy^maskx 优先级: ^ | = (7) v=-1, v=1 v=-1将使v的16bit全1; v=1等价与v=v1 2.15 思路: 掌握位运算操作,特别是和 ((k8)0xff) | (p8) k80xff | p8 2.16 思路: 嵌套使用条件运算 ab?a:b ac?a:c bc?b:c 代换: ab?(a): (b) ? ab? (ac?a:c ):b ? ab? (ac?a:c ):(bc?b:c) 3.5, 3.11, 3.14 3.5 思路: 查阅格式说明符的用法 只解释(5)题 3.11 思路:参考p49 例2.12(向右端靠齐) 关键:向左端靠齐 x15-m 其余自己考虑. 补充: 1.写一个宏,它将一个无符号短整数x循环右移n位. 2.写一个宏,它将一个无符号短整数x循环左移n位. 3.14 思路: 在写字板,VC下输入源程序;TC不行. char s[3] = “编”; s[0], s[1] 存放的是“编”的机内码. 再参考p86 例3.33计算其国标码,区位码. 4.7 4.7 思路 建立标志int flag=0; 算法 当flag==0且遇到空格符时; 输出空格符, flag=1; 当flag==1且遇到空格符时; 不输出空格符; 否则(当flag==1且遇到非空格符时;) 输出该字符, flag=0; 4.16 思路: 设ch存放输入的字符, 外循环控制变量i,内循环控制变量j, 外循环次数n,外循环从i=0;in ch为大写: n=ch-’A’; ch为小写: n=ch-’a’; 内循环: 先从a+i或A+i输出到ch; 再从a+0或A+0输出到a+i-1或A+i-1,且(i-1)0; 补充习题(选做,不交) 1.编写一个程序,判断给定字符串是否是合法的C标识符。 2.编写一个C程序,完成下列任务: (1)输入一个字符串,对字符串中的每一个字符进行奇校验。即通过对字符的最高位置0或置1来保证校验后字符中为1的位为奇数。 (2)按照二进制格式输出每一个校验后字符的各位。如输入字符’3’,输出 3.编写一个名为mycopy的程序,它能够将任意多个文本文件拷贝复制到一个指定的目标文件中。 其拷贝复制3个文本文件:file1.txt file2.txt file3.txt到目标文本文件file.txt中的命令行形式如下: mycopy file.txt file1.txt file2.txt file3.txt 4. 编写8个任务函数,一个scheduler调度函数和一个execute执行函数。仅在main函数中调用scheduler函数。要求用最快的方式调度执行用户指定的任务函数。 (1)先设计task0,task1,task2,task3,task4,task5,task6,task7共8个任务函数,每个任务函数的任务就是输出该任务被调用的字符串。如:第0个任务函数输出“task0 is called!”,第1个任务函数输出“task1 is called!”,余以类推。 (2)scheduler函数根据键盘输入的数字字符的先后顺序依次调度选择对应的任务函数。如:输入:1350并回车,则scheduler函数依次调度选择task1,task3,task5,task0。然后以函数指针数组和任务个数为参数将调度选择结果传递给execute函数并调用execute函数。 (3)execute函数根据scheduler函数传递的指针

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档