c试题及答案3_第1页
c试题及答案3_第2页
c试题及答案3_第3页
免费预览已结束,剩余55页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、改错题 1注意事项1. 标有$ERROR?的程序行有错,请直接在该行修改2. 请不要删除$ERROR?错误标志3. 请不要将错误行分成多行4. 请不要修改任何注释5. 不要自己运行 Windows下的MSDO方式进入 TC 进行编程等 , 其结果不能保证正确回收,题目:随机输入 10 个数,选出其中的最小数。程序如下:main()int i, min, a10;printf ("input 10 number: nz/): for(i=0;i<=10;i+)scanf("%d", ai); /*$ERR0R2$*/ min=a0;for(i=l;i<1

2、0;i+)if (ai<a0)/*$ERR0R3$*/min=ai;printf("minnum=%dn", min);题目答案$1$: for(i=0;i<10;i+)$1$: for(i=0;i =9;i+)$2$: scanf("%d", &ai);$3$:if (ai<min)$3$:if (min ai) 改错题 2 注意事项1. 标有$ERROR?的程序行有错,请直接在该行修改2. 请不要删除$ERR0R?错误标志3. 请不要将错误行分成多行4. 请不要修改任何注释5. 不要自己运彳亍Windows下的MSDO方式进

3、入 TC 进行编程等 , 其结果不能保证正确回收,致评分错误/*$ERROR1$*/致评分错误题目:不用 strcat. 函数,将键盘输入的两个字符串连接起来形成一个新串。main ()char si50, s220;int i, j二 0;printf ( Enter string No. l:n);gets(si);printf ( Enter string No. 2:n);scanf ( s, &s2);/*$ERROR1*$/for(i=O;sli= O' ;i+);/*$ERROR2$*/wh 订 e(sli+=s2j)匸'0');/*$ERROR3

4、$*/printf ( n New string:%sn z/, si);题目答案$1$:scanf ( s, s2); $2$:for(i=0;sli!二' 0'i+); $2$:for(i=0;sli匸 NULL;i+);$3$:wh 订 e(sli+ 二 s2j+) ! 二' 0');改错题 3 注意事项1. 标有$ERROR?的程序行有错,请直接在该行修改2. 请不要删除$ERROR?错误标志3. 请不要将错误行分成多行4. 请不要修改任何注释5. 不要自己运行 Windows下的MSDOS式进入TC进行编程等,其结果不能保证正确回收,导致评分错误题目:

5、 求数组的平均值。 #include<stdio. h> int mean(int x ,int num)/*$ERROR1$*/int i; float avg;for (avg=O, i=O;i<num;i+)avg+=xi;avg/=num;return ;/*$ERROR2$*/main ()int i, a15;for(i=O;i<15;i+)ai=i+l;printf (,zaverage : %6. 2fn /z, mean (a 15) ;/*$ERROR3$*/ 题目答案 $1$:float mean(int x ,int num) $2$: Tetu

6、rn avg;$2$: Teturn(avg);%6. 2fn , mean(a, 15);$3$:printf("average 改错题 4 注意事项1. 标有$ERROR?的程序行有错,请直接在该行修改2. 请不要删除$ERROR?错误标志3. 请不要将错误行分成多行4. 请不要修改任何注释5. 不要自己运行 Windows下的MSDO方式进入TC进行编程等,其结果不能保证正确回收,导致评分错误题目:让计算机出 10道 100以内的整数加法题,让学生回答。回答正确时,计算机提示正确! 错误时提示错误! ,并统计做对的题数。程序如下:#include<stdlib. h>

7、;#include<stdio. h>main ()int a, b, c, i, n二 0;randomize ();for(i=0;i<10;i+) a=random(100);b 二 random(100);printf("%4dn , a);printf( c%3dn, ', b);printf ("- n );printf( ?) ;scanf ( d,c);/*$ERROR1$*/if(c=a+b)/*$ERR0R2$*/printf (,zright! nz,) ; n=n+l; /*$ERR0R3$*/elseprintf ( wr

8、o ng!n z, );printf (RightTotal=%d! ,z, n); 题目答案$1$: scanf ( d, &c);$2$: if (c=a+b)$2$: if (a+b=c)$2$:if(c=b+a)$2$: if (b+a=c)$3$:printf("right!n丫; n 二 n+1;$3$: n=n+l;printf("right!n); 改错题 5注意事项1. 标有$ERROR?的程序行有错,请直接在该行修改2. 请不要删除$ERROR?错误标志3. 请不要将错误行分成多行4. 请不要修改任何注释5. 不要自己运行 Windows下的MS

9、DO方式进入TC进行编程等,其结果不能保证正确回收,导致评分错误题目下面程序的功能是输岀字符串。main ()char *a 二"English", "Chinese", "AmericarT, "French" char *p ;/*$ERROR1$*/int j 二 0;P=a;for (;jv=4;j+)/*$ERR0R2$*/printf ( 嗨n , *p ) ;/*$ERR0R3$*/题目答案$l$:char *p;$2$:for(;j 4;j+ )$2$:for(;j<=3;j+)$2$:for(;j &

10、lt; 4;j 二 j+1 )$2$:for(;j<=3;j=j+l)$3$:printf ( sn ,*p+);$3$:printf ( sn", *p ) ;p+;改错题6注意事项1. 标有$ERR0R?的程序行有错,请直接在该行修改2. 请不要删除$ERR0R?错误标志3. 请不要将错误行分成多行4. 请不要修改任何注释5. 不要自己运行 Windows下的MSDO方式进入TC进行编程等,其结果不能保证正确回收,导致评分错误题目下面的程序先打印所给的前三个字符串,然后再打印前三个字符串的首字符。请找岀程序中的错误。main ()char alpha5 =,'a,&

11、quot;be", "def ,1, 23 , *p;/*$ERROR1$*/int i;p 二 alpha;for (i=0;i<3;i+, p+)printf ( s, *p ); printf ( t" ) ;P 二 P-3;for (i 二 0;i<3;i+, p+)printf ( ct , *p ); printf ( n) ;题目答案$l$:char *alpha,5 二 a,"be",/*$ERROR2$*/*$ERR0R3$*/ def , 23 ,* p;$2$:printf ( s, *p)$3$:printf

12、 ("%ct , *p )改错题 7注意事项1. 标有$ERROR?的程序行有错,请直接在该行修改2. 请不要删除$ERR0R?错误标志3. 请不要将错误行分成多行4. 请不要修改任何注释5. 不要自己运行 Windows下的 MSDO方式进入TC进行编程等,其结果不能保证正确回收,导 致评分错误以下程序分别在a 数组和 b 数组中放入an+1 和 bn+1 个由小到大的有序数,程序把两个数组中的数按由小到大的顺序归并到c数组中#include<stdio. h>main ()int a10 = l, 2, 5, 8, 9, 10, an=5; int b10 = l,

13、3, 4, 8, 12, 18, bn=5;int i, j, k, c20, max=9999;aan=bbn=max;i 二 j 二 k 二 0;while(ai!=max)&&(bj!=max)if(ai<bj) ck=ai;k+;i+; else ck 二 bk;k+;j+;for(i=0;i<k;i+)printf ( 4d, ci);/*$ERROR1$*/*$ERR0R2$*/*$ERR0R3$*/printf ( n ); 题目答案 $1$:aan+l=bbn+1max; $1$:bbn+1=aan+1=max; $l$:a6=bbn+l=max;$

14、1$:b6=aan+l=max; $l$:aan+l=b6=max; $1$:bbn+l=a6=max; $l$:al+an=bl+bnmax;$1$:bl+bn=al+an 二 max; $l$:al+an 二 bbn+1=max; $1$:b1+bn=aan+1=max; $l$:aan+1b1+bn=max; $1$:bbn+l=al+an 二 max; $l$:a6=b1+bn 二 max; $1$:b6=al+an=max;$l$:al+an 二 b6 二 max; $1$:bl+bn=a6=max; $1$:a6=b6=max: $l$:b6=a6=max;$2$:wh 订 e(o

15、i!=max)|(bj!=max) $2$:wh 订 e(bj!=max)|(ai!=max) $2$:wh 订 e(max! 二 ai)|(bj!=max) $2$:wh 订 e(max! 二 bj)|(ai!=max) $2$:wh 订 e(oi!=max)|(max!=bj) $2$:wh 订 e(bj!=max)|(max!=ai) $2$:wh 订 e(max! 二 ai)|(max!=bj) $2$:wh 订 e(max! 二 bj)|(max!=ai) $3$:elseck=bj;k+;j+; $3$:elseck=bj;j+;k+; $3$:elseck=bj;k=K+l;j+

16、; $3$:elseck=bj;k=K+l;j 二 j+1; $3$:elseck=bj;j二 j+1;k+; $3$:elseck=bj;j=j+l;k=k+l;改错题 8 注意事项1. 标有$ERROR?的程序行有错,请直接在该行修改2. 请不要删除$ERROR?错误标志3. 请不要将错误行分成多行4. 请不要修改任何注释5. 不要自己运行 Windows下的 MSDO方式进入TC进行编程等,其结果不能保证正确回收,导致评分错误o #include<stdio. h>题目: 以下程序是将输入的十进制数转换为二进制数输出 main () int y, i 二 O, j, a16;

17、scanf ( d, &y);doai=y%2;/*$ERROR1$*/y/=2 ;while(y>=O);/*$ERROR2$*/for (j 二 i ; j> 二 O; j )/*$ERROR3$*/printf ( d, aj);printf ( n);题目答案$l$:ai+=y%2;$l$:ai=y%2;i+;$l$:ai=y%2;+i;$l$:ai=y%2;i 二 i+1;$2$:while(y>=l)$2$:while(y)$2$:while(l<=y)$2$:wh 订 e(y! 二 O)$2$:while(O!=y)$3$: for(j=i-l;

18、j>=O; j$3$: for(j=i-l;O<=j; j$3$: for(j=i-l;-l<j; j$3$: for(j=i-l;j>=O;j=j-l)$3$: for(j=i-l;O<=j;j=j-l)$3$: for(j=i-l;-l<j;j=j-l) 改错题 9 注意事项1. 标有$ERROR?的程序行有错,请直接在该行修改2. 请不要删除$ERROR?错误标志3. 请不要将错误行分成多行4. 请不要修改任何注释5. 不要自己运行 Windows下的MSDO方式LEVEL) o进入TC进行编程等,其结果不能保证正确回收,导致评分错误以下程序判断输入的

19、字符串是否“回文 "(即顺读和倒读都一样,例如: #include<stdio. h>#include<string. h> main ()char s 81;int i, j, n; gets(s);n=strlen(s);i 二 0;j=n;/*$ERROR1$*/whdle(si='') i+;while(sj=- *) j ; while(i<j| si=sj) /*$ERR0R2$*/i+ ;j ;if (i>j) printf( Non);/*$ERR0R3$*/else printf( Yesn ) ; 题目答案$1$

20、:j=n-l;$2$:while(i<j) && (si=sj)$2$:while( (si=sj)&&(ij)$2$:while(i<j) && (sj=si)$2$:while( (sj=si)&&(ij)$2$:while(j>i) && (si=sj)$2$:while( (si=sj)&&(j>i)$2$:while(j>i) && (sj=si)$2$:while( (sj=si)&&(j>i)$3$:if(i<j

21、) printf(Non );$3$:if(j>i) printf(Non ); 改错题 10注意事项1. 标有$ERR0R?的程序行有错,请直接在该行修改2. 请不要删除$ERR0R?错误标志3. 请不要将错误行分成多行4. 请不要修改任何注释5. 不要自己运行 Windows下的MSDOS式进入TC进行编程等,其结果不能保证正确回收,导致评分错误题目:随机输入 10 个数,选出其中的最小数。程序如下:main ()int i, min, a10;printf( input 10 number:n ) ;for (i 二 0;i<=10;i+) /*$ERROR1$*/ scan

22、f( d, ai); /*$ERROR2$*/ min=a0;for(i=l;i<10;i+)if (ai<a0) /*$ERR0R3$*/ min=ai;printf ( mirmunF%dn", min);题目答案$1$: for(i=0;i<10;i+)$1$: for(i=0;i 二 9;i+)$2$: scanf ( ,z %d,z,&ai);$3$:if (ai<min)$3$:if (min>ai) 改错题 11 注意事项1. 标有$ERROR?的程序行有错,请直接在该行修改2. 请不要删除$ERR0R?错误标志3. 请不要将错误行

23、分成多行4. 请不要修改任何注释5. 不要自己运行 Windows下的MSDOS式进入TC进行编程等,其结果不能保证正确回收,导致评分错误题目:main ()不用 strcat 函数,将键盘输入的两个字符串连接起来形成一个新串char si5O, s22O; int i, j=O;printf("Enter string No. l:n gets(sl);printf("Enter string No. 2:n scanf ( s, &s2); for(i=O;sli= O , ;i+);wh 订 e(sli+=s2j)printf ( 题目答案 $1$:scanf

24、 ( s$2$:for(i=O;sli!匸 ' O') ;n New string:%sn $2$:for(i=O;sli!=NULL;i+);$3$:wh 订 e(sli+ 二, s2); O,;i+);s2j+) !););/*$ERROR1*$/*$ERROR2$*/ /*$ERROR3$*/ , si);二' O');改错题 12注意事项1. 标有$ERROR?的程序行有错,请直接在该行修改2. 请不要删除$ERROR?错误标志3. 请不要将错误行分成多行4. 请不要修改任何注释5. 不要自己运行 Windows下的MSDO方式进入TC进行编程等,其结果

25、不能保证正确回收,导致评分错误题目: 求数组的平均值。#include<stdio. h>int mean(int x ,int num) /*$ERROR1$*/ int i; float avg;for (avg=0, i=0;i<num;i+)avg+=xi; avg/=num;return ;/*$ERR0R2$*/ main ()int i, a15;for(i=0;i<15;i+) ai=i+l;printf (z, average : %6. 2fn ,z, mean(a15) ;/*$ERR0R3$*/ 题目答案$1$:float mean(int x

26、,int num)$2$: return avg;$2$: return(avg);$3$:printf("average : %6. 2fn , mean(a, 15); 改错题 13 注意事项1. 标有$ERROR?的程序行有错,请直接在该行修改2. 请不要删除$ERROR?错误标志3. 请不要将错误行分成多行4. 请不要修改任何注释5. 不要自己运行 Windows下的 MSDO方式进入TC进行编程等,其结果不能保证正确回收,导致评分错误题目:让计算机出 10道100以内的;数加法题,让学生回答。回答正确时,计算机提示正确!,错 误时提示错误! ,并统计做对的题数。程序如下:#

27、include<stdlib. h> #include<stdio. h>main ()int a, b, c, i, n0;randomize();for(i=0;i<10;i+) a 二 random(100);b=random(100);printf( 4dn ,a);printf( c%3dn ' , b);printfn );printf(?);scanf ( d, c);/*$ERROR1$*/if(c=a+b)/*$ERR0R2$*/printf ("right!n);n+1; /*$ERR0R3$*/elseprintf ( wr

28、ong!n z, );printf (z, RightTotal=%d! ,z, n);题目答案$l$:scanf ( d, &c);$2$:if(c=a+b)$2$:if(a+b=c)$2$:if(c=b+a) $2$:if(b+a=c)$3$: printf ("right!n );n=n+l;$3$: n=n+l;printf("right!n ); 改错题 14注意事项1. 标有$ERROR?的程序行有错,请直接在该行修改2. 请不要删除$ERROR?错误标志3. 请不要将错误行分成多行4. 请不要修改任何注释5. 不要自己运行 Windows下的 MSDO

29、方式致评分错误/*$ERROR1$*/进入TC进行编程等,其结果不能保证正确回收,导题目: 下面程序的功能是输出字符串。 main()char *a = "English", "Chinese", "American", "French" char *p ; int j=0;P=a;for(:j<=4;j+)/*$ERROR2$*/printf("%sn", *p ):/*$ERROR3$*/ 题目答案$1$:char *p;$2$:for(;j 4;j+)$2$:for(;j =3;j+

30、)$2$:for(;j 4;j=j+l)$2$:for(;j =3;j=j+l) $3$:printf("%sn", *p+);$3$: printf("%sn", *p);p+;改错题 15注意事项1. 标有$ERROR?的程序行有错,请直接在该行修改2. 请不要删除$ERROR?错误标志3. 请不要将错误行分成多行4. 请不要修改任何注释5. 不要自己运彳亍 Windows下的 MSDO方式进入TC进行编程等,其结果不能保证正确回收,导致评分错误题目:下面的程序先打印所给的前三个字符串,然后再打印前三个字符串的首字符。请找出程序中的错误。main (

31、)char alpha5 = ,a,/, "be", "def,1, 23,*p;/*$ERROR1$*/int i;p 二 alpha;for ( i 二0;i<3;i+, p+)printf( s, *p );/*$ERR0R2$*/printf (P=p-3;for ( i 二0;i<3;i+, p+)printf( ct , *p );/*$ERR0R3$*/printf (n) ;题目答案$l$:char *alpha5二 "be", def ,23",*p;$2$:printf( s, *p);$3$:prin

32、tf( %ct , *p );改错题 16注意事项1. 标有$ERROR?的程序行有错,请直接在该行修改2. 请不要删除$ERR0R?错误标志3. 请不要将错误行分成多行4. 请不要修改任何注释5.不要自己运行 Windows下的MSDO方式进入TC进行编程等,其结果不能保证正确回收,导致评分错误以下程序分别在a数组和b数组中放入an+1和bn+1个由小到大的有序数,程序把两个数组中的数按由小到大的顺序归并到 c 数组中#include<stdio. h>main ()int a10 = l, 2, 5, & 9, 10, an int b10 = l, 3, 4, &am

33、p; 12, 18, bn int i, j, k, c20, max=9999; aan 二 bbn=max;i=j=k=O;wh订 e(ai!=max)&&(bj!=max) if(ai<bj) ck=ai;k+;i+; else ck=bk;k+; j卄汀5;5;/*$ERROR1$*/*$ERR0R2$*/*$ERR0R3$*/for (i=0;i<k;i+) printf(%4d", ci);printf ( n) ;题目答案 $l$:aan+l=bbn+1=max; $1$:bbn+1=aan+1=max; $l$:a6=bbn+1二 max;

34、$1$:b6=aan+l=max; $l$:aan+1 二 b6 二 max; $1$:bbn+1 二 a6 二 max; $l$:al+an 二 b1+bn=max; $l$:bl+bn=al+an 二 max; $l$:al+an 二 bbn+1=max; $l$:bl+bn=aan+1 二 max; $l$:aan+1 二 b1+bn=max; $1$:bbn+l=al+an 二 max; $l$:a6=b1+bn 二 max;$1$:b6=al+an=max; $l$:al+an二 b6 二 max; $1$:bl+bn=a6=max; $1$:a6=b6=max:$1$:b6=a6=

35、max:$2$:wh 订 e(oi!=max)|(bj!=max) $2$:wh订 e(bj!=max)|(ai!=max) $2$:wh订 e(max!二 ai)|(bj!=max) $2$:wh订 e(max! 二 bj)|(ai!=max) $2$:wh订e(ai!=max)|(max!=bj) $2$:wh订 e(bj!=max)|(max!=ai) $2$:wh订 e(max! 二ai)|(max!=bj) $2$:wh订 e(max! 二 bj)|(max!=ai) $3$:elseck=bj;k+;j+;$3$:elseck=bj;j+;k+; $3$:elseck=bj;k=K

36、+l;j+; $3$:elseck二 bj;k 二 K+l;j 二j+1 ; $3$:elseck=bj;j 二 j+1;k+; $3$:elseck 二 bj;j 二 j+1;k 二 k+l; 改错题 17 注 意事项1. 标有$ERROR?的程序行有错,请直接在该行修改2. 请不要删除$ERROR?错误标志3. 请不要将错误行分成多行4. 请不要修改任何注释5. 不要自己运行 Windows下的MSDO方式进入TC进行编程等,其结果不能保证正确回收,导致评分错误题目:doai=y%2;/*$ERROR1$*/y/=2;wh 订 e(y>=0);/*$ERR0R2$*/for (j 二

37、 i ; j> 二 0; j ) /*$ERR0R3$*/printf ( d, aj);printf ( n );题目答案 $l$:ai+=y%2; $l$:ai=y%2;i+; $l$:ai=y%2;+i;$l$:ai=y%2;i 二 i+1;$2$:while (y>=l)$2$:while(y)$2$:while(l<=y)$2$:while(y!=0)$2$:while(0!=y)$3$: for(j=i-l; j>=0; j)$3$: for(j=i-l;0<=j; j)$3$: for(j=i-l;-l<j; j)$3$: for(j=i-l;

38、j>=0;j=j-l)$3$: for(j=i-l;0<=j;j=j-l)$3$: for(j 二 i-l;T j;j 二 j-1) 改错题 18 注意事项1. 标有$ERROR?的程序行有错,请直接在该行修改2. 请不要删除$ERROR?错误标志3. 请不要将错误行分成多行4. 请不要修改任何注释5. 不要自己运行 Windows下的MSDOS式进入TC进行编程等,其结果不能保证正确回收,导致评分错误以下程序判断输入的字符串是否“回文#include<stdio. h>#include<string h>即顺读和倒读都一样,例如:LEVEL) omain

39、()char s 81; int i, j, n; gets(s); n=st:rlen(s);i 二 0;/*$ERROR1$*/*$ERR0R2$*/j 二 n ;while(si= = ,') i+;while(sj=-J) j ; while(i<j| si=sj)i+ ;j ; if (i>j) printf( Non ) ;/*$ERR0R3$*/else printf ( Yesn ) ;题目答案$1$:j=n-l;$2$:while(i<j) && (si=sj)$2$:while( (si=sj)&&(i j)$2$:

40、while(i<j) && (sj=si)$2$:while( (sj=si)&&(i j)$2$:while(j>i) && (si=sj)$2$:while( (si=sj)&&(j>i)$2$:while(j>i) && (sj=si)$2$:while( (sj=si)&&(j>i)$3$:if(i<j) printf( Non);$3$:if(j>i) printf( NorT);填空题 1注意事项1. 请删除标有$BLANK?$£程序行

41、上的下划线,将正确的答案填在原下划线处2. 请不要删除$BLANK?$g误标志3. 请不要将需要填空的行分成多行4. 请不要修改任何注释5. 不要自己运行 Windows下的MSDO方式进入 TC 进行编程等 , 其结果不能保证正确回收,导 致评分错误 题目:计算学生的平均成绩和不及格的人数。 struet stu int num;char *name;char sex;float score;; main ()_ student5 = 101, "Li ping, M', 45,/*$BLANK1$*/102, ,zZhang ping",' M'

42、, 62. 5,103, "He fang , ' F',92 ? 5,104, , zCheng ling , ' F', 87,105, Wang filing",' M', 58,;int i,c=0;float ave, s=0;for(i=0;i<5;i+)s+ 二 _ ; /*$BLANK2$*/if( _ <60) c+; /*$BLANK3$*/ave=s/5;printf ( Qverage=%fncount 二 dn ,ave, c);题目答案$1$:struet stu student5 二1

43、01, Li ping",' M', 45,$2$:s+=studenti.score;$3$:if(studenti. score<60) c+;填空题 2注意事项1. 请删除标有$BLANK?$£程序行上的下划线,将正确的答案填在原下划线处2. 请不要删除$BLANK?$t误标志3. 请不要将需要填空的行分成多行4. 请不要修改任何注释5. 不要自己运行 Windows下的MSDOS式进入 TC 进行编程等 , 其结果不能保证正确回收,导致评分错误题目:1. 完善程序,使 5X5 数组的对角线元素为 1, 其它为 O, 即输出 5X5 的对角矩阵。

44、#include<stdio. h>main ()int j, k, a5 5;for(j=O;j<5;j+)for(k=O;k<5;k+)if( _ )/*$BLANK1$*/;/*$BLANK2$*/else;/*$BLANK3$*/ for (j=O;j<5;j+)(for(k=0;k<5;k+) printf("%d ”, ajk);printf("n");题目答案$1$: if(k=j)$1$: if(j=k)$2$:ajk=l ;$3$:ajk=0;填空题 3注意事项1. 请删除标有$BLANK?$£程序行

45、上的下划线,将正确的答案填在原下划线处2. 请不要删除$BLANK?错误标志3. 请不要将需要填空的行分成多彳丁4. 请不要修改任何注释5. 不要自己运行 Windows下的MSDO方式进入 TC 进行编程等 , 其结果不能保证正确回收,导 致评分错误题目:2、编制函数 acopy (), 将数组 a 的内容复制 b 数组之中 (以 -999 作结束标志 ),程序未完成 , 请填 空。#include<stdio. h>void acopy( )/*$BLANK1$*/int i 二 0;while(ai!二 - 999)_;/*$BLANK2$*/i+;bi=a10;main (

46、)static int a = l, 3, 5, 7, 9, 2, 4, 6, 8, 10, -999;int b80, i=0;/*$BLANK3$*/while(bi!=-999)printf ( d, b i+);题目答案$1$: void acopy(int a, int b)$2$:bi=ai;$3$:acopy(a, b);填空题 4注意事项1. 请删除标有$BLANK?$£程序行上的下划线,将正确的答案填在原下划线处2. 请不要删除$BLANK?$g误标志3. 请不要将需要填空的行分成多行4. 请不要修改任何注释5. 不要自己运行 Windows下的MSDO方式进入 T

47、C 进行编程等 , 其结果不能保证正确回收,导 致评分错误题目:以下程序用函数的递归调用打印n的阶乘值,请填空。long fac(int n)long f;if(n<0) printf( n0, data error");else if(n=0|n=l) f=l;else f 二;/*$BLANK1$*/;/*$BLANK2$*/main ()int n;long y;?,printf (input a integer number:); scanf ( %d, &n);y= _ ;/*$BLANK3$*/printf (z/%d!=%ld,z, n, y);题目答案$

48、1$:else f= n*fac (nl);$1$:else f= fac(nl)*n;$2$:return(f);$2$:return f;$3$:y=fac(n);填空题 5注意事项1. 请删除标有$BLANK?$程序彳丁上的下划线,将正确的答案填在原下划线处2. 请不要删除$BLANK?$g误标志3. 请不要将需要填空的行分成多行4. 请不要修改任何注释5. 不要自己运行 Windows下的MSDO方式进入 TC 进行编程等 , 其结果不能保证正确回收,导 致评分错误题目:程序有一个3X4的矩阵,要求编程以求岀其中值最大的那个元素,以及它所在的行号和列号。 如下:main()int i,

49、 j, row, col, max:static int a3 4 = 3, 5, 1, 8, 6, 4, 11, 7, 9,3,10,2;max=_; /*$BLANK1$*/ for(i=0;i<3;i+)for(j=0;j 4;j+)if (_) /*$BLANK2$*/ max=_; /*$BLANK3$*/row=i;col=j; printf("max=%d, row=%d, col=%dn", max, row, col);题目答案 $1$:max=a00;$2$:if(aij max)$2$:if(max aij)$3$:max=ai j;填空题 6

50、注意事项1. 请删除标有$BLANK?$£程序行上的下划线,将正确的答案填在原下划线处2. 请不要删除$BLANK?错误标志3. 请不要将需要填空的行分成多行4. 请不要修改任何注释5. 不要自己运彳亍Windows下的MSDO方式进入 TC 进行编程等 , 其结果不能保证正确回收,导 致评分错误题目:删除一个字符串中的某个特定字符main ()char a 二 this is a book"char c- s'int i,j=0;for (i=0;ai !=; i+)if (ai !=)( 设本例中要删除的特定字符为S) 。 程序如下:aj+=ai;二 '

51、 0 J ;printf ( %s ,a);题目答案$l$:for(i=0;ai !二 ' 0';$l$:for(i=0;ai匸 NULLi+)$2$: if (ai !=c)5$3$:aj- 0,;填空题 7/*$BLANK1$*/*$BLANK2$*/*$BLANK3$*/注意事项1. 请删除标有$BLANK?$£程序行上的下划线,将正确的答案填在原下划线处2. 请不要删除$BLANK?错误标志3. 请不要将需要填空的行分成多行4. 请不要修改任何注释5. 不要自己运行 Windows下的MSDOS式进入 TC 进行编程等 , 其结果不能保证正确回收,导 致评分错

52、误题目:6. 用冒泡法对 int all;int i, j, t;prirrtf (Enter 1O numbers: n for(i=l;i<ll;i+)scanf ( d, _); prirrtf ( n); for(j=l;j<=9;j+)for(i=l;i<=_;i+)if (_)t 二 ai;ai=ai+l;ai+l printf("The sorted numbers:n for(i=l;i<ll;i+) printf("%d ", ai);10个数排序(从小到大)main ()z,);/*$BLANK1$*/*$BLANK2$*/*$BLANK3$*

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论