# include char *stradd(char *s,char *t,int f)
{ char *p;
if(f==0)
{ p=s;
s+=strlen(s);
① ;
}
else if(f==1)
{ p=t;
while(*t++);
t--;
while(*s)
*t++=*s++;
② ;
}
③ ;
return p;
}
void main()
{ char a[100],b[100],*str;
int n;
printf("Input string a and b:\n");
gets(a);
gets(b);
printf("Input flag:");
scanf("%d",flag);
str=stradd(a,b,n);
printf("Output: %s\n",str);
}
第二十次等级考试
二级(C与C++语言) 笔 试 试 卷
(参考答案)
第一部分 软件技术基础
一、是非判断题(正确选填A,错误选填B)(每小题1分,共10分)
1~10:A、B、A、B、B、A、B、A、B、B
二、单项选择题:(每小题1分,共5分)
1~5:D、B、C、A、C
第二部分 C与C++语言程序设计
一、单项选择题 (每小题1分,共10分)
1、A2、B3、C4、C5、A
6、D7、A8、C9、C10、D
二、读程序题(每个选择3分,共45分)
1、(1)B (2)D 2、(1)A (2)C3、(1)C (2)A (3)D
4、(1)A (2)D5、 D 6、(1)C (2)B
7、(1)A (2)B 8、 B
三、程序填空题(每空2分,共30分)
1、① num=0 ② i < len ③ str++
2、① symm(m)&&symm(m*m)&&symm(m*m*m)
② i!=0 ③ m=m*10+i%10
3、① head ② p->data ③ p->next
4、① (fp=fopen("data.txt", "r"))==NULL
② ch=fgetc(fp) ③ ch-A
5、① while(*s++=*t++ ) ② *t=\0 ③ else p=NULL