C语言第2的章 数据类型、运算符与表达式.docVIP

C语言第2的章 数据类型、运算符与表达式.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第2章 数据类型、运算符与表达式 2.1 请将C语言的数据类型和其他高级语言的数据类型做比较。C有哪些特点? 答:C语言的数据类型如下所示: 和其他高级语言数据类型相比,C语言有数据类型丰富,执行效率高等特点。 2.2 C语言为什么要规定对所有用到的变量要“先定义,后使用”。这样做有什么好处? 答: 1.凡未被事先定义的,不作为变量名,这样能保证程序中变量名使用正确; 2.每一个变量被指定一确定数据类型,在编译时就能为其分配相应的存储单元; 3.指定每一变量属于一个类型,这就便于在编译时,据此检查该变量所进行的运算是否合法; 2.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 (5)(-111)10=(177621)8=(ff91)16 (6)(2483)10=(4663)8=(963)16 (7)(-28654)10=(110022)8=(9012)16 (8)(21003)10=(51013)8=(520b)16 2.4 将以下3个整数分别赋给不同类型的变量,请画出赋值后数据在内存中的存储形式。 变量的类型 25 -2 32769 int 型(16位) long 型(32位) short 型(16位) signed char 型(8位) unsigned int 型 unsigned long 型 unsigned short 型 unsigned char 型 答:略 2.5 字符常量与字符串常量有什么区别? 答:字符常量在内存中占一个字节(byte),而字符串可占多个;字符常量表示时要用单引号引起来并且只能是一个字符,字符串常量要用双引号,里面可有多个字符,并且存储时自动在字符串后面加一个结束标志\0。 2.6 写出以下程序运行的结果。 main() { char c1=a,c2=b,c3=c,c4=\101,c5=\116; printf(a%c b%c\tc%c\tabc\n,c1,c2,c3); printf(\t\b%c %c,c4,c5); } 结果应该如下: aa空格bb空格空格空格cc空格空格空格空格空格空格abc 空格空格空格空格空格空格空格A空格N 即: 分析:printf函数中的格式化字符串包含三部分内容,一种是普通字符,一种是以%为标志的格式说明符,一种是以\为标志的转义字符。题目中的转义字符\t的意思是水平制表(跳到下一个tab位置),通常我们的机器一个tab位置占8个字符位置。\b的意思是退格。c4=’\101’和c5这两个变量,表示ASCII码所对应的字符,分别是A和N。 分析结果: 第一个输出函数输出到这里时:a%c b%c是对应下图第5个字符,即第二个b,这时执行\t,光标应该从第6个格跳到第9个格,而不是从b开始往后数8个字符位置,因为计算tab位是从上一tab位置开始计算,这里前面不足8个字符,所以是从第一个a数起的,往后8个字符位置,然后在第9个位置重新计算tab位。 第1个TAB位 第二个TAB位置 a a b b c c a b c A N 先输出一个tab位置,光标跳到第9个格,遇到\b,再往回跳一个格,所以A在第8个格里。 2.7要将“China”译成密码,密码规律是:用原来的字母后面第4个字母代替原来的字母。例如,字母”A”后面第4个字母是“E”,用“E”代替“A”。因此,China应译为“Glmre” 。请编一程序,用赋初值的方法使c1、c2、c3、c4、c5五个变量的值分别为‘C’、‘h’、‘i’、‘n’、‘a’,经过运算,使c1、c2、c3、c4、c5分别变成‘G’、‘l’、‘m’、‘r’、‘e’,并输出。 #include”stdio.h” main() {char c1=’C’,c2=’h’,c3=’i’,c4=’n’,c5=’a’; c1+=4; c2+=4; c3+=4; c4+=4; c5+=4; printf(“keywords=%c%c%c%c%c”,c1,c2,c3,c4,c5); } 2.8例2.6能否改成如下: main() {int c1,c2; /*原为 char c1,c2*/ c1=9

文档评论(0)

xiaofei2001128 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档