2015年计算机二级C语言上机操作题及答案(58)
发布时间:2011/7/17 18:32:52 来源:城市学习网 编辑:ziteng
第1题 请补充main函数,该函数的功能是,将保存在磁盘文件中的10个学生的数据中的第1、3、5、7、9个学生的数据输入计算机,并在屏幕上显示出来。
公在横线上填入所编写的若干表达式或语句,勿改动函数中的其他任何内容。
#include
#include
main()
{
int i, n;
long f=1;
printf("Input n: ");
scanf("%d",___1___);
for(___2___; i<=n; i++)
___3___;
printf("%d ! = %ld\n", n, f);
}
第1题答案
第1处填空:&n
第2处填空:i=1
第3处填空:f*=I 或 f=f*I 或 f=i*f [NextPage] 第2题 下列给定程序中函数fun的功能是:先将在字符串s 中的字符按正序存放到t串中,然后把s中的字符按逆序连接到t串中的后面。例如:当s中的字符串为ABCDE时,则t中的字符串应为ABCEEEDCB。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
#include
#include
void fun(char *s, char *t)
{
int i, s1;
s1 = strlen(s);
/********found********/
for (i=0; i<=s1; i++)
t[i] = s[i];
for (i=0; i t[s1+i] = s[s1-i-1];
/********found********/
t[s1] = '\0';
}
main()
{
char s[100], t[100];
printf("\nPlease enter string s:");
scanf("%s", s);
fun(s, t);
printf("The result is: %s\n", t);
}
第2题答案
第1处:for(i=0;i<=s1;i++) 应改为for(i=0;i第2处:t[s1]=’\0’; 应改为t[1*s1]=’\0’; [NextPage] 第3题
编写函数 fun,它的功能是:求n以内(不包括n)同时能被3与7整除的所有自然数之和的平方根s,并作为函数值返回。
例如,若n 为1000时,函数值应为s=153.909064 。
请改动主函数main和其他函数中的任何内宾,仅在函数fun的花括号中填入所编写的若干语句。
#include
#include
#include
double fun( int n)
{
}
main()
{
FILE *out ;
printf("s=%f\n", fun ( 1000) );
out=fopen ("out.dat","w");
fprintf(out, "%f", fun ( 1024) );
fclose (out );
}
第3题答案
double fun(int n )
{
double s=0.0;
int I;
for(i=1;i if(i%3==0&&i%7==0)
s=s+i;
s=sqrt(s);
return s;
}