- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
 - 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
 - 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
 - 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
 - 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
 - 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
 - 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
 
                        查看更多
                        
                    
                2002年上海市高等学校 计算机等级考试  二级(C语言) 试题一(28分,每小题4分) ⑴  试写出一个C表达式,计算一元二次方程              ax2+bx+c=0的一个根  ⑵  执行下列程序段后,数组a的成员的值各为多少?       int a[4]={1,3,5,7};       a[3]=--a[0]?++a[1]:a[2]--; ⑶ 设有如下程序:       #include stdio.h       void main()       {  int a, c;           float b;           c=(a=2*3, a+(int)(b=20/3));           printf(%d\t%f\t%d\n,a,b,c);        }        试写出程序的输出结果。  ⑷ 设有如下程序段:      char  s1[20]=P4CPU;      char  s2[]=DVD+17\CRT+56KMODEM;      s2[10]=\0;      strcat(s1,s2+3);      puts(s1);     写出执行后的输出结果。 ⑸ 设有如下宏定义:      #define round_2(x)  (int)(x*100+0.5)/100.0      试说明该宏定义的功能并写出语句       printf(%f,round_2(3.1416));     的输出结果。 ⑹ 设有如下程序:      #include stdio.h      void  main()      {  int x;          printf(%d\t,x=127);          printf(%d\t,x=6^9);          printf(%d\t,x=012|5);          printf(%d\t,x=73|5);       }      试写出其输出结果。 ⑺ 设有下列变量定义:      int a[5]={2,3,4,5,6};      int *p=a+2;      求表达*(p++)*a[3]的值。  试题二(12分,每小题6分) 阅读下列程序,写出程序的输出结果。 ⑴ 【程序2.1】      #include stdio.h      void main()      {  int a[6]={0,1,2,3,4};          int i,c=0,d=0;          for(i=0;i=3;i++)               {  a[i+1]=a[i]+c+d+1;    c=c+d+d+3;                    d=d+3;  printf(%d\n,a[i]); }       } }  ⑵ 【程序2.2】      #include stdio.h      int  count, position, data;      void  search(int *p,  int n,  int st)      {  if(*p==data)  { count++;  position=st; }          if(n1)            search(p+1,n-1,st+1);       }       void main()       {  int  a[5]={10,30,50,30,20};           count=0;    data=30;              search(a,5,1);           printf(count=%d,position=%d\n,count,position);      } 试题三(12分,每小题6分)    改错。下列函数或程序都有三个错误,按题中的计    算要求,纠正所有错误,并以“将#XX行改为YYY”     的形式进行解答。下列代码左边的#1、#2、……     是附加的行号。 ⑴ 16进制数可以由数字0到9和大写字母A至F组成的      字符串表示,函数3.1的功能是将用字符串表示的      16进制数转化为十进制数,如将2A转化为42,若      字符串中出现其他符号则返回-1。    【函数3.1】 #1   int hexvalue( char *str) #2   { #3	  int data, i, n; #4	  for ( i = 0; str[i]!=’\0’; i++ ) #5	      { #6		if ( str[i]=’9’ ) #7			n = str[i] – ‘0’; #8		else if ( str[i]=’A’  s
                
原创力文档
                        

文档评论(0)