二级等级考试C语言机试题.docx

上传人:b****5 文档编号:8313642 上传时间:2023-01-30 格式:DOCX 页数:23 大小:17.70KB
下载 相关 举报
二级等级考试C语言机试题.docx_第1页
第1页 / 共23页
二级等级考试C语言机试题.docx_第2页
第2页 / 共23页
二级等级考试C语言机试题.docx_第3页
第3页 / 共23页
二级等级考试C语言机试题.docx_第4页
第4页 / 共23页
二级等级考试C语言机试题.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

二级等级考试C语言机试题.docx

《二级等级考试C语言机试题.docx》由会员分享,可在线阅读,更多相关《二级等级考试C语言机试题.docx(23页珍藏版)》请在冰豆网上搜索。

二级等级考试C语言机试题.docx

二级等级考试C语言机试题

二OOO年九月份二级等级考试C语言机试题

第一题

修改部分

给定程序MODI1.C中函数fun的功能是:

将仅在字符串s中出现而不在字符串t中出现的字符,和仅在字符串t中出现而不在字符串s中出现的字符,构成一个新字符串放在u中,u中的字符按原字符串字符顺序排列,不去掉重复字符。

例如:

当s=”AABCDE”,t=”BDFGG”时,u中的字符串为:

”AACEFGG”。

请改正函数fun中的错误,使它能得出正确的结果。

注意:

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

#include

#include

#include

voidfun(char*s,char*t,char*u)

{inti,j,sl,tl,k,ul=0;

sl=strlen(s);tl=strlen(t);

for(i=0;i

{for(j=0;j

if(s[i]==t[j])break;

/************found************/

if(j>=tl)

{for(k=0;k

if(s[i]==u[k])break;

if(k>=ul)

/************found************/

u[k++]=s[i];

}

}

u[ul]='\0';

}

main()

{chars[100],t[100],u[100];

clrscr();

printf("\nPleaseenterstrings:

");scanf("%s",s);

printf("\nPleaseenterstringt:

");scanf("%s",t);

fun(s,t,u);

printf("Theresultis:

%s\n",u);

}

设计部分

函数fun的功能是:

把a数组中的n个数和b数组中逆序的n个数一一对应相加、求平方,结果存放在C数组中。

例如:

若a数组中的值是:

1、3、5、7、8,b数组中的值是:

2、3、4、5、8,调用该函数后,c中存放在数据是81、64、81、100、100。

注意:

部分源程序存在文件PROG1.C中。

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

#include

#include

voidfun(inta[],intb[],intc[],intn)

{

}

main()

{inti,a[100]={1,3,5,7,8},b[100]={2,3,4,5,8},c[100];

clrscr();

fun(a,b,c,5);

printf("Theresultis:

");

for(i=0;i<5;i++)printf("%d",c[i]);

printf("\n");

NONO();

}

NONO()

{/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。

*/

FILE*rf,*wf;

inta[100],b[100],c[100],i,j;

rf=fopen("in.dat","r");

wf=fopen("bc07.dat","w");

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

for(j=0;j<5;j++)fscanf(rf,"%d,",&a[j]);

for(j=0;j<5;j++)fscanf(rf,"%d,",&b[j]);

fun(a,b,c,5);

for(j=0;j<5;j++)fprintf(wf,"%d",c[j]);

fprintf(wf,"\n");

}

fclose(rf);

fclose(wf);

}

第二题

修改部分

给定程序MODI1.C中函数fun的功能是:

将未在字符串s中出现、而在字符串t中出现的字符,形成一个新的字符串放在u中,u中字符按原符串中字符顺序排列,但去掉重复字符。

例如:

当s=”ABCDE”,t=”BDFGG”时,u中的字符为:

“FG”。

请改正函数fun中的错误,使它能得出正确的结果。

注意:

不要改动main函数,不得增行而删行,也不得更改程序的结构!

#include

#include

#include

voidfun(char*s,char*t,char*u)

{inti,j,sl,tl,k,ul=0;

sl=strlen(s);tl=strlen(t);

for(i=0;i

{for(j=0;j

if(t[i]==s[j])break;

if(j>=sl)

{for(k=0;k

if(t[i]==u[k])break;

/************found************/

if(k

u[ul++]=t[i];

}

}

/************found************/

*u='\0';

}

main()

{chars[100],t[100],u[100];

clrscr();

printf("\nPleaseenterstrings:

");scanf("%s",s);

printf("\nPleaseenterstringt:

");scanf("%s",t);

fun(s,t,u);

printf("Theresultis:

%s\n",u);

}

设计部分

函数fun的功能是:

把a数组中的n个数,和b数组中逆序的n个数一一相应相乘、求平方,结果存在C数组中。

例如:

当a数组中的值是:

1、3、5、7、8,b数组中的值是:

2、3、4、5、8。

调用该函数后,C中存放的数据是:

64、225、400、441、256。

注意:

部分源程序存在文件PROGI.C中。

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

#include

#include

voidfun(inta[],intb[],intc[],intn)

{

}

main()

{inti,a[100]={1,3,5,7,8},b[100]={2,3,4,5,8},c[100];

clrscr();

fun(a,b,c,5);

printf("Theresultis:

");

for(i=0;i<5;i++)printf("%d",c[i]);

printf("\n");

NONO();

}

NONO()

{/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。

*/

FILE*rf,*wf;

inta[100],b[100],c[100],i,j;

rf=fopen("in.dat","r");

wf=fopen("bc06.dat","w");

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

for(j=0;j<5;j++)fscanf(rf,"%d,",&a[j]);

for(j=0;j<5;j++)fscanf(rf,"%d,",&b[j]);

fun(a,b,c,5);

for(j=0;j<5;j++)fprintf(wf,"%d",c[j]);

fprintf(wf,"\n");

}

fclose(rf);

fclose(wf);

}

第三题

修改部分

给定程序MODI1.C中函数fun的功能是:

将既在字符串s中出现又在字符串t中出现的字符构成一个新的字符串放在u中,u中字符按原字符串中字符顺序排列,不去掉重复字符。

例如:

当s=”ABBCDE”,t=”BDFG”时,u中字符串为:

”BBD”。

请改正函数fun中的错误,使它能得出正确的结果。

注意:

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

#include

#include

#include

voidfun(char*s,char*t,char*u)

{inti,j,sl,tl;

sl=strlen(s);tl=strlen(t);

for(i=0;i

{for(j=0;j

if(s[i]==t[j])break;

/************found************/

if(j>=tl)

*u++=s[i];

}

/************found************/

*u='0';

}

main()

{chars[100],t[100],u[100];

clrscr();

printf("\nPleaseenterstrings:

");scanf("%s",s);

printf("\nPleaseenterstringt:

");scanf("%s",t);

fun(s,t,u);

printf("Theresultis:

%s\n",u);

}

设计部分

函数fun的功能是:

把a数组中的n个数和b数组中逆序的n个数一一相应相乘,结果存在c数组中。

例如:

当a数组中的值是:

1、3、5、7、8,b数组中的值是:

2、3、4、5、8。

调用该函数后,c中存放的数据是:

8、15、20、21、16。

注意:

部分源程序存在文件PROG1.C中。

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

#include

#include

voidfun(inta[],intb[],intc[],intn)

{

}

main()

{inti,a[100]={1,3,5,7,8},b[100]={2,3,4,5,8},c[100];

clrscr();

fun(a,b,c,5);

printf("Theresultis:

");

for(i=0;i<5;i++)printf("%d",c[i]);

printf("\n");

NONO();

}

NONO()

{/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。

*/

FILE*rf,*wf;

inta[100],b[100],c[100],i,j;

rf=fopen("in.dat","r");

wf=fopen("bc03.dat","w");

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

for(j=0;j<5;j++)fscanf(rf,"%d,",&a[j]);

for(j=0;j<5;j++)fscanf(rf,"%d,",&b[j]);

fun(a,b,c,5);

for(j=0;j<5;j++)fprintf(wf,"%d",c[j]);

fprintf(wf,"\n");

}

fclose(rf);

fclose(wf);

}

第四题

修改部分

给定程序MODI1.C中函数fun的功能是:

将仅在字符串S中出现、而不在字符串t中出现的字符,和仅在字符t中出现、而不在字符串s中出现的字符,构成一个新的字符串放在u中,u中字符按原字符串中字符顺序排列,但去掉重复字符。

例如,当s=”AABCDE”,t=”BDFGG”时,u中的字符串为:

”ACEFG”。

请改正函数fun中的错误,使它能得出正确的结果。

注意:

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

#include

#include

#include

/************found************/

voidfun(chars,chart,charu)

{inti,j,sl,tl,k,ul=0;

sl=strlen(s);tl=strlen(t);

for(i=0;i

{for(j=0;j

if(s[i]==t[j])break;

if(j>=tl)

{for(k=0;k

if(s[i]==u[k])break;

if(k>=ul)u[ul++]=s[i];

}

}

for(i=0;i

{for(j=0;j

if(t[i]==s[j])break;

/************found************/

if(j>sl)

{for(k=0;k

if(t[i]==u[k])break;

if(k>=ul)u[ul++]=t[i];

}

}

u[ul]='\0';

}

main()

{chars[100],t[100],u[100];

clrscr();

printf("\nPleaseenterstrings:

");scanf("%s",s);

printf("\nPleaseenterstringt:

");scanf("%s",t);

fun(s,t,u);

printf("Theresultis:

%s\n",u);

}

设计部分

函数fun的功能是:

把a数组中的n个数的平方值,与b数组中逆序的n个数的平方值一一对应相减,结果存放在C数组中。

例如:

当a数组中的值是:

1、3、5、7、8,b数组中的值是:

2、3、4、5、8。

调用该函数后,C中存放的数据是:

-63、-16、9、40、60。

注意:

部分源程序存在文件PROG1.C中。

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

#include

#include

voidfun(inta[],intb[],intc[],intn)

{

}

main()

{inti,a[100]={1,3,5,7,8},b[100]={2,3,4,5,8},c[100];

clrscr();

fun(a,b,c,5);

printf("Theresultis:

");

for(i=0;i<5;i++)printf("%d",c[i]);

printf("\n");

NONO();

}

NONO()

{/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。

*/

FILE*rf,*wf;

inta[100],b[100],c[100],i,j;

rf=fopen("in.dat","r");

wf=fopen("bc08.dat","w");

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

for(j=0;j<5;j++)fscanf(rf,"%d,",&a[j]);

for(j=0;j<5;j++)fscanf(rf,"%d,",&b[j]);

fun(a,b,c,5);

for(j=0;j<5;j++)fprintf(wf,"%d",c[j]);

fprintf(wf,"\n");

}

fclose(rf);

fclose(wf);

}

第五题

修改部分

给定程序MODi1.G中函数fun的功能是:

将在字符串s中出现、而未在字符串t中出现的字符构成一个新的字符串放在u中,u中字符按原字符串中字符顺序排列,但去掉重复字段。

例如,当S=”AABCDE”,t=”BDFG”时,u中字符的串为:

“ACE”。

请改正函数fun中的错误,使它能得出正确的结果。

注意:

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

#include

#include

#include

voidfun(char*s,char*t,char*u)

{inti,j,k,sl,tl,ul=0;

sl=strlen(s);tl=strlen(t);

for(i=0;i

{for(j=0;j

if(s[i]==t[j])break;

/************found************/

if(j>tl)

{for(k=0;k

if(s[i]==u[k])break;

/************found************/

if(k

u[ul++]=s[i];

}

}

u[ul]='\0';

}

main()

{chars[100],t[100],u[100];

clrscr();

printf("\nPleaseenterstrings:

");scanf("%s",s);

printf("\nPleaseenterstringt:

");scanf("%s",t);

fun(s,t,u);

printf("Theresultis:

%s\n",u);

}

设计部分

函数fun的功能是:

把a数组中的n个数,和b数组中逆序的n个数一一对应相减、求平方,结果存在c数组中。

例如:

当a数组中的值是:

1、3、5、7、8,b数组中的值是:

2、3、4、5、8。

调用该函数后,C中存放的数据是:

49、4、1、16、36。

注意:

部分源程序存在文件PROGI.C中。

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

#include

#include

voidfun(inta[],intb[],intc[],intn)

{

}

main()

{inti,a[100]={1,3,5,7,8},b[100]={2,3,4,5,8},c[100];

clrscr();

fun(a,b,c,5);

printf("Theresultis:

");

for(i=0;i<5;i++)printf("%d",c[i]);

printf("\n");

NONO();

}

NONO()

{/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。

*/

FILE*rf,*wf;

inta[100],b[100],c[100],i,j;

rf=fopen("in.dat","r");

wf=fopen("bc05.dat","w");

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

for(j=0;j<5;j++)fscanf(rf,"%d,",&a[j]);

for(j=0;j<5;j++)fscanf(rf,"%d,",&b[j]);

fun(a,b,c,5);

for(j=0;j<5;j++)fprintf(wf,"%d",c[j]);

fprintf(wf,"\n");

}

fclose(rf);

fclose(wf);

}

第六题

修改部分

给定程序MODI1.C中函数fun的功能是:

将未在字符串s中出现,而在字符串t中出现的字符,构成一个新的字符串放在u中,u中字符按原字符串中字符的顺序的逆序排列,不去掉重复字符。

例如,当s=”ABCDE”,t=”BDFGG”时,u中的字符串为:

“GGF”。

请改正函数fun中的错误,使它能得出正确的结果。

注意:

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

#include

#include

#include

voidfun(char*s,char*t,char*u)

{inti,j,sl,tl,ul;

charr,*up=u;

sl=strlen(s);tl=strlen(t);

for(i=0;i

{for(j=0;j

if(t[i]==s[j])break;

if(j>=sl)*u++=t[i];

}

/************found************/

u='\0';

ul=strlen(up);

/************found************/

for(i=0;i

{r=up[i];up[i]=up[ul-1-i];up[ul-1-i]=r;}

}

main()

{chars[100],t[100],u[100];

clrscr();

printf("\nPleaseenterstrings:

");scanf("%s",s);

printf("\nPleaseenterstringt:

");scanf("%s",t);

fun(s,t,u);

printf("Theresultis:

%s\n",u);

}

设计部分

函数fun的功能是:

把a数组中的n个数、和b数组中逆序的n个数一一对相应上减的结果,与a数组中的n个数、和b数组中逆序的n个数一一对应相加的结果相乘,结果存在c数组中。

例如:

当a数组中的值是:

1、3、5、7、8,b数组中的值是:

2、3、4、5、8。

调用该函数后,C中存放的数据是:

-63、-16、9、40、60

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1