C语言机试试题大全(5篇)

时间:2019-05-14 15:19:07下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《C语言机试试题大全》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《C语言机试试题大全》。

第一篇:C语言机试试题大全

1、程序填空题

给定的程序的功能是调用fun函数建立班级通讯录。通讯录中记录 每位学生的编号、姓名和电话号码班级的人数和学生的信息从键盘

读入,每个人的信息作为一个数据块写到名为myfile5.dat的二进制中。填空:(1)STYPE

(2)FILE

(3)fp 改错:(1)for(i=0;i<=sl;i++)(2)t[2*sl]=''或t[sl+sl]='' 编程:

*c=(a/10)*1000+(b/10)*100+(a%10)*10+(b%10);

2、程序填空题

给定程序的功能是:从键盘输入若干文本(每行不超过80个字符),写到文件myfile4.txt中,用-1作为字符串输出输入的标志。然后将文件的内容读出显示在屏幕上。文件的读写分别由自定义函数ReadText和Writetext实现。填空:(1)*fw(2)str(3)str 改错:(1)void fun(long s,long *t)(2)s1=s1*10;编程:int i,j=0,min=a[0].s;for(i=0;i

3、程序填空题

给定程序中,函数fun的功能是:讲自然数1~10以及它们的平方根写到名为myfile3.txt的文本中,然后再按顺序读出显示在屏幕上。填空:(1)fp(2)fclose(fp)(3)myfile3.txt 改错:(1)for(i=j+1;i

4、程序填空题

给定程序中,函数fun的功能是:找出形参s所指字符串出现频率最高的字母(不区分大小写),并统计出其出现的次数,例如,形参s所指的字符串为:abcAbsmaxiess,程序执行后的输出结果为: letter 'a':3 times letter 's':3 times 填空:(1)“r”(2)fs

(3)ft 改错:(1)

if(d%2==0)

(2)s/=10;编程:

int i = 0, j = 0;

t[j++] = s[i];

5、程序填空题 while(s[i]){

if(i % 2 == 0 && s[i] % 2 == 0)

i++;} t[j] = 0;给定程序中已经建立一个带有头结点的单向链表,链表中的各结点数据域中的数据递增有序链接,函数fun的功能是:把形参x的值放入一个新结点并插入到链表中,插入后各结点数据域的值仍保持递增有序。填空:(1)x(2)p

(3)s 改错:(1)long k=1;(2)num/=10;编程:int i;float aver=0.0;for(i=0;i

6、程序填空题

给定程序中已建立一个带有头结点的单向链表,在main函数中将多次调用fun函数,每调用一次fun函数,输出链表尾部节点中的数据,并释放该节点,使链表缩短。填空:(1)next(2)t->data(3)t 改错:(1)void fun(char *a)(2)print(“%c”,*a);编程:int i;char *p=s,*q=t;int n=0,m=0;while(*p)/*计算串s的长度n,其中p为临时指针*/ { n++;p++;} while(*q)/*计算串t的长度m,其中q为临时指针*/ { m++;q++;} if(n>=m)/*比较m和n的值,设置p指向较大的指针*/ p=s;else p=t;return p;

7、程序填空题

给定程序中建立一个带有头结点的单向链表,链表中的各节点按数据域递增有序链接。函数fun的功能是:删除链表中数据域值相同的节点,使之只保留一个。填空:(1)q

(2)next

(3)next 改错:(1)缺分号

(2)p = i;编程:*n=0;int i;for(i=1;i<=m;i++)if(i%7==0||i%11==0)a[*n++]=i;

8、程序填空题

给定的程序中,函数fun的功能是:在带有头结点的单向链表中,查找数据域中值为ch的结点。找到后通过函数值返回该结点在 链表所处的顺序号;如不存在值为ch的结点,函数返回0值。填空:(1)0或NULL

(2)n(3)head,ch 改错:(1)for(i=0,t=0;p[i];i++)(2)c[t]='';编程:

int i;

for(i=1;i

If((ss[i]>='a'&&ss[i]<='z')ss[i]-=32;

9、程序填空题

给定程序中,函数fun的功能是:统计出带有头结点的单向链表中节点的个数,存放在形参n所指的存储单元中。

填空:(1)*n

(2)next

(3)head 改错:(1)a=NULL;

(2)if(*r==*p)编程: int i,j=0;for(i=0;i

10、程序填空题

给定程序中,函数fun的功能是:计算出带有头结点的单向链表中各节点数据域中值之和作为函数值返回。

填空:(1)data(2)next(3)head 改错:(1)while(*r)(2)*a=*r;a++;r++;编程:int i,j=0;for((i=0;i

11、程序填空题

给定程序中,函数fun的功能是:求ss所指字符串数组中长度最短的字符串所在的行下标,作为函数数值返回,并把其串长放在形参n所指变量中。Ss所指字符串数组中共有M个字符串,且串长

(3)k 改错:(1)if(('a'<=tt[i])&&(tt[i]<='z'))

(2)tt[i]-=32;编程:int i,j;int t=0;for(i=2;i

12、程序填空题

给定程序中,函数fun的功能是:将s所指字符串中的所有数字字符移到所有非数字字符之后,并保持数字字符串和非数字字符串原有的先后次序。例如:形参s所指的字符串为:def35adh3kjsdf7。

执行结果为:defadhkjsdf3537 填空:(1)j++

(2)s[i]=t1[i]

(3)j 改错:(1)for(j = i + 1;j < 6;j++)

(2)*(pstr + i)=*(pstr + j);编程: int cnt=0;char *p=ss;while(*p){if(*p==c)cnt++;p++;} return cnt;

13.程序填空题

给定程序中,函数fun的功能是:在形参s所指字符串中的每个数字字符之后插入一个*号。例如,形参s所指的字符串为:def35adh3kjsdf7.执行结果为:def3*5adh3*kjsdf7*。填空:(1)&&(2)0

(3)s[j] 改错(1)for(i=2;i<=m;i++)(2)y+=1.0/(i*i);编程题:int c[3][3];for(i=0,i<3;i++)for(j=0;j<3;j++){c[i][j]=a[j][i];b[i][j]=a[i][j]+c[i][j];}

14、程序填空题

给定的程序中,函数fun的功能是:统计形参s所指字符串中数字字 符出现的次数,并存放在形参t所指的变量中,最后在主函数中 输出,例如,形参s所指的字符串为abcdef35adgh3kjsdf7。输出 结果为:4。填空:(1)s[i]

(2)'9'(3)*t=n; 改错:(1)t=*x;*x=y;(2)return(t);编程:

int i; *n=0;for(i=7;i<1000;i++)

if(((i%7)==0)||((i%11)==0)&&((i%77)!=0)

a[(*n)++]=i;

15、程序填空题

给定的程序中,函数fun的功能是:把形参s所指字符串中下标为奇数的字符右移到下一个奇数的位置,最右边被移出的字符串的字符绕回放到第一个奇数位置,下标为偶数的字符不动(注:字符串的长度大于等于2)

例如:形参s所指字符串为:abcdefgh,执行结果为: ahcbedgf 填空:(1)1

(2)s[k]

(3)c 改错:(1)long s = 0,t = 0;(2)t = t / 10;编程: char *p=tt;int i;for(i=0;i<26;i++)pp[i]=0;while(*p){if(*p>='a' &&p<='z')pp[*p-'a']+=1;p++;}

16、程序填空题

在给定程序中,函数fun的功能是:对形参s所指字符串下标喂奇数的字符按ASCII码大小递增排序,并将排序后下标为奇数的字符取出,存入形参p所指字符数组中形成一个新串。例如,形参s所指的字符串为baawrskjghzlicda,执行后p所指字符数组中的字符串应为:aachjlsw。

填空:(1)t=i

(2)i(3)0 改错:(1)while(fabs(t)>=num)(2)t=s/n;编程: int p,m=0;for(p=0;p

17、程序填空题

给定程序中,函数fun的功能是:在形参s所指字符串中寻找与参数c相同的字符,并在其后插入一个与之相同的字符,若找不到相同的字符则函数不做任何处理。

例如:s所指字符字符串为:baacda,c中得字符为:a,执行后所指字符串为:baaaacdaa。填空:(1)0或''

(2)0(3)c 改错:(1)double sum=0.0;(2)sum/=c;编程:int k;float str=1.0,sum=1.0;for(k=2;k<=n;k++){ sum=sum+k;str=str+1/sum;} return str;

18、程序填空题

给定程序中,函数fun的功能是:N×N矩阵,根据给定的m(m<=N)值,将每行元素中的值均右移m个位置,左边值为0.例如,N=3,m=2,有下列矩阵 1

4

7

程序执行结果为 0

0

0

0

0

0

填空:(1)i++(2)m

(3)m

改错:(1)while((high>=2)&&(n<10))(2)缺分号

编程: float x1=0.0,x0;do { x0=x1;x1=cos(x0);}while(fabs(x0-x1)>0.000001);return x1;

19、程序填空题

给定程序中,函数fun的功能是:将N*N矩阵中元素的值按列右移1个位置,右边被移出矩阵的元素绕回左边。例如,N=3,有下列矩阵 1 2 3 4 5 6 7 8 9 计算结果为 3 1 2 6 4 5 9 7 8 填空:(1)N(2)N-1(3)0 改错:(1)s=s+(n+1.0)/n;

(2)return t;编程:int f0=0,f1=1,f;do {f=f0+f1;f0=f1;f1=f;}while(f

给定程序中,函数fun的功能是:由NxN矩阵,将矩阵的外围元素顺时针旋转。操作顺序是:首先将第一行元素的值存入临时数组r, 然后使第一列成为第一行,最后一行成为第一列,最后一列成为最后一行,临时数组中的元素成为最后一列 列。例如:而N=3,有以下矩阵: 1 4 7 计算结果为 7 8 9 填空:(1)0

(2)j--(3)j 改错:(1)double f(double x)

(2)缺分号 编程:

double s=0.0;int i;for(i=1;i<=m;i++)s=s+log(1.0*i);s=sqrt(s);return s;

21、程序填空题

给定程序中,函数fun功能是:找出100至x(x想<999)之间各位上的数字之和为15的所有整数,然后输出;符合条件的整数个数作为函数值返回。例如,当n值为500时,个各位数字之和为15的整数有

159,168,177,186,195,249,258,267,276,285,294,339,348,357,366,375,384,393,429,438,447,456,465,474,483,492,共有26个。

填空:(1)

0(2)

x(3)

t++

改错:(1)

int i,s1;(2)t[i]=s[s1-1-i];

编程: *c=(b/10)*1000+(a/10)*100+(b%10)*10+a%10;

22、程序填空题

给定的程序中,函数fun的功能是:找出100~999之间(含有100和999)所有整数各位上的数字之和为x(x为以正整数)的整数,然后输出;符合条件的整数个数作为函数值返回。例如:当x值为5时,100~999之间各位上数字之和为5的整数有:104,113,122,131,140,203,212,230,302,311,320,401,410,500.共有15个。当x的值为27时,各位数字之和为27的整数是:999。只有1个。填空:(1)999

(2)t/10(3)x 改错:(1)void fun(long s,long *t)(2)while(s>0)编程:STREC tmp;int i,j;for(i=0;i

23、程序填空题

给定程序中,函数fun的功能是:将形参n中,各位上为偶数的数取出,并按原位从高位到低位的顺序组成一个新的数,并作为函数值返回。

例如,从主函数输入一个整数:27638496,函数返回值为:26845.填空:(1)1

(2)s

(3)i*10 改错:(1)int fun(int n,int xx[][M])

(2)printf(“%d”,xx[i][j]);编程:*c=(a/10)*1000+(b%10)*100+(a%10)*10+(b/10);程序填空题

给定程序中,函数fun的功能是:将形参n中,各位上为偶数的数取出,并按原来从高位到低位相反的顺序组成一个新的数,并作为函数返回.例如,输入一个整数:27638496,函数返回值为:64862.填空:(1)0

(2)10*x

(3)n/10 改错:(1)*t=0;

(2)if(d%2!=0)编程: char *p=p1;while(*p)p++;while(*p2){*p++=*p2++;*p=0;}

25.程序填空(与教材18题对应))给定的程序中,函数fun的功能是:将形参n所指变量中,各位上为 偶数的数去除..剩下的数按原来从高位的顺序组成一个新的数,并 通过形参兆时指针n传回所指变量.例如:输入一个数:27638496,新的数:739.填空(1)10

(2)0

(3)x 改错(1)if(n = = 0)(2)缺分号

编程:

long s=0, t;int i=0,j,n=strlen(p),k,s1;if(p[0]=='-')i++;for(j=i;j<=n-1;j++){t=p[j]-'0';s1=10;for(k=j;k

给定程序中,函数fun的功能是:计算下式前n项的和作为函数值返回。S=(1*3)/(2*2)+(3*5)/(4*4)+(5*7)/(6*6)+„„+(2n-1)(2n+1)/(2n*2n)例如:当形参n的值为10时,函数返回9.612558.填空:(1)0

(2)n

(3)

(t*t)改错:(1)for(i=0;str[i];i++)

(2)for(i=0;str[i];i++)编程:double s;float n,t,pi;t=1;pi=0;n=1.0;s=1.0;while((fabs(s))>=eps){pi+=s;t=n/(2*n+1);s*=t;

n++;} pi=pi*2;

return pi;

27、程序填空题

(与22题对应)

给定程序中,函数fun的功能是:计算下式前n项的和

S=(1*3)/(2*2)-(3*5)/(4*4)+(5*7)/(6*6)-„+(-1)^(n-1)*(2n-1)(2n+1)/(2n*2n)作为函数植返回。

例如,当形参n的值为10时,函数返回:-0.204491 填空:(1)1

(2)2*i

(3)(-1)改错:(1)缺分号

(2)if(m= =k)编程:int i;*max=a[0];*d=0;for(i=0;i

28、程序填空题

给定程序中,函数fun的功能是计算下式

s=3/(2*2)-5/(4*4)+7/(6*6)-„+(-1)^(n-1)(2n+1)/(2n*2n)直到|(2n+1)/(2n*2n)|<10*e(-3)并把计算结果作为函数值返回。

例如:若形参e的值为1e-3,函数的返回值为0.551690。填空:(1)3.0

(2)>

(3)(2*i+1)改错:(1)double fun(int n)

(2)s=s+(double)a/b;编程:

int i,j,max=a[0][0];

for(i=0;i<2;i++)

for(j=0;j

if(max

max=a[i][j];

return max;

29、程序填空题

给定程序中,函数fun的功能是计算下式

s=1/(2*2)+3/(4*4)+5/(6*6)+....(2n-1)/(2n*2n)直到|(2n-1)/(2n*2n)|<=10e-3,并把计算结果作为函数值返回。例如,若形参e的值为1e-3,函数的返回值2.985678.填空:(1)0(2)i++(3)2.0*i 改错:(1)void fun(char *s,char *t)(2)t[2*d]='';编程:int i,j=o;for(i=1;i

给定程序中,函数fun的功能是,将形参s所指字符串的所有字母 字符顺序前移,其他字符顺序后移,处理后新字符串的首地址作 为函数值返回。

例如,s所指字符串为:asd123fgh543df处理后新字符串为 asdfghdf123543.填空:(1)s[i]

(2)k

(3)0 改错:(1)while(*w)

(2)if(*r==*p)编程:int i,j=0;for(i=1;i

31、程序填空题

给定程序中,函数fun的功能是:将a所指4×3矩阵中第k行的元素与第0行元素交换。例如。有下列矩阵: 1

4

7

11 若k为2,程序执行结果为: 7

4

1

11

12填空:(1)k

(2)N(3)a[k][i] 改错:(1)for(i=strlen(t)-1;i;i--)(2)if(t[j]>t[j+1])编程:char *p=ss int i=0;while(*p){ if((i%2)&&(*p>='a'&&*p<='z'))*p-=32;p++;i++;}

32、程序填空题

给定程序中,函数fun的功能是:将a所指3*5矩阵中第k列的元素左移到第0列,第k列以后的每列元素依次左移,原来左边的各列依次绕道右边。例如,有以下矩阵: 1 1

若结果为,程序执行结果为: 3 3 填空:(1)k(2)N-1(3)temp 改错:(1)void fun(int a[][M],int m)(2)a[j][k]=(k+1)*(j+1);编程:

*c=(a%10)*1000+(b%10)*100+(a/10)*10+b/10;

33、程序填空题

给定程序中,函数fun的功能是:在3*4的矩阵中代出在行上最大、在列上最小的那个元素,若没有符合条件的元素则输出相应信息。例如:有下列矩阵 1 2 13 4 7 8 10 6 3 5 9 程序执行的结果为:find:a[2][2]=9 填空:(1)j

(2)0

(3)i++ 改错:(1)for(i=2;i<=m;i++)(2)y-=1.0/(i*i);编程:float av=0.0;int i,j=0;for(i=0;iscore[i])below[j++]=score[i];return j;10;

34、程序填空题

给定程序中,函数fun的功能是:把形参s所指字符串中最右边的n个字符复制到形参t所指字符数组中,形成一个新串。若s所指字符串的长度小于n,则将整个字符串复制到形参t所指字符数组中。

例如,形参s所指的字符串味:abcdefgh,n的值为5,程序执行后t所指字符串数组中的字符串为:defgh.填空:(1)t,s(2)s[i](3)0 改错:(1)if(i%k==0)(2)if(k>=i)编程:int i=0;*n=0;for(i=1;i<=x;i++)if((x%i==0)&&(i%2))pp[(*n)++]=i;

35、给定程序中,函数fun的功能是:在形参s所指字符串是否是“回文”(Palindrome),若是,函数返回值为1;不是,函数返回值为0。“回文”是正读和反读都一样的字符串(不区分大小写字母)。

例如,LEVEL和Level是“回文”,而LEVLEV不是“回文”。填空:(1)s(2)—

(3)return 0 改错:(1)double fun(int n)

(2)c=a;a+=b;b=c;编程: int r=0,temp,p,sign=1;

for(temp=m+1;temp

sign=1;

else {sign=0;break;} } if(sign= =1&&p>=temp){if(k>=0){xx[r++]=temp;k--;} else break;}

}

程序填空题

给定程序中,函数fun的功能是:计算出形参s所指定字符串中包含的单词个数,作为函数值返回。为便于统计,规定各单词之间用空格隔开。

例如,形参s所指的字符串为:This is a C languge program,函数的返回值为6。填空:(1)n++(2)0

(3)s++ 改错:(1)t+=s[k];(2)*aver=ave;编程:int i,pos=0,max=*s;for(i=1;i

37、程序填空题

给定程序中,函数fun的功能是:将形参s所指字符串中所有的ASCII码值小于97的字符存入形参t所指字符数组中,形成一个新串,并统计出符合条件的字符个数作为函数值返回。例如:形参s所指的字符串为:Abc@156*,程序执行后t所指字符串数组中的字符串为:A@156*。

填空:(1)*s

(2)s++

(3)n 改错:(1)int j,c=0;double xa=0.0;

(2)if(x[j] >= xa)编程:float result,temp=1.0;int i;for(i=1;i<=m;i++)temp=temp*i;result=temp;for(temp=1.0,i=1;i<=n;i++)temp=temp*i;result=result/temp;for(temp=1.0,i=1;i<=m-n;i++)temp=temp*i;result=result/temp;return result;

38.程序填空题

给定程序中,函数fun的功能是:将形象s所指字符串中的数字字符转换成对应的数值,计算出这些数值的累加和作为函数值返回。

例如,形参s所指的字符串为:abs5def126jkm8,程序执行后的输出结果为:22。填空:(1)48

(2)s++

(3)sum 改错:(1)if((k%13= =0)||(k%17= =0))

(2)]

int i;for(i=21;i<=n;i++)if((i%3= =0)&&(i%7 = =0))sum=sum+i;return sprt(sum);

39、程序填空题

给定程序中,函数fun的功能是:找出形参s所指字符串中出现频率最高的字母(不区分大小写),并统计出其出现的次数。

例如,形参s所指字符串为:abcAbsmaxless,程序执行后的输出结果为: letter ‘a’:3 times letter ‘s’:3 times

填空:(1)*s(2)1(3)k[n] 改错:(1)double fun(int k)(2)return s;编程:double s=0.0;int i;for(i=1;i<=n;i++)s=s+1.0/(i*(i+1));return s;

40、程序填空题

给定程序中,函数fun的功能是:利用指针数组对形参ss所指字符串数组中的字符串按由长到短的顺序排序,并输出排序结果,ss所指字符串数组中共有N个字符串,且串长小于M。

填空:(1)i

(2)ps[j](3)tp 改错:(1)double fun(int n)(2)return sum;编程:int i;double a=1,b=1,s=1;for(i=1;i<=n;i++)

41、程序填空题

给定程序中,函数fun的功能是用函数指针指向要调用的函数,并进行调用,规定在2处使f指向函数f1,在3处使f指向函数f2。当调用正确时,程序输出: x1=5.000000,x2=3.000000, x1*x1+x1*x2=40.000000 填空:(1)double(2)f1(3)f2 改错:(1)p=h->next;(2)p=p->next;编程: int i,n=0,fg=1;char *p=str;while(*p){n++;p++;} for(i=0;i

42、程序填空题 给定程序中,函数fun的功能是将带头节点的单向链表结点数据域中的数据从小到大排序,即若原链表结点数据从头至尾的数据为:10,4,2,8,6,排序后链表结点数据域从头至尾的数据为:2,4,6,8,10。

填空:(1)h->next(2)p->next(3)>= 改错:(1)p=h->next;(2)p=p->next;编程:int i,j;for(i=0;i

43、程序填空题 给定程序中,函数fun的功能是将不带头结点的单向链表逆置,即若链表中从头至尾结点数据域依次为:2,4,6,8,10,逆置后,从头至尾结点数据域依次为:10、8、6、4、2。填空:(1)NODE *(2)q(3)r 改错:(1)if(i%2 || s[i]%2==0)(2)t[j]=0;编程: for(j=0;j

44..程序填空题

给定程序中,函数fun功能是将不带头结点的单向链表逆置,即若原链表从头到尾结点数据域依次为:2 4 6 8 10 逆置后,从头到尾结点数据域依次为:10 8 6 4 2 填空:(1)next(2)0(3)r 改错:(1)r=t;(2)if(*r= =0)编程:int i,j,k=0;for(i=0;i

45、程序填空题

给定程序中,函数fun的功能是将不带头节点的单向链表结点数据域中的数据从小到大排序,即若原链表结点数据域从头到尾的数据为:10,4,2,8,6,排序后链表结点数据域从头到尾的数据为:2,4,6,8,10。填空:(1)p->next(2)q(3)p->next 改错:(1)''(2)s++;编程:int b[N],i,j=0;for(i=p+1;i

46、程序填空题 给定的程序中,函数fun的功能是:统计形参s所指字符串中数字字符出现的次数,并存放在形参t所指的变量中,最后在主函数中输出,例如,形参s所指的字符串为abcdef35adgh3kjsdf7。输出 结果为:4。

填空:(1)double

(2)f1

(3)f2 改错:(1)char *fun(char *s, char *t)

(2)ss++

(3)tt++ 编程: char a[N];int i;for(i=0;i=0;m--;i--)w[i]=a[m];

47、程序填空题

给定的程序中,函数fun的功能是将形参给定的字符串,整数、浮点数写到文本文件中,再用字符的方式从此文本文件中逐个读入并显示在终端屏幕上。填空:(1)FILE *

(2)fp(3)ch 改错:(1)s[j++]=s[i];

(2)s[j]= '';编程: for(j=0;j

b[n]=s[j][i];

48、程序填空题

给定程序中,函数fun的功能是将参数给定的字符串、整数、浮点数写到文本文件中,再用字符串方式从此文本文件中逐个读入,并调用库函数atoi 和atof将字符串转换成相应的整数、浮点数,然后将其显示在屏幕上。

填空;

(1)File *

(2)fclose(fp)

(3)fp 改错;

(1)t=(STU*)calloc(sizeof(STU),m);(2)t[k]=b[j];编程;

int i,t,j=0,*p=a;t=p[0];for(i=0;i<=n;i++)if(t==p[i]);else {a[j]=t;t=p[i];j++;} if(i>=n)a[j]=t;return j;

49、程序填空题

程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun的功能是从形参filename所指的文件中读入学生数据,并按照学号从小到大排序后,再用二进制方式把排序后的学生数据输出到filename所指的文件中,覆盖原来的文件内容。填空:(1)“rb”

(2)>

(3)fwrite 改错:(1)p=s;

(2);(缺分号)编程:int i;for(i=0;j=100)b[10]++;else b[a[i]/10]++;

50、程序填空题

程序通过定义学生结构变量,储存了学生的学号、姓名和3门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun的功能是重写形参filename所指的文件中最后一个学生的数据,即用新的学生数据覆盖该学生原来的数据,其他学生的数据,其他学生的数据不变。填空:(1)filename(2)fp(3)fp 改错:(1)p=(NODE*)malloc(sizeof(NODE));(2)return h;编程: int i,n=0;for(i=0;i=’ a’&&s[i]<=’ z’&&s[i+1]=’ ’||s[i+1]==’’)n++;}

他学生的数据不变。

填空:(1)filename(2)fp(3)fp 改错:(1)p=(NODE*)malloc(sizeof(NODE));(2)return h;编程: int i,n=0;for(i=0;i=’ a’&&s[i]<=’ z’&&s[i+1]=’ ’||s[i+1]==’’)n++;}

第二篇:2018年大学c语言机期未试考题

1#####

在考生文件夹下的给定程序modi53.c中,函数fun的功能是:将从键盘上输入的每个单词的第一个字母写为大写字母,输入时各单词必须用空格隔开,用'.'结束输入。

请改正程序中的错误,使程序能输出正确的结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!#include

int fun(char *c,int status){ /************found************/

if(c==' ')return 1;

else

{

if(status && *c<='z' && *c>='a')/************found************/

c+='A'-'a';

return 0;

} }

main(){

int flag=1;

char ch;

printf(“请输入一字符串,用点号结束输入!n”);

do

{

ch=getchar();

flag=fun(&ch,flag);

putchar(ch);

}while(ch!='.');

printf(“n”);} 第1 处内容填写有误

第[1]处操作错误

题面要求操作:内容为[if(*c==' ')return 1;]

实际操作结果:内容为[if(c=='')return1;] 第2 处内容填写有误

第[2]处操作错误

题面要求操作:内容为[*c+='A'-'a';]

实际操作结果:内容为[c+='A'-'a';]

2##### 请编写函数fun,其功能是:计算并输出3到n之间所有素数的平方根之和。

例如,在主函数中从键盘给n输入100后,输出为:sum=148.874270。

注意:要求n的值大于2但不大于100。

部分源程序在考生文件夹下的文件prog192.c中。

请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句

#include #include double fun(int n){

} main(){ int n;

double sum;

printf(“nnInput n: ”);scanf(“%d”,&n);

sum=fun(n);

printf(“nnsum=%fnn”,sum);

NONO();} NONO(){/* 请在此函数内打开文件,输入测试数据,调用 fun 函数,输出数据,关闭文件。*/

FILE *rf, *wf;int n, i;double s;

rf = fopen(“bc192.in”, “r”);

wf = fopen(“bc192.out”, “w”);

for(i = 0;i < 10;i++){

fscanf(rf, “%d”, &n);

s = fun(n);

fprintf(wf, “%lfn”, s);

}

fclose(rf);fclose(wf);}

本题的考核点是查找素数的算法以及开根函数的应用。

解题思路:从3到指定数n,找出所有的素数,素数的判断方法是:只能被1和其自身整除,而不能被其它任何数整除的数;sqrt(x)函数是计算x的平方根。

#include #include double fun(int n){ int i,j=0;/*定义两个整型变量*/ double s=0;/*定义变量s为双精度型*/

for(i=3;i<=n;i++)

{ for(j=2;j

if(i%j==0)break;

/*如果i能被j整除就说明i不是素数,继而退出循环体*/

if(j==i)s=s+sqrt(i);/*sqrt(i)函数是计算i的平方根*/

}

return s;/*返回结果*/

3#

给定程序的功能是求k!(k<13)并通过函数名传回主函数。

例如:若k = 10,则应输出:3628800。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹下的blank20.c中。

不得增行或删行,也不得更改程序的结构!#include long fun(int

k){ /************found************/

if(k>0)/************found************/

return(k*fun(___2___));/************found************/

else if(k==0)

return 1L;}

main(){ int k = 10;

printf(“%d!=%ldn”, k, fun(k));}

本题主要考查的是函数的递归调用。

题中第一个空填“>”:此处为递归调用结束的条件。

题中第二个空填“k-1”:此处为递归调用时返回给调用函数的实参值。

题中第三个空填“==”:此处判断k是否为0,若是则将值返回给主函数。

本评析仅供参考。

4在考生文件夹下的给定程序modi31.c中,函数fun的功能是:从N个字符串中找出最长的那个串,并将其地址作为函数值返回。各字符串在主函数中输入,并放入一个字符串数组中。

请改正程序中的错误,使它能得出正确结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!#include #define N 5 #define M 81 /************found************/ fun(char(*sq)[N]){int i;char *sp;sp=sq[0];for(i=0;i

if(strlen(sp)

sp=sq[i];/************found************/ return sq;} main(){char str[N][M],*longest;int i;printf(“Enter %d lines :n”,N);for(i=0;i

程序中的重要思想如下:

1、建立了一个二维字符串数组,用于存放用户输入的6个字符串;

2、建立了一个指针数组,目的是用6个指针分别指向6个字符串;

3、函数fun()的形参只有一个,即指针数组pstr[],这表明要想在函数fun()中对6个字符串进行操作,只能通过pstr[]中的6个指针。

题中第一个空填“*(pstr+j)”:观察源程序可以发现,在程序中使用strcmp()函数是为了判断字符串str[i]与str[i+1]两者的大小,在fun()函数中只能通过指针来表达各个字符串,所以应当填“*(pstr+j)”。

题中第二个空填“pstr[j]”:对两个字符进行比较后,若pstr[i]中的字符比pstr[j]中的字符大,则将pstr[j]中的字符赋给pstr[i]。

题中第三个空填“p”:对两个字符进行比较后,若pstr[i]中的字符比pstr[j]中的字符大,则将pstr[j]和pstr[i]的内容进行交换。

5请编写函数fun,其功能是:计算并输出下列多项式的值:

S=(1─)+…+(──1]);"。

第三篇:北京理工大学机试

鲤鱼网()

计算机系2000年研究生入学复试上机试题:

----------------

1、输入任意4个字符(如:abcd),并按反序输出(如:dcba)

2、设a、b、c均是 0 到 9 之间的数字,abc、bcc是两个三位数,且有:abc+bcc=532。求满足条件的所有a、b、c的值。

3、一个数如果恰好等于它的各因子(该数本身除外)子和,如:6=3+2+1,则称其为“完数”;若因子之和大于该数,则称其为“盈数”。求出2到60之间所有“完数”和“盈数”,并以如下形式输出:

E: e1 e2 e3......(ei为完数)

G: g1 g2 g3......(gi为盈数)

4、从键盘输入4个学生的数据(包括姓名、年龄和成绩),并存放在文件sf1上。从该文件读出这些数据,按成绩从高到底排序,并输出其中成绩次高者的所有数据。

----------------

计算机系2001年研究生入学复试上机试题(1)

----------------

1、编写程序,计算下列分段函数y=f(x)的值。

y=-x+2.50<= x <2

y=2-1.5(x-3)(x-3)2<= x <4

y=x/2-1.5 4<= x <62、编写程序,读入一个整数 N。若 N 则计算 N 到 2N 之间的整数和;若 N 为一个负数,则求 2N 到 N3、设N 9 1234的反序数是4321),求N的值。

4、N1号开始按1、2、3顺序报数,报3者退出圈外,其余的人再从1、2、3----------------

计算机系2001年研究生入学复试上机试题(2)

----------------

1、请输入高度h,输入一个高为h,上底边长为h的等腰梯形(例如h=4,图形如下)。****

******

********

**********

2、请编写一个程序,从键盘上输入n(n的范围是1~20),求n的阶乘。

3、从键盘上任意输入一个长度不超过20的字符串,对所输入的字符串,按照ASCII码的大小从小到大进行排序,请输出排序后的结果。

鲤鱼网——成功在于执着

----------------

计算机系2002年研究生入学复试上机试题(A)

----------------

1、某人有8角的邮票5张,1元的邮票4张,1元8角的邮票6张,用这些邮票中的一张或若干张可以得到多少中不同的邮资?

2、输入n值,使用递归函数,求杨辉三角形中各个位置上的值,按照如下形式打印输出图形。例如:当n=6时。

121

1331

14641

151010

51----------------

计算机系2002----------------

1、打印所有不超过n(n<25611*11=121。

2n值,使用该递归函数,输出如下图形。例如:当n=6时。

0013

011258

01123581321

01123581321345

5----------------

计算机系2003年研究生入学复试上机试题

----------------

1、输入球的中心点和球上某一点的坐标,计算球的半径和体积。

2、手工建立一个文件,文件种每行包括学号、姓名、性别和年龄。每一个属性使用空格分开。文件如下:

01李江男21

02刘唐男2

303张军男19

04王娜女19

根据输入的学号,查找文件,输出学生的信息。

3、输入年月日,计算该填是本年的第几天。例如1990年9月20日是1990年的第263天,2000年5月1日是2000年第122天。(闰年:能被400正除,或能被4整除但不能被100整除。每年1、3、5、7、8、10为大月)

考研加油站 http:///

北京理工大学 计算机专业研究生复试上机试题 2000~2008

2000年:

1、输入任意4个字符(如:abcd),并按反序输出(如:dcba)

2、设a、b、c均是 0 到 9 之间的数字,abc、bcc是两个三位数,且有:abc+bcc=532。求满足条件的所有a、b、c的值。

3、一个数如果恰好等于它的各因子(该数本身除外)子和,如:6=3+2+1,则称其为“完数”;若因子之和大于该数,则称其为“盈数”。求出2到60,并以如下形式输出: E: e1 e2 e3......(ei为完数)

4、从键盘输入4个学生的数据(sf1上。从该文件读

2001年(1):

1的值。y=-x+2.5 0<= x <2 y=2-1.5(x-3)(x-3)2<= x <4 y=x/2-1.5 4<= x<62、编写程序。N 则计算 N 到2N 之间的整数和;若 N 为一个负数,则求 2N 到

3、设N是一个四位数,它的1234的反序数是4321),求N的值。

4、N个人围成一圈顺序编号,从1号开始按1、2、3顺序报数,报3者退出圈外,其余的人再从1、2、3开始报数,报3的人再退出圈外,依次类推。请按退出顺序输出每个退出人的原序号。要求使用环行链表编程。

2001年(2)

1、请输入高度h,输入一个高为h,上底边长为h的等腰梯形(例如h=4,图形如下)。**** ****** ******** **********

2、请编写一个程序,从键盘上输入n(n的范围是1~20),求n的阶乘。

3、从键盘上任意输入一个长度不超过20的字符串,对所输入的字符串,按照ASCII码的大小从小到大进行排序,请输出排序后的结果。

2002年(A)

1、某人有8角的邮票5张,1元的邮票4张,1元8角的邮票6张,用这些邮票中的一张或若干张可以得到多少中不同的邮资?

2、输入n值,使用递归函数,求杨辉三角形中各个位置上的值,按照如下形式打印输出图形。例如:当n=6时。1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 510 10 5

12002年(B)

1、打印所有不超过n(n<256)的,其平方具有对称性质的数。如11*11=121。

2、编写一个求菲波那奇数列的递归函数,输入n值,使用该递归函数,输出如下图形。例如:当n=6时。

00 1 1 0 1 1 2 3 0 1 1 2 3 5 8 0 1 1 2 3 5 8 13 21 0 1 1 2 3 5 8 13 21 34 5

52003年

12开。文件如下: 01 李江

男 21 02 刘唐

男 23 03 张军

男 19 04 王娜

女 19

31990年9月20日是1990年的第263天,2000年5月1日是天。(闰年:能被400正除,或能被4整除但不能被100整除。每年1、3、5、7、8

2004年

第一题是建立一个角类,在这个类中重载减号运算符,并实现求出角度的正弦值的函数。第二题是建立一个求一元二次方程解的类(a*x^2+b*x+c=0),输入系数a,b,c的值后打印出这个方程的解来,也比较简单。需要注意的是系数a不能为零以及方程有无解,单解还是双解的情况。

第三道题是实现一个多项式的类(a+b*x+c*x^2+d*x^3+...+),要求输入该多项式的系数和x的值后打印出这个多项式的值。这道题本身并不难,但他要求用好的算法(实际上就是递归)。

2005年:

第一题是给定一个程序,关于字符串的,要求输入并调试,说出此程序的意图。意图是按字母顺序对两个字符串比较排序。第二问要求用尽可能少的语句对该程序进行修改,使其能够对两个字符串比较长度排序。本题满分20。

第二题是要求编写一个日期类,要求按xxxx-xx-xx的格式输出日期,实现加一天的操作,不考虑闰年问题,所有月份设为30天。本题黑盒测试时,输入2004年3月20日,得到加一

天后时间为2004-3-21,能得一部分分数。输入2004年3月30日,得到加一天后时间为2004-4-1,能得一部分分数。输入2004年12月30日,得到加一天后时间为2005-1-1,且有时间越界处理,能得全部分数。本题满分30。

第三题要求编写一个复数类,要求有4条。一是有构造函数,能对复数初始化。二是对复数c1,c2,c3.....能实现连加运算,令c=c1+c2+c3+.....此处可以重载加法操作符。三是有函数实现两个复数相加,并按照a+ib的形式输出。四是能实现对一个复数c=a+ib,定义double x=c有效,使x的值为实部和虚部之和。本题满分50。”

2006年

1.写一个程序判断字符串中数字的位置(不限制使用面向对象编程)

例如:

输入a3b4c

5输出2 4 6

2.写一个类,能接受int12345)和其反向变量(54321),最多处理数量为10个,当输入达到100的时候停止。并且在类销毁前输出存储的所有变量。

例如:

输入:12345,2234,0

输出:123455

43212234

3.写一个CTriangle类,形式的构造,创建在坐标系中的直角三角形样子如下

A

|

|

|

|

B----------C

三点的坐标分别是A(0,y)B(0,0)C(x,0)

实现+运算,并且能够处理键盘连续输入若干个(少于十个)三角形,并且连加(相加时候三角形边长长度相加,方向同第一个三角形)。输入0后结束并输出最后得出的三角形的三

个坐标值。

例如:

输入:12

-1-5

输出:A(0,7),B(0,0),C(2,0)

2007年:

1、请自定义一个Student类,属性包括:Char name[10],int num。编程实现学生信息的输入、查询、浏览,其中浏览分为:升序和降序两种。

2008年:

1、存储一组姓名,如 Apple,Tom,Green,Jack 要求能排序、按字母顺序插入、并显示。

2路径、该文件名及文件中的内容输出到屏幕。

3、设计捕获两种不同类型的异常,一个是被0 除,4和 2008-3-9 计算相隔多少天,或2008-2-3 加上100

其中1、2题各15分3、4题是2选一,10分

第四篇:程序员机试题目

开发环境:VS2010、SQL Server2008

开发语言:C#

使用框架:ASP.NET、ADO.NET

一、使用经典三层架构完成web页面的用户登录,数据库、页面自行设计实现(30分钟)

要求:

(1)提供多个账号可以登录

(2)用户录入错误信息时能够进行提示

(3)能对以后的其他业务功能提供用户身份的验证

二、使用dotNet4.0中的ListView、DataPager控件完成数据库端的分页查询,数据库端自行设计实现(1小时)

要求:

(1)数据表结构可以使用

(一)中的用户信息

(2)分页必须使用数据库端分页

(3)使用的控件必须是ASP.NET 4.0提供的ListView、DataPager

控件

(4)页面只完成数据查询显示即可

(5)可上网查找相关的资料

第五篇:《计算机常用工具软件项目教程》段考试题(机试)

《计算机常用工具软件项目教程》段考试题

适用班级:计67、68(机试)

班别:学号:姓名:成绩:

一、在E盘根目录建一个文件夹,并命名为自己的班级和姓名,并在该文件夹里再建

两个文件夹,分别命名为“软件”和“素材”,用于存放本次考试的所有素材和

作品。(10分)

二、素材下载(20分)

1、图片下载。下载“人与自然”相关图片,存放在“素材”文件夹下。

2、软件下载。分别下载软件PDFCreator0.9.3c1.4.1和软件ZMaker,存放在“软件”

文件夹下

三、使用软件PDFCreator0.9.3c1.4.1将第二题的图片转换为PDF文档。(20分)

四、利用以上素材,用电子杂志制作大师ZMaker,制作电子杂志。(50分)

要求:

1、安装软件Zmaker2、杂志要求有背景图片、封面、封底、目录

3、要求有背景音乐

4、要求有适当的文字说明和特效。

5、封面上要有自己的班别姓名

6、布局合理,图文并茂,自由发挥。

下载C语言机试试题大全(5篇)word格式文档
下载C语言机试试题大全(5篇).doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    心理健康辅导员机试答案

    注:显示答案,绿色加粗字体的选项是正确答案! 1. ( )指一个人的独立决策、主宰自己情绪和不依赖外界的帮助, 在任何情况下都能努力成(0.0分/0.0分) 就自己目标的能力 A. 自主 B. 自......

    龙门吊机试吊总结报告

    龙门吊机试吊总结报告 为保障我合同段T梁预制生产工作能安全有序进行,2010年9月5日,项目部在T梁预制现场组织龙门吊机自检试吊工作,对预制场内两台吊机进行试吊自检,对配合生产3......

    二级Access 机试小总结

    基本操作 1.设置"年龄"字段的"有效性规则"属性为:大于等于17且小于等于55; "有效性规则"框中直接输入">=17 And =18" 2.设置"聘用时间"字段的默认值为:系统当前日期; 默认值......

    工行笔试+礼仪+面试+机试

    [面试] 工行笔试+礼仪+面试+机试 今天九点在东莞工行分行进行了一天的笔试+面试,从早上的九点到下午的四点,当然除了中饭工行提供的午饭除外(工行的餐很不错,比我学校的要好......

    ATM机C语言程序

    直接运行没有错误的代码c----n ==>==>请输入你要转入的金额:"); scanf("%f",&zj); if(zj>0.00 && zj......

    C语言模拟ATM机

    一、 实验目的 通过设计一个ATM机模拟操作的程序,全面运用课程的主要知识点,巩固对模块化程序设计、文件操作的理解,提高软件编程能力。 二、 实验要求 要求每人独立完成设计,编......

    通用技术试试题12

    【单选题-1】 发明爱好者方青年,学习并运用多种知识发明了“连体式全电控薄壁电压力锅”,解决了原电压力锅安全性低、操作复杂等缺陷,并取得了专利。下列说法合理的是( ) A.发明中......

    试题文言文句试

    文言文句式 文言文的句式,跟白话文的句式,有的相同,有的很不相同。即使是相同的句式,文言文句式也有它自己的特点。 文言句式包括:判断句、被动句、疑问句、否定句、词序(倒装句......