C语言程序设计第三篇问题答疑材料(.docVIP

  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文档。上传文档
查看更多
问题答疑材料 以下程序的输出结果是( ??) ?#define ADD(x)??(x)+(x) main(){? ? int a=4,b=6,c=7,d=ADD(a+b)*c; printf(“d=%d”,d);? ? } A??d=70? ?? ?B??d=140? ???C??d=280? ?? ?D??d=80 答:d=ADD(a+b)*c;=(a+b)+(a+b)*c=(4+6)+(4+6)*7=80 请问在自己的计算机上运行C语言程序,是否首先要安装C语言编译系统? 答:是的,你可以安装turbo C或者其它的C运行环境。 字符串“China”在内存中占用几个字节? 答:一个字符占一个字节,另外在字符串结尾处系统补了一个\0表示字符串结束,它也占一个字节,加上5个字符,所以字符串“China”在内存中占用6个字节。 语言中结构体与共用体的区别? 答:共用体是构造数据类型,也叫联合体。它使几个不同类型的变量共占一段内存(相互覆盖),每次只有一个能使用。结构体则不然, 每个成员都会有存储空间的,可以一起用。 int a[2][2]={1,2,3,4}; int *p; p=a[0]; printf(%d,p[0]); 还有为什么p[0]前面不用*号呢? 答:p=a[0]表示p指向数组a[2][2]包含的一维数组a[0]的首地址,当执行printf(%d,p[0]);时,打印出p[0][0]的值,为1。实际上可以写成等价表达式printf(%d,*p);因为*p与p[0]是等价的,所以p[0]前不用*。 已知在ASCII字符集中,字母A的序号为65,下面程序main(){char c=’A’;int i=10;c=c+10;i=c%i;printf(“%c,%d\n”,c,i);}的输出结果为( ) 选项: a、75,7 b、75,5 c、K,5 d、因存在非图形字符,无法直接显示出来 答:A的ASCII对应的整形值为65,c=c+10,所以c=75,即为K,同时i=75/10=5 判断char型变量c1是否小写字母的正确表达式为 选项: a、a=c1=z b、 (c1=a)(c1=z) c、 (c1=a)(c1=z) d、 (a=c1)||(z=c1) 答:(c1=a)(c1=z) C语言和C++有什么区别么? 答:C语言是结构化和模块化的面向过程的语言,C++语言是面向对象的程序设计语言。C++语言是C语言的超集,也就是说C++是C语言的延伸。区别应该说表现在编程思想上,C是基于过程的,强调的是程序的功能,以函数(功能)为中心。C++是面向对象的,强调程序的分层、分类,以抽象为基础,进行对象的定义与展示,即程序设计。java语言也是一种面向对象的语言。 怎么区分表达式和表达式语句? 答:C中,一个语句的最后面要有分号;,如果没有,就不是语句,所以表达式后面再加上分号,就成了表达式语句. 在C语言中运算符的优先级从高到低的排列顺序是什么? 答:按运算符优先级从高到低:单目运算符-双目运算符-三目运算符-赋值运算符-逗号运算符 特别在双目运算符中,按 运算符优先级从高到低:算术运算符-移位运算符-关系运算符(其中== 和 !=优先级又较低)-逻辑运算符(按位与-〉按位异或-〉按位或-〉逻辑与-〉逻辑或)! 设char c[5]={‘a’,’b’,’\0’,’c’,’\0’};则printf(“%s”,c);的输出是? 答:输出ab。‘\0’就表示字符串结束,printf就不输出后面的字符。 求1!+2!+3!+。。。+10! ? ?#include stdio.h ? ?void main(void) ? ?{ float s = 0, t = 1; int n; for (n=1;?___; n++) { ? ?? ?? ?? ___; ? ?? ?? ?? ___; ? ?? ?} printf(“1!+2!+3!+。。。+10!=%f”, s); 答:#includestdio.h void main() { float s=0,t=1; int n; for(n=1;n=10;n++) { ??t=t*n; ??s=s+t; } printf(1!+2!+3!+……+10!=%e\n,s); } 语言中形参到实参传递是双向的吗? 答:不能。实参对形参是单向的值传递。也就是说形参中的值改变不会影响实参的值。 以下程序的输出结果是? #include main() { int x=020,y=0x20,z=20; printf(%d,%d,%d\n,x,y,z); } 答: x=020,以0开头,表示这是一个8进制的数字。所以x=2*8^1+0*8=16。y=0x20,以0x开头,表示这是一个16进

文档评论(0)

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

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

1亿VIP精品文档

相关文档