}
c[n]='\\0';puts(c); }
8. 下列程序的输出结果是_________________。 file.txt文件存放数据为A1B2C3 #include
{FILE *fp;int n,s=0;char ch;
if((fp=fopen(\
{printf(\不能打开!\\n\fscanf(fp,\while(ch!=EOF) {s+=ch+n;
fscanf(fp,\}
fclose(fp);
printf(\}
四、程序填空题(每空2分,共40分)
3. 以下程序不用第三个变量,也不用位运算符,实现将两个数进行对调的操作。
# include
scanf(“%d%d”,&a,&b); printf(\ a= (1) ; b= (2) ; a= (3) ; printf(\ }
4. 输入一个十进制整数,将它对应的二进数的各位反序,形成新的十进制数输出。
如: 13?1101?1011?11 如: 10?1010?0101?5 # include
printf(“输入一个十进制数:”); scanf(“%d”,&x); y=0;
while( (4) ){ t=x%2;
(5) ; x=x/2;
}
printf(“新的十进制整数为%d\\n”,y); }
3. a是一个6×6的矩阵,本程序输出以下结果:
1 2 3 4 5 6
1 1 2 3 4 5 1 2 1 2 3 4 1 3 3 1 2 3 1 4 6 4 1 2 1 5 10 10 5 1 # include
{for(j=0;j<6;j++)
{if( (6) ) a[i][j]=1;
else if(i printf(“\\n”); } } 4. 以下程序分别在a数组和b数组中放入an+1和bn+1个由小到大的有序数,程序把两个数组中的数按由小到大的顺序归并在c数组中 # include {int a[10]={1,2,5,8,9,10},an=5; Int b[10]={0,3,4,6,7,12},bn=5; int i,j,k,c[20],max=9999; i=j=k=0; while((a[i]!=max)||(b[j]!=max)) if(a[i] 5. 完成以下程序:截取字符s中从第m个位置开始的n个字符,返回所截字符串的首地址。 static char sub[20]; void main() { static char s[]=\ char *cut(char *ss,int m,int n),*p; p=cut(s,3,4); printf(“%s\\n”,p); } char *cut(char *ss,int m,int n) {int i; for(i=0;i sub[i]= (13) ; sub[i]='\\0'; return (14) ; } 6. 下面程序是用来从键盘输入十个整数,然后求出其中的最小值。 void lookup(int *t,int *a,int n) {int k; *a=t[0]; for(k=1;k if (15) ) *a=t[k]; } void main() {int table[10]; int k,min,*p=&table[k]); for(k=0;i<10;k++) scanf(“%d”,&table[k]); lookup( (16) , (17) ,10); printf(“min=%d\\n”,min); 7. 下面程序的功能是统计文件”file.txt”中的字符。 #include {FILE *fp;int count=0; if((fp=fopen(\ {printf(\不能打开!\\n\while( (18) ) {fgetc(fp); (19) ; }; printf(\ (20) ; } 2006试卷答案 一.单项选择题(每题1分,共10分) 1.D 2.D 3.D 4.D 5.B 6.B 7.A 8.D 9.D 10.D 二、填空题(每题2分,共20分) 17. ch>=?0?&&ch<=?9? 18. -12 19. 1 20. -17 21. 8 22. 3 3 23. 2 24. w,one 9. 153 10 typedef int pt[100]; 三、程序阅读题(1-6题4分,7-8题3分,共30分) 4. a=2,b=1 5. 8 6. 1 4 3 4 5 4. abcde abcd abc ab a 5. you&me 6. 2 1 2 1 1 7. 0 6 11 12345678 8. 204 四、程序(段)填空题(每空2分,共40分) (1) ?a+b 或 ?a-b (2) ?a-b 或 ?a+b (3) a-b; (5) y=y*2+t (6) i==j||j==0 (7) a[i][j-1]+1 (8) a[i-1][j-1]+a[i-1][j] (9) a[i] (10) i++ (11) b[j] (12) j++ (13) *(ss+m+i-1) (14) sub (15) *a>t[k] (16) table (17) p或&min (18) !feof(fp) (19) count++ (20) fclose(fp) (4) x!=0