云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 江苏省计算机等级考试(二级C语言)考点分析

江苏省计算机等级考试(二级C语言)考点分析

  • 62 次阅读
  • 3 次下载
  • 2025/5/30 9:40:56

江苏省计算机等级考试(二级C语言)考点分析

一、宏定义

二级考试必考的,必须让学生明白:宏替换只是原样替换。 (1)2002年秋填空第7题 #define N 3

#define Y(n) ((N+1)*n)

则执行语句“z=2*(N+Y(5+1));”后,z的值是_______。 替换时原样替换后的式子为:z=2*(3+((3+1)*5+1)); (2)2005年春填空第10题 #include #define ADD(x,y) x+y main()

{int a=15,b=10,c=20,d=5;

printf(“%d\\n”,ADD(a,b)/ADD(c,d)); 上面程序输出结果为_________。 二、递归应用

(1) 2000年秋填空第5题 main()

{ int s, p[9]={1,2,3,4,5,6,7,8,9}; printf(“\\n%d”, add(p,5)); }

add(int *p, int n) { if(n==1) return *p; else return *p+add(p+1,n-1); }

程序输出结果是________。 结果为:15

(2) 2000年秋填空第8题 fun(int n, int *s)

{ int f1,f2;

if(n==1||n==2) *s=1; else

{fun(n-1,&f1); fun(n-2, &f2);

*s=2*f1+f2+1; printf(“\\n%d,%d”,f1,f2); } } main() { int x;

fun(4,&x); printf(“\\n x=%d”,x); }

程序运行时输出的第一行是_________,第二行是________,最后一行是________。

答案:1,1 4,1 x=10 (3) 2001年春填空第4题 以下程序输出结果是________ main()

{ printf(“%d”, fun(5)); } fun( int n)

{ if(n==1) return 1; return n-fun(n-1); }

结果为:3

(4) 2001年春填空第12题

以下程序实现将a数组中后8个元素从大到小排序的功能 void sort(int *x, int n) main()

{ int a[12]={5,3,7,4,2,9,8,32,54,21,6,43}, k; sort(______, 8);

for(k=0; k<12; k++) printf(“%d”,a[k]); }

void sort(int *x, int n) {int j,t; if(n==1) return; for(j=1; j

{ t=x[0]; x[0]=x[j]; x[j]=t; } sort(x+1, ________); }

本题结合了冒泡排序法,第一个空填:a+4 ;第二个空填:x[0]

(5) 2001年春填空第8题

以下程序运行时第一行输出________,第二行输出________。 void rev(int *p, int n) { int t; if(n>1)

{t=p[0]; [0]=p[n-1]; p[n-1]=t; rev(p+1,n-2); } } main()

{ int j,a[5]={1,2,3,4,5}; rev(a+1,4);

for(j=0; j<5; j++) printf(“%d”,a[j]); printf(“\\n”; rev(a,3);

for(j=0; j<5; j++) printf(“%d”,a[j]); }

输出结果:15432 45132

(6) 2002年秋填空题第11题(P7-11) main()

{ int a[3][3],i,j; numlist(&a[0][0],9); for(i=0; i<3; i++)

{ for(j=0; j<3; j++) printf(“%d,”, a[i][j]); printf(“\\n”); } }

numlist(int *p, int n) { int i;

for(i=0; i

num(int n);

{ if(n==0) return 1; return num(n-1)*2+1; }

程序运行时输出的第一行是: 1,3,7 (7) 2003年春填空题第11题(P17-11) long func(long x) { if(x<100) return x;

else return func(x/100)*10+x; } main()

{ printf(“The result is : %ld \\n”,func(132645)); } 程序运行结果是 The result is : 365 (8) 2003年秋填空题第11题(P26-11) void fun(int *p1, int *p2); main()

{ int i, a[6]={1,2,3,4,5,6}; fun(a,a+5);

for(i=0; i<5; i++) printf(“-”,a[i]); }

void fun(int *p1, int *p2) { int t;

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

江苏省计算机等级考试(二级C语言)考点分析 一、宏定义 二级考试必考的,必须让学生明白:宏替换只是原样替换。 (1)2002年秋填空第7题 #define N 3 #define Y(n) ((N+1)*n) 则执行语句“z=2*(N+Y(5+1));”后,z的值是_______。 替换时原样替换后的式子为:z=2*(3+((3+1)*5+1)); (2)2005年春填空第10题 #include #define ADD(x,y) x+y main() {int a=15,b=10,c=20,d=5; printf(“%d\\n”,ADD(a,b)/ADD(c,d)); 上面程序输出结果为_________。 二、递归应用 (1) 2000年秋填空第5题 main()

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com