文档介绍:二级C语言上机题库(最新版)
一、程序填空题
1、程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。函数fun的功能是对形参b所指结构体变量中的数据进行修改,最后在主函数中输出修改后的数据。
例如: b所指变量t中的学号、姓名、和三门课的成绩依次是: 10002、"ZhangQi"、93、85、87,修改后输出t中的数据应为:10004、" LiJie "、93、85、87。
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:。
不得增行或删行,也不得更改程序的结构!
#include <>
#include <>
struct student {
long sno;
char name[10];
float score[3];
};
void fun( struct student *b)
{
/**********found**********/
b__1__ = 10004;
/**********found**********/
strcpy(b__2__, "LiJie");
}
main()
{ struct student t={10002,"ZhangQi", 93, 85, 87};
int i;
printf("\n\nThe original data :\n");
printf("\nNo: %ld Name: %s\nScores: ",, );
for (i=0; i<3; i++) printf("% ", [i]);
printf("\n");
/**********found**********/
fun(__3__);
printf("\nThe data after modified :\n");
printf("\nNo: %ld Name: %s\nScores: ",, );
for (i=0; i<3; i++) printf("% ", [i]);
printf("\n");
}
2、给定程序中,函数fun的功能是计算下式
直到,并把计算结果作为函数值返回。
例如,若形参e的值为1e-3,。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:。
不得增行或删行,也不得更改程序的结构!
#include <>
double fun(double e)
{ int i; double s, x;
/**********found**********/
s=0; i=__1__;
x=;
while(x>e){
/**********found**********/
__2__;
/**********found**********/
x=(*i-1)/((__3__)*(*i));
s=s+x;
}
return s;
}
main()
{ double e=1e-3;
printf("\nThe result is: %f\n",fun(e));
}
3、给定程序中,函数fun的功能是: 将s所指字符串中的所有数字字符移到所有非数字字符之后,并保持数字字符串和非数字字符串原有的先后次序。例如,形参s所指的字符串为:def35adh3kjsdf7。执行结果为:defadhkjsdf3537。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:。
不得增行或删行,也不得更改程序的结构!
//
#include <>
void fun(char *s)
{ int i, j=0, k=0; char t1[80], t2[80];
for(i=0; s[i]!='\0'; i++)
if(s[i]>='0' && s[i]<='9')
{
/**********found**********/
t2[j]=s[i]; ___1___;
}
else t1[k++]=s[i];
t2[j]=0; t1[k]=0;
/**********found**********/
for(i=0; i<k; i++) ___2___;
/*