2008 年的复试上机题目:
1.素数
输入一个整数,要求输出所有从 1 到这个整数之间个位为 1 的素数,如果没有则输出-1(30
分)
2.旋转矩阵
任意输入两个 9 阶以下矩阵,要求判断第二个是否是第一个的旋转矩阵,如果是,输出旋转
角度(0、90、180、270),如果不是,输出-1。
要求先输入矩阵阶数,然后输入两个矩阵,每行两个数之间可以用任意个空格分隔。行之间
用回车分隔,两个矩阵间用任意的回车分隔。(60 分)
3.字符串匹配
从 string.in 中读入数据,然后用户输入一个短字符串。要求查找 string.in 中和短字符串的所
有匹配,输出行号、匹配字符串到 string.out 文件中。匹配时不区分大小写,并且可以有一
个用中括号表示的模式匹配。如“aa[123]bb”,就是说 aa1bb、aa2bb、aa3bb 都算匹配。(60
分)
2009 年的复试上机题目:
1 给出立方根的逼近迭代方程 y(n+1) = y(n)*2/3 + x/(3*y(n)*y(n)),其中 y0=x.求给定的 x 经过
n 次迭代后立方根的值
要求:double 精度,保留小数点后面六位。(送分题)
输入:x n
输出:迭代 n 次后的立方根
sample
input: 3000000 28
output:144.224957
2 数组排序
输入一个数组的值,求出各个值从小到大排序后的次序。
输入:输入的第一个数为数组的长度,后面的数为数组中的值,以空格分割
输出:各输入的值按从小到大排列的次序。
sample
input:
4
-3 75 12 -3
output:
1 3 2 1
3 字符串的查找删除
给定文件 filein.txt 按要求输出 fileout.txt。
输入: 无空格的字符串
输出: 将 filein.txt 删除输入的字符串(不区分大小写),输出至 fileout.txt
sample
输入:in
输出:将 filein.txt 中的 In、IN、iN、in 删除,每行中的空格全部提前至行首,输出至 fileout.txt
filein.txt 中的值为:
#include
int main()
{
printf(" Hi ");
}
输出的 fileout.txt 为
#clude
tma()
{
prtf("Hi");
}
老师跟我说 09 年没有满分的 很多分数是个位数的 满分是 50 分
欢迎来到北航考研网(http://www.BUAAkaoyan.com)
#include
#define ERROR -1
#define NUM_MIN 0x80000000
int copt[100];
int main()
{
int i,j,n;
int a[100];
int max;
int temp;
scanf("%d",&n);
for(i=0;ia[i])
copt[j]++;
else
{
if(a[j]>max)
{
max=a[j];
temp=copt[j];
}
}
}
if(max==a[i])
{
copt[i]=temp;
for(j=0;ja[i])
copt[j]--;
copt[i]=temp+1;
}
else
{
}
}
for(i=0;i