C笔试题(新)C笔试题(新).doc

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

姓名: 日期: 选择题 1,若有以下定义数组并初始化错误语句( A ). char a[10]={0,1,2,3,4,5,6,7,8,9}; A) scanf(%c,a[0]); B) scanf(%s,a); C) printf(%c,a[3]); D) printf(%s,a); 2,以下程序输出结果为( ) #include stdio.h main() { int i,b,k=0; for(i=1;i=5;i++) { b=i%2; while (b--=0) k++; } printf(%d,%d\n,k,b); } A. 3,-1 B. 8,-1 C. 3,0 D. 8,-2 3,根据if比较语句,顺序给出VAR的类型。( ) if(!var) if(var==NULL) if(var==0) if ((var = - 0.00001) (var = 0.00001) A. int B. BOOL C. float D. 指针 4,以下正确的描述是( )。 A) continue语句的作用是结束整个循环的执行 B) 只能在循环体内和switch语句内使用break语句 C) 在循环体内使用break语句或continue语句的作用相同 D) 从多层循环嵌套中退出时,只能使用goto语句 E) break 语句不能用于循环语句和switch语句外的任何其他语句 F) 在switch语句中使用break语句或continue语句的作用相同 G) 在循环语句中使用continue语句是为了结束本次循环,而不是终止整个循环的执行 H) 在循环语句中使用break语句是为了使流程跳出循环体,提前结束循环 5,假定在32位机器上设有以下说明和定义:   typedef union { long i; int k[5]; char c; } DATE;   struct data { int cat; DATE cow; double dog; } too;    DATE max;    则语句 printf(%d,sizeof(struct data)+sizeof(max));的执行结果是:( )。 A. 32 B. 48 C. 52 D. 64 6,下面程序输出是( ) #include stdio.h main ( ) { char *a=1234; fun(a); printf(\n); } fun ( char *s) { char t; if(*s) {t = *s++; fun(s); } if(t !=\0) putchar( t ); } A) 1234 B) 4321 C)1324 D) 4231 问答及找错 1,写一个“标准”宏MIN,这个宏输入两个参数并返回较小的一个。 #define MIN(A,B) ((A) = (B) (A) : (B)) 2,关键字static的作用是什么?程序运行结果在C语言中,关键字static有三个明显的作用: 1). 在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。 2). 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。 3). 在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内使用。 大多数应试者能正确回答第一部分,一部分能正确回答第二部分,同是很少的人能懂得第三部分。这是一个应试者的严重的缺点,因为他显然不懂得本地化数 据和代码范围的好处和重要性。int sum(int a) { auto int c=0; static int b=3; c+=1; b+=2; return(a+b+c); } void main() { int I; int a=2; for(I=0;I5;I++) { printf(%d,, sum(a)); } } 答案: 8,10,12,14,16,int main() { char a; char *str=a; strcpy(str,hello); printf(str); return 0

文档评论(0)

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

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

1亿VIP精品文档

相关文档