国二计算机考试 c++上机题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1 找出2×M 二维最大元素 inti,j,max=a[0][0]; for(i=0;i<2;i++) for(j=0;j

max=a[i][j]; return max; 2 14.33/112

→+=π

double s=1.0,s1=1.0; int n=1;

while(s1>=eps) {s1=s1*n/(2*n+1); s=s+s1; n++;} return 2*s;

4 删除字符串所有*号 *A*B —AB int i,j=0;

for(i=0;a[i]!=’\0’;i++) if(a[i]!=’*’) a[j++]=a[i]; a[j]=’\0’;

5 firststring —secondstring int i,j;

for(i=0;p1[i]!=’\0’;i++) for(j=0;p2[j]!=’\0’;j++) p1[i++]=p2[j]; p1[i]=’\0’;

6 8门课程,求出学生平均分,记录ave 成员,85.5,78.875

int i; a->ave=0.0; for(i=0;i

a->ave=a->ave+a-s[i]; a->ave=a->ave/N;

7N 名学生,求出平均分 85—78.625 double av=0.0; strec*p=h->next; while(p!=NULL)

{av=av+p->s; p=p->next;} return av/N;

11N 名学生,函数返回分数最高的学生人数 int i,j=0,max=a[0].s;

for(i=0;i

if(max

if(max==a[i].s) b[j++]=a[i]; return j;

14 删除字符串尾部*号 while(*a!=’\0’;) a++; a--; while(*a==’*’) a--; *(a+1)=’\0’;

16 N 名学生学号置空串给成绩置-1,作为函数返回stremp

int i; STREC str={“\0”,-1}; for(i=0;i

if(strcmp(a[i].num,b)==0) str=a[i]; return str;

17将s 字符串中除下标为偶数,ASCII 码为偶数外其他全删除ABCDEFG123456 t 246 int i;,j=0;

for(i=0;s[i]!=’\0’;i++) if(i%2==0&&s[i]%2==0) t[j++]=s[i]; t[j]=’\0’; 18 cos(x)-x=0的一个实根 double x1=0.0,x0;

do {x0=x1; x1=cos(x0);} while(fabs(x0-x1)>=1e-6); return x1;

19 将字符串前部*号移到最后边 A*B*** int i=0;n=0; char*p; p=a; while(*p==’*’) {n++;p++} while(*p) {a[i]=*p;i++;p++} while(n!=0)

{a[i]=’*’;i++;n--} a[i]=’\0’; 20 N 名学生 分数最低b ,返回分数最低学生人数 int i,j=0,n=0,min;

min=a[0].s; for(i=0;i

{*(b+j)=a[i]; j++;n++;} return n; 21

506583

.6)

()2()1(s n In In In +-++=

int i; double s=0.0;

for(i=1;i

22 删除字符串前面和后面的*号 A* B* * C int i,j=0;

for(i=h;i

23 把字符串中偶数删除 ABCDEFGIJK BDFHJ int i,j=0; k=strlen(s); for(i=1;i

25 删除除字符串尾部的所有*

char*t=a; for( ;t<=p;t++) if(*t!=’*’) *(a++)=*t; for( ;*t!=’\0’;t++) *(a++)=*t; *a=’\0’;

26 按分数降序排列学生记录,高分前

int i,j; STREC t; for(i=1;i

{t=a[j];a[j]=a[j+1];a[j+1]=t;} 27 高于等于平均分的学生数据放在b 所指的数组中。 int i; double av=0.0; *n=0; for(i=0;i

av=av+a[i].s; av=av/N; for(i=0;i

{b[*n]=a[i];*n=*n+1;} return av;

28 1-m 能被7或11整除的所有数,m=50,7 11 14 21 22 int i,j=0; for(i=1;i<=m;i++) if(i%7==0||i%11==0)

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

29 将字符串前导*号全部删除,中间尾部不删

char*p=a; while(*p==’*’) p++;

for(;*p!=’\0’;p++;a++)

*a=*p; *a=’\0’;

36 M个字符串按顺序合并成新字符串

int i,j,k=0;

for(i=0;i

for(j=0;a[i][j]!=’\0’;j++)

b[k++]=a[i][j]; b[k]=’\0’;

37 删除字符串指定下标字符world 3 word

int i,k=0;

for(i=0;a[i]!=’\0’;i++)

if(i!=n) b[k++]=a[i];

b[k]=’\0’;

38 n个整数,要求把下标从0-p 12345 2 45123

int x,j,ch;

for(x=0;x<=p;x++)

{ch=w[0]; for(j=1;j

w[n-1]=ch;}

39 M行N列WSHWSH int i,j,k=0;

for(i=0;i

for(j=0;j

b[k++]=s[j][i]; b[k]=’\0’;

41 s字符串中ASCII码值为奇数的字符删除

int i,j=0,n;

n=strlen(s);

for(i=0;i

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

{t[j]=s[i]; j++;} t[j]=’\0’;

42 删除数组中相同的数,只剩一个。222344—234 int i,j=1;

for(i=1;i

if(a[j-1]!=a[i])

a[j++]=a[i]; return j; 50 ss所指字符串中所有下

标为奇数的字母转为大写

abc4—aBc4

int i;

for(i=0;ss[i]!=’\0’;i++)

if(i%2==1&&ss[i]>=’a’&&s

s[i]<=’z’)

ss[i]=ss[i]-32;

51 a b两个数合并成新的整

数a=45 b=12 c=4215

*c=b/10+(a%10)*10+(b%10

)*100+(a/10)*1000;

a=45,b=12 c=5241

*c=(a%10)*1000+(b%10)*1

00+(a/10)*10+(b/10);

52字符串尾部*号不多于n

个,多余则删除

int i=0,k=0; char*p,*t;

p=t=a; while(*t) t++; t--;

while(*t==’*’) { k++;t--; }

if(k>n)

{while(*p&&p

{ a[i]=*p; i++;p++;}

a[i]=’\0’;}

55指定分数范围内的学生

数据放b数组中60、69

int i,j=0; for(i=0;i

if(a[i].s>=1&&a[i].s<=h)

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

66计算输出整数n的所有

因子之和856 763

int s=0,i;

for(i=2;i<=n-1;i++)

if(n%i==0) s+=i; return s;

67 Sn=1+1/1!+1/2!+-+1/n!

double t,sn=1.0; int 1.0;

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

{t=1.0; for(j=1;j<=i;j++)

t*=j; sn+=1.0/t; }

return sn;

68 Sn=1+0.5x --0.21 1.1000

doubles1=1.0,p=1.0,sum=0.,

s0,t=1.0; int n=1;

do {s0=s1; sum+=s0; t*=n;

p*=(0.5-n+1)*x; s1=p/t;n++}

while(fabs(s1-s0)>=1e-6)

return sum;

69

5.0

10

1

]

10

/

-

[

S)

(‘

χ

χ

χ

χ

=

=

double x1=0.0,s=0.0; int i;

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

x1=x1+x[i]; x1=x1/10;

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

s=s+(x[i]-x1)*(x[i]-x1);

return sqrt(s/10);

70计算数组(9)中每相邻

的两元素的平均值的平方

根和

double sum=0.0; int i,j=1;

for(i=0;i<9;i++) if(j<=8)

{sun+=sqrt((x[i]+x[i+1])/2.0

);} return sum;

71s=(1-1/2)+(1/3-1/4)+(1/(2

n-1)-1/2n)

int i; double s=0.0;

for(i=1;i

s=s+(1.0/(2*i-1)-1.0/(2*i));

return s;

72

50

*

*

2

1

1

3

2

1

1

2

1

1

1

X

X

X

X

X

X

s+

+

+

=

double sum=0,tmp=1; int i;

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

{tmp=tmp*i;

sum+=1.0/tmp;} return sum;

73计算并输出n以内所有

能被5或9整除的倒数之和

int i; double sum=0.0;

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

if(i%5==0||i%9==0)

sum+=1.0/i; return sum;

74 计算输出3~n所有素数

的平方根之和148.87427

int m,k,i; double s=0.0;

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

{k=sqrt(m);

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

相关文档
最新文档