为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

上海市计算机二级考试(C语言)复习资料题目答案

2010-12-27 23页 doc 158KB 97阅读

用户头像

is_754528

暂无简介

举报
上海市计算机二级考试(C语言)复习资料题目答案05年C语言二级考试复习资料解答 上海理工大学 上海市计算机二级考试(C语言)复习资料题目解答 第一部份:基础知识 1. B 2. C 3. C 4. B 5. D 6. A 7. A 8. C 9. C 10. A 11. C 12. A 13. B 14. B 15. C 16. B 17. D 18.B 19. A 20. C 21. C 22. B 23. B 24. C 25. D 26. B 27. B 28. D 29. C 30. C 31. D 32. C 33. C 34. B 35. C 36. D 37...
上海市计算机二级考试(C语言)复习资料题目答案
05年C语言二级考试复习资料解答 上海理工大学 上海市计算机二级考试(C语言)复习资料目解答 第一部份:基础知识 1. B 2. C 3. C 4. B 5. D 6. A 7. A 8. C 9. C 10. A 11. C 12. A 13. B 14. B 15. C 16. B 17. D 18.B 19. A 20. C 21. C 22. B 23. B 24. C 25. D 26. B 27. B 28. D 29. C 30. C 31. D 32. C 33. C 34. B 35. C 36. D 37. C 38. B 39. C 40. B 41. C 42. B 43. C 44. B 45. B 46. A 47. D 48. D 49. D 50. D 51. A 52. C 53. (Sqrt( x)+ sqrt( y))/2/( x+ y) or similar 54. The "234" is namely the string234 55. B 56.D 57.D 58. B 59. C 60.D 61.B 62. D 63.A 64.D 65.C 66.B 67.C 68. D 69. C 70.C 71.A 72.A 73.B 74.B 75.C 76. C 77.C 78.A 79.D 80.B 81.D 82.D 83.C 84.D 85.B 86.D 87.B 88.D 89.B 90.C 91.C 92.B 93.B 94.B 95. N+'0' 96. 0The x1400 moves is ex-, binary system 00010100 Bs or eight enter the 024 Qs of system 97. The first answer 65 ds or 41 hses or a the second answer 1 or not0 98. 85 99. 14 100. x=-60 第二部分 读程序,写结果 1. 0,2,4,3 2. 3.142 3.​ 8 4.​ m/10%10*100+m/100*10+m%10 5.​ ?uoy_era_woHHwaeyu 6.​ 7,3 7.​ 54656 8.​ A the = biggest number, b= is most the fraction 9.​ 1 10.​  5,5 11.​ 9876543210 12.​ 1 3 5 7 9 13. j=0 m=4 The first k : 4 j=1 m=4 14.​ The second k : 5 15.​ Count=0, position=0( did not find out) 16.​ 0 -30 17.​ 输出12 14 22 24 32 34,函数s是用插入法对数组a的前n个元素从小到大排序 18.​ 输出 2 3 5 7 11 13 函数p的功能是求k(包括k )以内的质数 19.​ 输出 n=91, a[]=0, 10, 21, 31 20.​ 输出 Feith 21.​ 输出 72 56 38 49 22.​ 81818181 23.​  k=5 24.​  1 25.​  9 26.​ 用递归函数实现10->2进制转换 第三部分 程序改错 1. #4 scanf(“%d”,&x); #10 low=m+1 #11 high=m-1 2. #7 scanf(“%c”,&str[i]); #8 break 3. #7 x , n #13 n==0 #15 x*xn(x,n-1) 4. #5 t=t*x/i #15 e=ex(x) 5. #4 scanf(%d”,&x); #10 low=m+1 #11 high=m-1 6. #3 fun(str[]) #5 while (*(str+num)!=’\0’) num++; #9 char str[10],*p=str; 7. #14 flag=0 ; #19 flag=1; i++; 8. #3 func(str[]) #5 while (*(str+num)!=’\0’) num++; #9 {char str[10],*p=str; 9. #5 n=n/10; #6 while (!n); #12 scanf(“%ld”,&n); 10. #10 else if (x>a[m]) low=m+1; #11 else high=m-1; 11. #6 a=1.0; #8 a/=i; #9 e+=a; 12. #6 char *temp; #10 if(strcmp(temp,name[i])>0) #12 printf(“%s \n”, temp ); 13. #3 str[i]!=’\0’ #4 str[i]>= ’0’ && str[i]<=’9’ #10 data = data*16 + n; 14. #3 int n1=0,n2=0, i; #6 if (str[i]==’#’) #8 if (str[i]>=’0’&&str[i]<=’9’) #9 n2++; } 15. #5 i=eps) #13 return (2*s); 19. #3 long fun(char *p) #17 num+=p[i]-48;或 num+=p[i]-‘0’; #29 printf(“%ld\n”,n); /* 必须有%ld */ 20. #9 a[j]a[j]&&a[j] #18 a[j]=b[k] 21. #2 void printcol(int (*p)[N], int row, int col) #6 printf(“\t\t%d\n”,*(*(p+i)+col)); #14 } while (col<0||col>N-1); 22. #2 …(char *s) #4 (*p) 或…(*p!=0) 或…(*p!='\0’) #9 gets(x); 23. #6 t=n%10; #10 n/=10; #11 } while(n); 或 } while (n!=0); 24. #4 { for (j=0;j<=20-i;j++) #5 printf(" "); #8 printf("\n"); 25. #2 char *fun(char *s,char *t) #4 a=0;(或a=NULL;) #8 if (*r ==*p) {r++; p++;} 第四部分 编程序 1. 设有链表结点的结构及变量如下:) struct st { int num ; struct st *next; }; struct st *head, *p1 ,* p2; 编写函数create(),是个无参数函数,创建链表,num=0结束,返回指针值,指向首结点head。 #define NULL 0 #define LEN sizeof(struct st) struct st { int num; struct st *next; }; int n=0; struct st *creat() { struct st *head, *p1,*p2; p1=p2=(struct st *)malloc(LEN); scanf("%u,%d",&p1->num,&p1->score); head=NULL; while (p1->num!=0) { n=n+1; if (n==1) head=p1; else p2->next=p1; p2=p1; p1=(struct st *)malloc(LEN); scanf("%u,%d",&p1->num,&p1->score); } p2->next=NULL; return (head); } 2. 对N个数据,降序排列并输出 #define N 10 main() { int a[N]={1,5,0,3,-6,9,-8,7,2,4}; int i,j,t; for (i=0;i #include struct node { char val; struct node *next; }; struct node *create(FILE *fp) { struct node *p,*h; char d; h=NULL; fp=fopen("a:\\abc\\file.dat","r"); while (!feof(fp)) { fread(&d,2,1,fp); p=(struct node *)malloc(sizeof(struct node)); p->val=d; p->next=h; h=p; } fclose(fp); printf("\n"); printlk(h); return h; } printlk(struct node *h) { struct node *p; printf("print link...\n"); p=h; while (p) { printf("%c",p->val); p=p->next; } } main() { struct node *h,*p; FILE *fp; fp=fopen("rd_data","r"); if (fp==NULL) { printf("read data error!\n"); exit(0);} h=create(fp); printlk(h); exit(0); } 5.试写一个函数(函数名为f),以十进制正整数n为整型参数,函数的返回值是n的位数(例:278是三位数)。要求循环结构需用do_while控制结构。 int f(long n) { int c=0; do { c++; n=n/10; } while (n); return c; } main() { long n; int num; scanf("%ld",&n); num=f(n); printf("%ld has %d numbers\n",n,num); } 6.将一个n×n的矩阵行列转置后输出,转置功能由函数reverse实现,试编程。 #define N 3 void reverse(float x[][N],int n) { int i,j; float t; for (i=0;i decode() { char c; while ((c=getchar())!='\n') { if ((c>='a'&&c<='z')||(c>='A'&&c<='Z')) { c=c+4; if (c>'Z'&&c<='Z'+N||c>'z') c=c-26 ; } printf("%c",c); } } main() { decode();} 9. 编写一个带参数宏trans(F),输入一个华氏温度F,要求输出摄氏温度c。公式是 ,取2位小数。 #define trans(F) (F-32)*5/9.0 main() { float c,F; scanf("%f",&F); c=trans(F); printf("F=%.2f, c=%.2f\n",F,c); } 10. 对非线性方程f(x)=0,可用牛顿迭代公式 求解,要求方程式用函数名f,导函数f’名为f1,迭代函数名为g,假设函数f和f’已有定义,编写出迭代函数g(x),精度小于10-5。 float g(float x) { float xi; do { xi=x-f(x)/f1(x); x=xi; } while (fabs(f(x))>=1e-5); return x; } 11. 编写ptstar无参数函数打印如下图形,顶端的*定位在屏幕第25字符位置,编出完整程序,写出对ptstar的调用。 123456789012345678901234567890 * *** ***** ******* printstar() { int i,j; printf("123456789012345678901234567890\n"); for (i=0;i<4;i++) { for (j=0;j<=23-i;j++) printf(" "); for (j=0;j<2*i+1;j++) printf("*"); printf("\n"); } } main() { printstar(); } 12. 试写一个函数(函数名为f),以正整数n为整型参数,函数的返回值是下列级数的前n项的和 1+3+5+...+(2n-1) 要求用递归法计算级数的和。 long f(int n) { if (n==1) return 1; else return (2*n-1+f(n-1)); } main() { long sum; int n; scanf("%d",&n); sum=f(n); printf("sum=%ld\n",sum); } 13. 本程序的主程序为: main() { int b[]={24,12,14,32,22,34}; printf("%d\n", f(b,6)); } 其中调用函数f,该函数有二个参数,依次为整型数组a和整型数n,函数的返回值是数组的a[0]到a[n-1]中的最大值。试写出函数f。 要求循环结构需用for控制结构。 int f(int a[],int n) { int i,max=-32768; for (i=0;imax) max=a[i]; return max; } main() { int b[]={24,12,14,32,22,34}; printf("%d\n", f(b,6)); } 14. 编写sort函数,对N个int型数据降升序排列,该函数有2个形参:int a[]和int n,采用“冒泡法”或“选择法”可任选。 void sort(int a[],int n) /* 选择法 */ { int i,j,sub,temp; for (i=0;ia[j]) sub=j; if(i!=sub) { temp=a[i]; a[i]=a[sub]; a[sub]=temp; } } } 15. 编写一个名为prime的函数,以m为整型参数,判别m是否为素数。若m为素数,则返回1;若m不是素数,则返回0。 #include int prime(int m) { int i,k; k=(int)sqrt(m); for( i= 2; i <= k ; i++) /* 或 i < m */ if ( m % i == 0 ) break; /* 或 !( m % i ) */ if (i > k) return 1; /* 或 i==m */ else return 0; } 16. 编写一个名为cntatoz的函数,输入一行字符,统计其中的英文字母个数(大小写不论)。 #include main() { char ch; int n=0; printf("Input a string:\n"); while(1) { ch=getchar(); if(ch=='\n') break; if(ch>='a'&&ch<='z'||ch>='A'&&ch<='Z') n++; } printf("Number of letters is %d.\n",n); } 17. 设有3名学生成绩存在如下的数组中:: int score[3][4]={{65,57,70,60},{90,87,50,81},{90,65,100,98}} 编程输出有成绩低于60分的某学生所有成绩(按C语言的规则,允许第0行)。 main() { void search(float (*p)[4],int n); float score[3][4]={{65,57,70,60},{58,87,90,81},{90,99,100,98}}; search(score,3); } void search(float (*p)[4],int n) { int i,j,flag; for (j=0;j= eps); return s;} 19. 试用for 控制结构,求数组a[N]的前k(k <= N )个元素的最大值和最小值。将统计结果分别存于变量max和min中。 float max,min; void mmai(int a[],int k) {int i; max=min=a[0]; for(i=1;ia[i]) min=a[i];} } 20. 输入10个数,输出这10个数中仅出现一次的数 如输入:12 36 72 36 87 99 87 87 12 35 则输出:72 99 35 main() { int a[10],i,j; for ( i = 0; i < 10; i++ ) scanf("%d", &a[i] ); for ( i = 0; i < 10; i++ ) { for ( j = 0; j < 10; j++ ) if ( i!=j && a[i]==a[j] ) break; if ( j >= 10 ) printf( "%d ", a[i] ); } } 21. 试设计一个函数,它能求出两个整型数的和与积,同时,再编写一个主程序main,调用上述函数以验证该函数的功能与正确性。 void test(int a, int b, int *ps, int *pt) { *ps = a + b; *pt = a * b; } main() { int a, b, s, t; scanf( "%d%d", &a, &b ); test( a, b, &s, &t ); printf( "%d %d\n", s, t ); } 22. 输入若干非0实数,直到输入0时停止,要求输入的实数最多不超过20个,统计其中正数的个数,负数的个数。 #include “stdio.h” main() { int n,posn,negn;double a; n=posn=0; printf(“Input real numbers:\n”); scanf(“%lf”,&a); while(a!=0&&n<20) { if(a>0) posn++; n++; if (n<20) scanf(“%lf”,&a); } negn=n-posn; printf(“posn=%d,negn=%d\n”,posn,negn); } 23. 输入一行字符,统计其中的英文字母个数。 #include “stdio.h” main() { char ch; int n=0; printf(“Input a string:\n”); while(1) { ch=getchar();if(ch==‘\n’) break; if(ch>=‘a’&&ch<=‘z’||ch>=‘A’&&ch<=‘Z’) n++; } printf(“Number of letters is %d.\n”,n); } 24. 编写完整的程序,用公式 计算e的近似值,直到某项小于10-7为止。 main() { double e = 1.0, u = 1.0; int n = 1; while ( u >= 1.0e-7) { u = u/n; e = e+u; n = n+1; } printf(“e=%8.6f\n”, e); } 25. 定义一个带参数的宏,其功能是求一个数的绝对值。 #define ABSX(x) (x)<0 ? –1*(x) : (x) 或类似 26. 求出1—1000之间“水仙花数”。要求的水仙花数是个三位数,它的各位数字之和等于该数本身,例如:153=13+53+53,所以153是个水仙花数。 #include main() { int i,j,k,num; for (i=1; i<=9; i++) for (j=0; j<=9; j++) for (k=0; k<=9; k++) { num=pow(i,3)+pow(j,3)+pow(k,3); if (num==i*100+j*10+k) printf(" %5d",num); } } 27. 应用递归算法求某数a的平方根。求平方根的迭代公式如下: = #include #include double fun(double a,double x0) { double x1,y; x1=(x0+a/x0)/2.0; if (fabs(x1-x0)>=1e-5) y=fun(a,x1); else y=x1; return y; } main() { double x; printf("Enter x: "); scanf("%lf",&x); printf("The square root of %lf is %lf\n",x,fun(x,1.0)); } 28.​ 将十进制正整数m转换成k(2<=k<=9)进制数,并按位输出。例如,若输入8和2,则应输出1000(即十进制数8转换成二进制的表示是1000)。 #include void fun(int m,int k) { int aa[20],i; for (i=0; m; i++) { aa[i]=m%k; m/=k; } for ( ; i; i--) printf("%d",aa[i-1]); } main() { int b,n; clrscr(); printf("Please enter a number and a base:\n"); scanf("%d%d",&n,&b); fun(n,b); printf("\n"); } 29.​  30.​ 求s=aa…aa-aaa…-aa-a(此处 aa…aa表示n个a,a和n的值在1至9之间)。例如,若a=3,n=6,则以上表达式 为s=333333-33333-3333-333-33-3,其值是:296298。a和n是fun 函数的形参,表达式的值作为函数值传回main函数。 #include long fun(int a,int n) { int j; long s=0,t=0; for (j=0; j void fun(long s,long *t) { long s1=10; s/=10; *t=s%10; while (s>0) { s=s/100; *t=s%10*s1+*t; s1=s1*10; } } main() { long s,t; clrscr(); printf("\n Please s: "); scanf("%ld",&s); fun(s,&t); printf("The result is: %ld\n",t); } 31.编写函数fun的功能是:输出M行M列整数方阵,然后求两条对角线上的各元素之和,返回此和数。 #include #define M 5 int fun(int n,int xx[][M]) { int i,j,sum=0; printf("\n The %d x %d matrix:\n",M,M); for (i=0; i #include #include void fun(char *p) { int i,t; char c[80]; for (i=0,t=0; p[i]; i++) if (!isspace(*(p+i))) c[t++]=p[i]; c[t]='\0'; strcpy(p,c); } main() { char c,s[80]; int i=0; printf("Input a string: "); c=getchar(); while(c!='#') { s[i]=c; i++; c=getchar(); } s[i]='\0'; fun(s); puts(s); } 33. 编写函数fun的功能是: 将s所指字符串中最后一次出现的t1所指字符串替换成t2所指的子串,所形成的新串放在w所指的数组中。在此处,要求t1和t2所指字符串的程度相同。例如,当s所指字符串中的为:“abcdabfabc”,t1所指的子串中的内容为:“ab”,t2所指子串中的内容为:“99”,结果,在w所指的数组中的内容应为:“abcdabf99c”。 #include #include #include int fun(char *s,char *t1,char *t2,char *w) { int i; char *p,*r,*a; strcpy(w,s); while (w) { p=w; r=t1; while (*r) if (*r==*p) { r++; p++; } else break; if (*r=='\0') a=w; w++; } r=t2; while (*r) { *a=*r; a++; r++; } } main() { char s[100],t1[100],t2[100],w[100]; clrscr(); printf("\nPlease enter string s: "); scanf("%s",s); printf("\nPlease enter substring t1: "); scanf("%s",t1); printf("\nPlease enter substring t2: "); scanf("%s",t2); if (strlen(t1)==strlen(t2)) { fun(s,t1,t2,w); printf("\nThe result is: %s\n",w); } else printf("\nError: strlen(t1)!=strlen(t2)\n"); } 34. 编写函数fun的功能是: 将a所指字符串中的字符和b所指字符串中的字符按排列的顺序交叉合并到c所指数组中,过长的剩余字符接在c所指数组的尾部。例如,当a所指字符串中的内容为:“abcdefg”,b所指字符串中的内容为“1234”时,c所指数组中的内容应该为“a1b2c3d4efg”;而当a所指字符串中的内容为“1234”,b所指字符串中的内容为“abcdefg”时,c所指数组中的内容应该为“1a2b3c4defg”。 #include #include void fun(char *a,char *b,char *c) { while (*a&&*b) { *c=*a; c++; a++; *c=*b; c++; b++; } if (*a=='\0') while (*b) { *c=*b; c++; b++; } else while (*a) { *c=*a; c++; a++; } *c='\0'; } main() { char s1[100],s2[100],t[100]; clrscr(); printf("\n Enter s1 string: "); scanf("%s",s1); printf("\n Enter s2 string: "); scanf("%s",s2); fun(s1,s2,t); printf("\n The result is: %s\n",t); } 35. 编写函数fun的功能是:从传入的num个字符串只能找出最长的一个字符串,并通过形参指针max传回该串地址。(用****作为结束输入的标志) #include #include fun(char (*a)[81],int num,char **max) { int i,p,len; len=strlen(a[0]); p=0; for (i=1; i void fun(char *s,char *t) { int i,d; d=strlen(s); for (i=0; i void main() { char temp,*s,*s1,*s2; s1=(char*)malloc(sizeof(100)); printf("Input string: "); gets(s1); s=s2=s1; while (*s2!='\0') s2++; s2--; while (s1 #include int match(char *s,char *t) { char *b=s,*p,*r; for (; *s!='\0'; s++) { for (p=s,r=t; *r!='\0'&&*p==*r;p++,r++); if (*r=='\0') return (s-b); } return (-1); } main() { char s1[81],t1[20]; char *s=s1,*t=t1; int i; printf("\ninput source string: "); gets(s); printf("\ninput substring: "); gets(t); i=match(s,t); printf(" position is : %d\n",i); } 39. 编写程序,用于把两个链表{3,12,8,9,11}和{1,2,3}连接起来。其中create_list用来创建链表,链表结点的数据从数组中导入,并返回链表的首结点指针。函数concatenate用来把由实参传进来的两个链表连接起来,返回第一个链表的首结点指针。函数printlink用来遍历打印链表。 #include struct list { int data; struct list *next; }; struct list *create_list(int array[],int num) { struct list *tmp1,*tmp2,*pointer; int i; pointer=(struct list*)malloc(sizeof(struct list)); pointer->data=array[0]; tmp1=pointer; for (i=1;inext=NULL; tmp2->data=array[i]; tmp1->next=tmp2; tmp1=tmp1->next; } return pointer; } struct list *concatenate(struct list *pointer1,struct list *pointer2) { struct list *tmp; tmp=pointer1; while (tmp->next) tmp=tmp->next; tmp->next=pointer2; return pointer1; } printlink(struct list *head) { struct list *p; p=head; while (p) { printf("%4d",p->data); p=p->next; } } main() { int arr1[]={3,12,8,9,11}; int arr2[]={1,2,3}; struct list *ptr1,*ptr2,*ptr3; ptr1=create_list(arr1,5); ptr2=create_list(arr2,3); ptr3=concatenate(ptr1,ptr2); printlink(ptr3); } 40. 函数reverse()实现将已知链表的链接顺序颠倒的功能,即第1个表元素变为最后一个表元素,第2个表元素变为倒数第2个表元素……最后一个表元素变为第1个表元素。 本程序的主要难点在reverse()函数,其它的程序段为验证该函数用,采用了head全局变量是为了简化程序中的参数传递。 程序中先用指令p=q2->next; 将p定位q2->next结点,再用指令q1=q2; 将q1指向当前q2所指的结点,然后用指令q2->next=q1; 进行逆向单链表的连接,如此循环至q2=NULL。 #include struct node { char data; struct node *next; } *head; void create(struct node *q) { if (head==NULL) { q->next=NULL; head=q; } else { q->next=head; head=q; } } void reverse() { struct node *p,*q1,*q2; q2=head; q1=NULL; while (q2!=NULL) { p=q2->next; q2->next=q1; q1=q2; q2=p; } head=q1; } main() { char ch; struct node *p; head=NULL; while ((ch=getchar())!='\n') { p=(struct node *)malloc(sizeof(struct node)); p->data=ch; create(p); } p=head; while (p!=NULL) { printf("%c",p->data); p=p->next; } reverse(); p=head; while (p!=NULL) { printf("%c",p->data); p=p->next; } } 41. 编程实现对一个文本文件中内容的反向显示。运行该程序前,必须先在c:\tc目录下编辑并保存一个名为“text.txt”的文本文件(可利用记事本)。该程序先利用读方式打开该文本文件,定位到文件尾,从文件尾向前定位,定位成功则读取一个字符并显示,达到反向显示的目的。 #include void main() { char c; FILE *fp; if ((fp=fopen("text.txt","r"))==NULL) { printf("Cannot open file. \n"); exit(1); } fseek(fp,1,2); while ((fseek(fp,-1L,1))!=-1) { c=fgetc(fp); putchar(c); if (c=='\n') fseek(fp,-2L,1); else fseek(fp,-1L,1); } fclose(fp); } 42. 编程序测试fgets()、fputs()、fopen()和fclose()的用法,程序运行后,在磁盘的当前目录下上生成名为“test.txt”的文本文件。 #include char x[4][8]={"First","second","Third","Fourth"}; int a[4]={6,7,6,5}; void main() { int i; char y[4][8]; FILE *fp; fp=fopen("test.txt","w"); for (i=0; i<4; i++) fputs(x[i],fp); fclose(fp); fp=fopen("test.txt","r"); for (i=0; i<4; i++) fgets(y[i],a[i],fp); fclose(fp); for (i=0; i<4; i++) printf("%s\n",*(y+i)); } 43. 编程序利用fread()函数和fwrite()函数向磁盘文件进行读写操作,先用fwrite()函数向文件f1写入小写字母,再调用dx()函数读取该文件,将其中的小写字母转换成大写字母并输出,这两个函数用于二进制数据的读写。 #include void dx() { int i; char b[10]; FILE *fp=fopen("f1","r"); for (i=0; i<10; i++) { fread(b+i,sizeof(char),1,fp); printf("%c",b[i]-32); } fclose(fp); } main() { char a[10]={'a','b','c','d','e','f','g','h','i','j'}; int i; FILE *fp=fopen("f1","w"); for (i=0; i<10; i+=2) fwrite(a+i,sizeof(char),2,fp); fclose(fp); dx(); } 44. 用链表操作实现数制的转换,试编程。 #include struct node { int num; struct node *next; }; main() { struct node *p,*b=NULL; int m,n,base,c; printf("Input n and base: \n"); scanf("%d%d",&n,&base); m=n; while(n) { c=n%base; n=n/base; if (c<10) c=c+'0'; else c=c+'A'-10; p=(struct node*)malloc(sizeof(struct node)); p->num=c; p->next=b; b=p; } printf("Output:\n"); printf("%d(10)=",m); while(p) { printf("%c",p->num); p=p->next; } printf("(%d)\n",base); free(p); } 第五部分 读程序,填写指令 1. ① p=m=z=0; ② else m++ 2. ① c:\\tc\\file1.dat ② c:\\tc\\file2.dat ③ !feof(in) 3. ① p0->link=p1或p0->link=head ② p0->link=p1 ③ p0->link=NULL 4. ① fgetf(fp) ② count++或 类似功能的指令 5. ① *(x+n-1) ② *(x+n-1-i) ③ *x 6. ① n % base ② n / base ③ n!=0 7. ① a[i] ② temp ② s+1.0/(i*i) ③ pi(100) 或 pi(某n值) 12. ① flag=0 ② i=1 ③ "d:\\output.dat", "w" 13. ① w=*x ② *(x+i)=*(x+i+1) ③ *(x+i)=w 14. ① a[i] ② i=1 ③ a[i],fp 15. ① low++ ② a[i]>0 ③ high-- 16. ① a[0] ② a+1 ③ a[0]>maxother 17. ① str1++,str2++ ② 1 ③ ps[j],ps[j+1] 18. ① i=0; i
/
本文档为【上海市计算机二级考试(C语言)复习资料题目答案】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索