计算机国家二级考试机试题1Word格式.docx

上传人:b****5 文档编号:15791364 上传时间:2022-11-16 格式:DOCX 页数:98 大小:42.56KB
下载 相关 举报
计算机国家二级考试机试题1Word格式.docx_第1页
第1页 / 共98页
计算机国家二级考试机试题1Word格式.docx_第2页
第2页 / 共98页
计算机国家二级考试机试题1Word格式.docx_第3页
第3页 / 共98页
计算机国家二级考试机试题1Word格式.docx_第4页
第4页 / 共98页
计算机国家二级考试机试题1Word格式.docx_第5页
第5页 / 共98页
点击查看更多>>
下载资源
资源描述

计算机国家二级考试机试题1Word格式.docx

《计算机国家二级考试机试题1Word格式.docx》由会员分享,可在线阅读,更多相关《计算机国家二级考试机试题1Word格式.docx(98页珍藏版)》请在冰豆网上搜索。

计算机国家二级考试机试题1Word格式.docx

2.根据以下公式求π的值(要求精度0.005)

math.h>

doublefun(doubleeps)

doubles=1.0,s1=1.0;

intn=1;

while(s1>

=eps)/*当某项大于精度要求时,继续求下一项*/

{s1=s1*n/(2*n+1);

/*求多项式的每一项*/

s=s+s1;

/*求和*/

n++;

}

return2*s;

{doublex;

Inputeps:

"

);

scanf("

%lf"

&

x);

\neps=%lf,PI=%lf\n"

x,fun(x));

3.求出1~1000之间能被7或11整除,但不能同时被7和11

整除的所有整数,并将其放在a所指的数组中,通过n返回这些数的个数。

voidfun(int*a,int*n)

inti,j=0;

for(i=1;

=1000;

i++)/*求1到1000之内能被7或11整除、但不能同时被7和11整除的所有整数,并放入数组a中*/

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

&

i%77!

=0)

a[j++]=i;

*n=j;

{intaa[1000],n,k;

voidNONO();

fun(aa,&

n);

for(k=0;

k<

n;

k++)

if((k+1)%10==0)printf("

\n"

elseprintf("

%5d"

aa[k]);

4.规定输入的字符串中只包含字母和*号。

编写函数fun,其功能是:

删除字符串中所有的*号。

编写函数时,不能使用C语言提供的字符串函数。

voidfun(char*a)

a[i]!

='

\0'

;

if(a[i]!

*'

a[j++]=a[i];

/*若不是要删除的字符'

则留下*/

a[j]='

main()

{chars[81];

Enterastring:

);

gets(s);

fun(s);

Thestringafterdeleted:

puts(s);

NONO();

5.实现两个字符串的连接(不要使用库函数strcat),即把p2所指的字符串连接到p1所指的字符串后面。

voidfun(charp1[],charp2[])

inti,j;

p1[i]!

i++);

p2[j]!

p1[i++]=p2[j];

p1[i]='

{chars1[80],s2[40];

Enters1ands2:

%s%s"

s1,s2);

s1=%s\n"

s1);

s2=%s\n"

s2);

Invokefun(s1,s2):

fun(s1,s2);

Afterinvoking:

%s\n"

NONO();

6.某学生的记录由学号、8门课程成绩和平均分组成,学号和8门课程的成绩已在主函数中给出,请编写函数fun,其功能是:

求出该同学的平均分,并放入记录的ave成员中。

#defineN8

typedefstruct

{charnum[10];

doubles[N];

doubleave;

}STREC;

voidfun(STREC*a)

doubleave=0.0;

inti;

N;

a->

ave=a->

ave+a->

s[i];

ave/=N;

{STRECs={"

GA005"

85.5,76,69.5,85,91,72,64.5,87.5};

fun(&

s);

The%s'

sstudentdata:

s.num);

i++)

%4.1f\n"

s.s[i]);

\nave=%7.3f\n"

s.ave);

7.N名学生的成绩已在主函数中放入一个带头结点的链表结构中,h指向链表的头结点。

请编写函数fun,其功能是:

求出平均分,并由函数值返回。

stdlib.h>

structslist

{doubles;

structslist*next;

};

typedefstructslistSTREC;

doublefun(STREC*h)

STREC*p=h->

next;

while(p!

=NULL)

{ave=ave+p->

s;

p=p->

returnave/N;

STREC*creat(double*s)

{STREC*h,*p,*q;

inti=0;

h=p=(STREC*)malloc(sizeof(STREC));

p->

s=0;

while(i<

N)

{q=(STREC*)malloc(sizeof(STREC));

q->

s=s[i];

i++;

p->

next=q;

p=q;

next=0;

returnh;

outlist(STREC*h)

{STREC*p;

p=h->

head"

do

{printf("

->

%4.1f"

p->

s);

p=p->

=0);

\n\n"

{doubles[N]={85,76,69,85,91,72,64,87},ave;

STREC*h;

h=creat(s);

outlist(h);

ave=fun(h);

ave=%6.3f\n"

ave);

8.将所有大于1小于m的非素数存入xx所指数组中,非素数的个数通过k返回。

voidfun(intm,int*k,intxx[])

/*inti,j;

intt=0;

for(i=2;

m;

{j=2;

while(j<

i)

{if(i%j==0)

{xx[t]=i;

t++;

break;

j++;

*k=t;

}*/

inti,j,n=0;

for(i=4;

i++)/*找出大于1小于整数m的非素数*/

{for(j=2;

i;

if(i%j==0)break;

if(j<

i)xx[n++]=i;

*k=n;

/*返回非素数的个数*/}

intm,n,zz[100];

printf("

\nPleaseenteranintegernumberbetween10and100:

"

);

scanf("

%d"

&

n);

fun(n,&

m,zz);

\n\nThereare%dnon-primenumberslessthan%d:

m,n);

for(n=0;

n<

m;

n++)

\n%4d"

zz[n]);

9.求ss所指字符串中指定字符的个数,并返回此值。

string.h>

#defineM81

intfun(char*ss,charc)

inti=0;

for(;

*ss!

ss++)

if(*ss==c)

returni;

{chara[M],ch;

\nPleaseenterastring:

gets(a);

\nPleaseenterachar:

ch=getchar();

\nThenumberofthecharis:

%d\n"

fun(a,ch));

NONO();

10.计算n门课程的平均分,结果作为函数值返回。

floatfun(float*a,intn)

inti;

floatav=0.0;

for(i=0;

i<

n;

av=av+a[i];

return(av/n);

{floatscore[30]={90.5,72,80,61.5,55},aver;

aver=fun(score,5);

\nAveragescoreis:

%5.2f\n"

aver);

11.学生的记录由学号和成绩组成,N名学生的数据已放入主函数中的结构体数组s中。

把分数最高的学生数据放在b所指的数组中。

注意:

分数最高的学生可能不止一个,函数返回分数最高的学生的人数。

#defineN16

ints;

intfun(STREC*a,STREC*b)

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

当前位置:首页 > PPT模板 > 动态背景

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

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