学历培训
外语培训
计算机
IT认证
职业资格
财会金融
职业技能
中小学
考研硕士
企业培训
出国留学
脑力开发
综合资讯
公务员
建筑
学历教育
医药
外贸
超级分类
电子商务
会议
总裁世界
最新开课
最新机构
最新资讯
课程资料
课程专题
网站地图
例如,LEVEL和Level是"回文",而LEVLEV不是"回文"。
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
给定源程序:
#include
int fun(char *s)
{char *lp,*rp;
/**********found**********/
lp= __1__ ;
rp=s+strlen(s)-1;
while((toupper(*lp)==toupper(*rp)) && (lp /**********found**********/ lp++; rp __2__ ;} /**********found**********/ if(lp else return 1; } main() {char s[81]; printf("Enter a string: "); scanf("%s",s); if(fun(s)) printf("\n\"%s\" is a Palindrome.\n\n",s); else printf("\n\"%s\" isn't a Palindrome.\n\n",s); } 解题答案: /**********第一空**********/ lp= s ; /**********第二空**********/ lp++; rp -- ;} /**********第三空**********/ if(lp ****************************************** [NextPage] 二、改错题:给定程序MODI1.C中fun函数的功能是:求出以下分数序列的前n项之和。 2 3 5 8 13 21 ┄┄ , ┄┄ , ┄┄ , ┄┄ , ┄┄ , ┄┄ , …… 1 2 3 5 8 13 和值通过函数值返回main函数。 例如,若 n = 5,则应输出: 8.391667。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构! 给定源程序: #include /**************found**************/ fun (int n) {int a = 2, b = 1, c, k ; double s=0.0 ; for (k = 1; k <= n; k++) {s = s + 1.0 * a / b ; /**************found**************/ c = a; a += b; b += c; } return(s); } main() {int n = 5 ; printf("\nThe value of function is: %lf\n", fun (n)); } 解题答案: /**************found**************/ double fun(int n) /**************found**************/ c=a; a+=b; b=c; ****************************************** [NextPage] 三、程序题:请编写函数fun,函数的功能是:将大于形参m且紧靠m的k个素数存入xx所指的数组中。例如,若输入17, 5,则应输出:19, 23, 29, 31, 37。函数fun中给出的语句仅供参考。 注意: 部分源程序在文件PROG1.C文件中。 请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 给定源程序: #include void fun(int m, int k, int xx[]) { } main() { int m, n, zz[1000] ;void NONO (); printf("\nPlease enter two integers:"); scanf("%d %d", &m, &n); fun(m, n, zz); for(m = 0 ; m < n ; m++) printf("%d ", zz[m]); printf("\n"); NONO(); } void NONO () {/* 本函数用于打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/ int m, n, zz[1000], i ; FILE *rf, *wf ; rf = fopen("in.dat","r"); wf = fopen("out.dat","w"); for(i = 0 ; i < 10 ; i++) { fscanf(rf, "%d %d", &m, &n); fun(m, n, zz); for(m = 0 ; m < n ; m++) fprintf(wf, "%d ", zz[m]); fprintf(wf, "\n"); } fclose(rf); fclose(wf); } 参考答案: void fun(int m, int k, int xx[]) { int i, j=1, t=m+1; while(j<=k) { /* 以下完成判断素数,并存放到数组xx中 */ for(i = 2 ; i < t; i++) if(t % i==0) break; if(i==t) { xx[j-1] = i; j++; } t++; } } }
lp++; rp __2__ ;}
if(lp else return 1; } main() {char s[81]; printf("Enter a string: "); scanf("%s",s); if(fun(s)) printf("\n\"%s\" is a Palindrome.\n\n",s); else printf("\n\"%s\" isn't a Palindrome.\n\n",s); } 解题答案: /**********第一空**********/ lp= s ; /**********第二空**********/ lp++; rp -- ;} /**********第三空**********/ if(lp ****************************************** [NextPage] 二、改错题:给定程序MODI1.C中fun函数的功能是:求出以下分数序列的前n项之和。 2 3 5 8 13 21 ┄┄ , ┄┄ , ┄┄ , ┄┄ , ┄┄ , ┄┄ , …… 1 2 3 5 8 13 和值通过函数值返回main函数。 例如,若 n = 5,则应输出: 8.391667。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构! 给定源程序: #include /**************found**************/ fun (int n) {int a = 2, b = 1, c, k ; double s=0.0 ; for (k = 1; k <= n; k++) {s = s + 1.0 * a / b ; /**************found**************/ c = a; a += b; b += c; } return(s); } main() {int n = 5 ; printf("\nThe value of function is: %lf\n", fun (n)); } 解题答案: /**************found**************/ double fun(int n) /**************found**************/ c=a; a+=b; b=c; ****************************************** [NextPage] 三、程序题:请编写函数fun,函数的功能是:将大于形参m且紧靠m的k个素数存入xx所指的数组中。例如,若输入17, 5,则应输出:19, 23, 29, 31, 37。函数fun中给出的语句仅供参考。 注意: 部分源程序在文件PROG1.C文件中。 请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 给定源程序: #include void fun(int m, int k, int xx[]) { } main() { int m, n, zz[1000] ;void NONO (); printf("\nPlease enter two integers:"); scanf("%d %d", &m, &n); fun(m, n, zz); for(m = 0 ; m < n ; m++) printf("%d ", zz[m]); printf("\n"); NONO(); } void NONO () {/* 本函数用于打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/ int m, n, zz[1000], i ; FILE *rf, *wf ; rf = fopen("in.dat","r"); wf = fopen("out.dat","w"); for(i = 0 ; i < 10 ; i++) { fscanf(rf, "%d %d", &m, &n); fun(m, n, zz); for(m = 0 ; m < n ; m++) fprintf(wf, "%d ", zz[m]); fprintf(wf, "\n"); } fclose(rf); fclose(wf); } 参考答案: void fun(int m, int k, int xx[]) { int i, j=1, t=m+1; while(j<=k) { /* 以下完成判断素数,并存放到数组xx中 */ for(i = 2 ; i < t; i++) if(t % i==0) break; if(i==t) { xx[j-1] = i; j++; } t++; } } }
else return 1;
}
main()
{char s[81];
printf("Enter a string: "); scanf("%s",s);
if(fun(s)) printf("\n\"%s\" is a Palindrome.\n\n",s);
else printf("\n\"%s\" isn't a Palindrome.\n\n",s);
解题答案:
/**********第一空**********/
lp= s ;
/**********第二空**********/
lp++; rp -- ;}
/**********第三空**********/
if(lp ****************************************** [NextPage] 二、改错题:给定程序MODI1.C中fun函数的功能是:求出以下分数序列的前n项之和。 2 3 5 8 13 21 ┄┄ , ┄┄ , ┄┄ , ┄┄ , ┄┄ , ┄┄ , …… 1 2 3 5 8 13 和值通过函数值返回main函数。 例如,若 n = 5,则应输出: 8.391667。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构! 给定源程序: #include /**************found**************/ fun (int n) {int a = 2, b = 1, c, k ; double s=0.0 ; for (k = 1; k <= n; k++) {s = s + 1.0 * a / b ; /**************found**************/ c = a; a += b; b += c; } return(s); } main() {int n = 5 ; printf("\nThe value of function is: %lf\n", fun (n)); } 解题答案: /**************found**************/ double fun(int n) /**************found**************/ c=a; a+=b; b=c; ****************************************** [NextPage] 三、程序题:请编写函数fun,函数的功能是:将大于形参m且紧靠m的k个素数存入xx所指的数组中。例如,若输入17, 5,则应输出:19, 23, 29, 31, 37。函数fun中给出的语句仅供参考。 注意: 部分源程序在文件PROG1.C文件中。 请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 给定源程序: #include void fun(int m, int k, int xx[]) { } main() { int m, n, zz[1000] ;void NONO (); printf("\nPlease enter two integers:"); scanf("%d %d", &m, &n); fun(m, n, zz); for(m = 0 ; m < n ; m++) printf("%d ", zz[m]); printf("\n"); NONO(); } void NONO () {/* 本函数用于打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/ int m, n, zz[1000], i ; FILE *rf, *wf ; rf = fopen("in.dat","r"); wf = fopen("out.dat","w"); for(i = 0 ; i < 10 ; i++) { fscanf(rf, "%d %d", &m, &n); fun(m, n, zz); for(m = 0 ; m < n ; m++) fprintf(wf, "%d ", zz[m]); fprintf(wf, "\n"); } fclose(rf); fclose(wf); } 参考答案: void fun(int m, int k, int xx[]) { int i, j=1, t=m+1; while(j<=k) { /* 以下完成判断素数,并存放到数组xx中 */ for(i = 2 ; i < t; i++) if(t % i==0) break; if(i==t) { xx[j-1] = i; j++; } t++; } } }
****************************************** [NextPage] 二、改错题:给定程序MODI1.C中fun函数的功能是:求出以下分数序列的前n项之和。
2 3 5 8 13 21
┄┄ , ┄┄ , ┄┄ , ┄┄ , ┄┄ , ┄┄ , ……
1 2 3 5 8 13
和值通过函数值返回main函数。
例如,若 n = 5,则应输出: 8.391667。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动 main 函数,不得增行或删行,也不得更改程序的结构!
/**************found**************/
fun (int n)
{int a = 2, b = 1, c, k ;
double s=0.0 ;
for (k = 1; k <= n; k++)
{s = s + 1.0 * a / b ;
c = a; a += b; b += c;
return(s);
{int n = 5 ;
printf("\nThe value of function is: %lf\n", fun (n));
double fun(int n)
c=a; a+=b; b=c;
******************************************
[NextPage] 三、程序题:请编写函数fun,函数的功能是:将大于形参m且紧靠m的k个素数存入xx所指的数组中。例如,若输入17, 5,则应输出:19, 23, 29, 31, 37。函数fun中给出的语句仅供参考。
注意: 部分源程序在文件PROG1.C文件中。
请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
void fun(int m, int k, int xx[])
{
int m, n, zz[1000] ;void NONO ();
printf("\nPlease enter two integers:");
scanf("%d %d", &m, &n);
fun(m, n, zz);
for(m = 0 ; m < n ; m++)
printf("%d ", zz[m]);
printf("\n");
NONO();
void NONO ()
{/* 本函数用于打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/
int m, n, zz[1000], i ;
FILE *rf, *wf ;
rf = fopen("in.dat","r");
wf = fopen("out.dat","w");
for(i = 0 ; i < 10 ; i++) {
fscanf(rf, "%d %d", &m, &n);
for(m = 0 ; m < n ; m++) fprintf(wf, "%d ", zz[m]);
fprintf(wf, "\n");
fclose(rf);
fclose(wf);
参考答案:
int i, j=1, t=m+1;
while(j<=k)
/* 以下完成判断素数,并存放到数组xx中 */
for(i = 2 ; i < t; i++)
if(t % i==0) break;
if(i==t) {
xx[j-1] = i;
j++;
t++;
最新课程