2001年计算机等级考试上机题,2001年9月计算机等级考试二级C语言上机试题

c语言

本文由韩云祥李慧琴贡献

doc文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机

查看。

2001年 语言上机试题(13 49、 (13、 2001年9月计算机等级考试二级 C 语言上

机试题(13、49、50)

作者:unknown 文章来源:unknown 点击数: /*程序修改题13

更新时间:2005-9-4

给定程序 MODI1.C 中函数 fun 的功能是:将字符串中的内容按 逆序输出,但不

改变字符串中的内容。 例如,若字符串为 abcd,则应输出:dcba。 请改正程序中的

错误,使它能计算出正确的结果。 注意:不要改动 main 函数,不得增行或删行,也

不得更改程序 的结构! */ #include /************found************/ fun(char

*a) //fun (char a) { if ( *a ) { fun(a+1) ; /************found***********

*/ printf("%c",*a); // printf("%c" *a) ; } } main( ) { char s[10]="abcd";

printf("处理前字符串=%s\n 处理后字符串=", s); fun(s); printf("\n") ; }

/* 编程题 请编写一个函数 fun,它的功能是:比较两个字符串的长度, (不得

调用 C 语言提供的求字符串长度的函数),函数返回较长的字 符串。若两个字符串长

度相同,则返回第一个字符串。 例如,输入 beijing shanghai (为回车键), 函数

将返回 shanghai。 注意: 部分源程序存在文件 PROG1.C 文件中。 请勿改动主函数

main 和其它函数中的任何内容,仅在函数 fun 的花括号中填入你编写的若干语句。

*/ #include char *fun ( char *s, char *t)

{// char *ss=s, *tt=t; while((*ss)&&(*tt)) { ss++; tt++; } if(*tt) re

turn(t); else return(s); // } main( ) { char a[20],b[10],*p,*q; int i; pri

ntf("Input 1th string:") ; gets( a); printf("Input 2th string:") ; gets( b); printf("%s\n",fun (a, b )); NONO (); } NONO ( ) {/* 本函数用于打开文件,

输入数据,调用函数,输出数据,关闭文件。 */ FILE *fp, *wf ; int i ; char a[20], b[20] ; fp = fopen("bc03.in","r") ; if(fp == NULL) { printf("数据文件

bc03.in 不存在!") ; return ; } wf = fopen("bc03.out","w") ; for(i = 0 ; i

< 10 ; i++) { fscanf(fp, "%s %s", a, b) ; fprintf(wf, "%s\n", fun(a, b))

; } fclose(fp) ; fclose(wf) ; } /* bc03.in 内容如下: alskdf fdslkfjds dks

fjf dssdd jkfdf sdlkfjds lksdjflksd flkdsjf lksdjf fslkdjf fsdlj fsdlkff

flsdjk fsdklfad fslkj flsjfslkd flksjflksdfjk nlfksdn lkjfs fsfsfsd *

/ /* dksfjf sdlkfjds lksdjflksd fslkdjf fsdlkff fsdklfad flsjfslkd flksjfl

ksdfjk fsfsfsd */ bc03.out 内容应当如下: fdslkfjds

/*程序修改题49 代码:/* 给定程序 MODI1.C 中 fun 函数的功能是:判断两个

指针所 指存储单元中的值的符号是否相同;若相同函数返回1,否则返 回0。这两个

存储单元中的值都不为0。 请改正程序中的错误,使它能得出正确的结果。 注意:不

要改动 main 函数,不得增行或删行,也不得更改 程序的结构! */ #include #inc

lude /**********found**********/ fun ( double *a, double *b ) //fun ( doub

le *a, *b ) { /**********found**********/ if ( *a * *b > 0.0 ) // if ( a *

b > 0.0 ) return 1; else return 0; } main( ) { double n , m; clrscr( );

printf ("Enter n , m : "); scanf ("%lf%lf", &n, &m ); printf( "\nThe

value of function is: %d\n", fun ( &n, &m ) ); NONO( ); } NONO( ) {/* 请在

此函数内打开文件,输入测试数据,调用 fun 函数, 输出数据,关闭文件。 */ in

t i ; double n, m ; FILE *rf, *wf ; rf = fopen("gc8.in", "r") ; wf = fopen("gc8.out", "w") ; for(i = 0 ; i < 10 ; i++) { fscanf (rf, "%lf%lf", &n, &

m ); fprintf(wf, "%d\n", fun(&n, &m)) ; } fclose(rf) ; fclose(wf) ; } /* g

c8.in 内容如下: -22.993612 84.57629812 101.434234 -999.888432 -454.78678

-987.7856786 67987.798989 7878.564564564 -47238.312312 87212.212121 -8989.

3424345 7899.9897897 2121.212121 -6767.2121298 -4324.5454 -32132.3232 899.

9898312 7878.231212 21210.2121 -12332.2332 */ /* 正确程序生成的 gc8.out 内

容如下: 0 0 1 1 0 0 0 1 1 0 */

/*编程题 请编一个函数 fun(int *a, int n, int *odd, int *even),函 数的

page 1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值