C程序设计课后答案(253页).doc

C程序设计课后答案(253页).doc

C程序设计(第三版)课后习题参考解答 第1章 C语言概述 1.5 参照本章例题,编写一个C程序,输出以下信息: ****************************** Very Good! ****************************** 解: main ( ) {printf(“****************************** \n”); printf(“\n”); printf(“ Very Good! \n”); printf(“\n”); printf(“****************************** \n”); } 1.6 写一个程序,输入a,b,c三个值,输出其中最大者。 解: main ( ) {int a,b,c,max; printf(“请输入三个数a,b,c: \n”); scanf(“%d,%d,%d”,a,b,c); max=a; if (maxb) max=b; if (maxc) max=c; printf(“ 最大数为:%d ”,max); } 第2章 程序的灵魂——算法 2.1 什么叫结构化的算法?为什么要提倡结构化的算法? 解:由一些基本结构顺序组成的算法称为结构化的算法。由于在基本结构之间不存在非顺序的跳转,流程的转移只存在于一个基本结构范围之内,因而提高了算法的质量。 2.7 什么叫结构化程序设计?它的主要内容是什么? 解:结构化程序就是用高级语言表示的结构化算法。它的主要内容包括“自顶向下,逐步细化”的分析方法和“模块化设计”的解决方法,以及“结构化编码”的实现方法。 第3章 数据类型、运算符与表达式 3.3请将下面各数用八进制和十六进制数表示: (1)10 (2)32 (3)75 (4)-617 (5)-111 (6)2483 (7)-28654 (8)21003 解:(1) (10) 10=(12) 8=(A) 16 (2) (32)10=(40)8=(20) 16 (3) (75)10=(113)8=(4B) 16 (4) (-617)10=(176627)8=(FD97) 16 此题可以这样考虑:带符号数在计算机中采用补码表示,正数的补码与原码相同,负数的补码=模+真值。若使用16位存储,模为216=65536。-617的补码为65536+(-167)=64919=(176627)8=(FD97)16 (5) (-111)10=(177621)8=(FF91) 16 (6) (2483)10=(4663)8=(9B3) 16 (7) (-28654)10=(110022)8=(9012) 16 (8) (21003)10=(51013)8=(520B) 16 3.4将以下三各整数分别赋给不同类型的变量,请画出赋值后数据在内存中的存储形式。 变量的类型 25 -2 32769 int型 long型 sort型 signed char(8位) unsigned int型 unsigned long型 unsigned short型 unsigned char型 注:如果没有学过二进制和补码,此题可以不做。 解:各数据在内存中的存储形式如下表所示: 变量的类型 25 -2 32769 int型 00… 000011001 8 位 1111111111111110 15 100 … 001(溢出) 14 long型 00… 000011001 24 11 … 1110 31 00… 0100 … 001 16 14 short型 100… 000011001 8 1111111111111110 15 100 … 001(溢出) 14 signed char(8位) 10001100100000001(溢出) unsigned int型 00… 000011001 8 11 … 110 15 100 … 001 14 unsigned long型 00… 000011001 24 11 … 110 31 00… 0100 … 001 16 14 unsigned short型 00… 000011001 8 11 … 110 15 100 … 001 8 unsigned char型11111110

文档评论(0)

1亿VIP精品文档

相关文档