就业数据资源平台
当前位置:首页 > C++语言程序设计
2012计算机二级C++上机模拟应用题及答案10

46: 第46题 学生得记录由学号和成绩组称个,n名大学生得数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能时:按分数的高低排列学生的记录,高分在前。 


答案:


void fun(strec a[])


{int i,j;


strec t;


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


for(j=i;s<n;j++)


if(a.s<a[j].s)


{t=a;


a=a[j];


a[j]=t; }}


47: 第47题 请编写一个函数void fun(char *ss),其功能时:将字符串ss中所有下标为奇数位置上的字母转换为大写(若位置上不是字母,则不转换)。 


答案:


void fun(char *ss)


{int i,n=0;


char *p=ss;


while(*p)


{n++;


p++;}


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


if ((ss=‘a’&ss<=‘z’)&i%2!=0)


ss=ss-32;


ss=‘\0’;}


48: 第48题 请编写函数fun,其功能是:将两个两位数的正整数a,b合并成一个整数放在c中。合并的方式是:将a数的十位和个位依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和个位上。 


答案:www.ExamW.CoM


void fun(int a,int b,long *c)


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


49: 第49题 请编写函数fun,其功能是:将s所指字符串中下标位偶数同时ascii值为奇数的字符删除,s中剩余的字符形成的新串放在t所指的数组中。 


答案:


void fun(char *s,char t[])


{int i,j=0,n=strlen(s);


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


if(i%2==0&s%2!=0)


else


{f[j]=s;


j++;}


t[j]=‘\0’;}


50: 第50题 已知学生的记录是由学号和学习成绩构成,n名学生的数据已存入a机构体数组中。请编写函数fun,该函数的功能是:找出成绩最高的学生记录,通过形参返回主函数(规定只有一个最高分)。 


答案:


void fun(stu a[],stu *s)


{int i,max;


max=a[0].s;


for (i=0;i<n;i++)自www.Examw.com


if(a.s>max)


{max=a.s;


*s=a;}}

就业数据资源平台