ImageVerifierCode 换一换
你正在下载:

093js.docx

[预览]
格式:DOCX , 页数:21 ,大小:23.14KB ,
资源ID:8183876      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8183876.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(093js.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

093js.docx

1、093js(093)上海大学2009-2010年春季学期操作题(A) 2010.6课程名: 程序设计基础(C语言) 课程号: 00863006 学分: 5 上机操作题,4题,共70分第1题(源程序文件 E:answer1-A-1.C )【16分】上机要求:下列程序包含4个错误(2个函数各2行有错误),请输入该程序的代码,找出并更正程序错误,在修改行代码后增加“/*/”注释,将修改后的源程序保存到 E:answer1-A-1.C 中。程序功能:从键盘上输入一行字符串,选择其中的大写字母,并输出。如输入: Hello, This Is An English Sentence.则输出: HTIAES

2、再如输入: ABC, abc, DEF, 123.则输出: ABCDEF函数说明: 程序中函数str_select_up从字符串a中选择大写字母到字符串b中,同时返回字符串b。函数中变量i用于遍历字符串a,变量k用于计数大写字母个数,同时用于b数组的下标。主函数main从键盘上输入一行字符串,调用str_select_up函数取其中大写字母到字符串b,并输出字符串b。2个函数各有2个错误,分布在不同代码行上。带错误原程序:#include char *str_select_up( char b, char a ) int i, k = 0; for ( i=0; ai!=0; i+ ) if

3、( ai=A & ai=Z ) bk+ = ai; bk = 0; return b;main() char a100, b100; gets( a100 ); str_select_up( b, a ) puts( b );第2题(源程序文件 E:answer1-A-2.C )【18分】上机要求:按程序功能要求编写程序,并将程序代码保存到 E:answer1-A-2.C 中。程序功能:编写程序,按示例实现以下功能:(1) 输出本题考试的学期号与题号,即“093,1-A-2”(2) 输出考生的基本信息,包括实际考试机房、机号、机号的单双(机号单输出Odd,机号双输出Even)、学号、姓名拼音。

4、(3) 从键盘上输入3个整数。(4) 输出其中的最大值与最小值。(5) 输出其中大小居中的数值。如输入: 70 50 90则输出: 093,1-A-2 D413-27(Odd),09123456,ZhangDaHai 注:本行请按考生实际情况输出 Max=90, Min=50 Midd=70示例说明:输出共4行,第1行为本考题基本信息,应为“093, 1-A-2”;第2行为考生本次考试的基本信息,请按实际情况输出,示例表示D413机房的27号计算机,机号为单(输出Odd),学号为09123456,姓名拼音为ZhangDaHai(张大海);输入三数的最大值为90,最小值为50,中间值为70。再如

5、输入: -90 -50 -70则输出: 093,1-A-2 D413-27(Odd),09123456,ZhangDaHai 注:本行请按考生实际情况输出 Max=-50, Min=-90 Midd=-70示例说明:输入三数可以为负数,最大值为-50,最小值为-90,中间值为-70。第3题(源程序文件 E:answer1-A-3.C )【16分】上机要求:按程序功能要求编写程序,并将程序代码保存到 E:answer1-A-3.C 中。程序功能:从键盘上输入n和n个整数(设n与每个整数均取值1至5),按示例格式输出n行数字图形,每行的数字及数字个数与输入数相对应。编写程序可以使用或参考所提供的函

6、数。如输入: 5 5 4 3 2 1则输出(表示空格,表示回车): 示例说明:输入的第1个数为5,表示输出共5行,右对齐形状。接着输入的第1个数为5,则输出的第1行有5个数(取值1至5),数字之间含有1个空格,数值1之前有2*(5-5)=0个空格;以此类推。再如输入: 3 2 3 2则输出(表示空格,表示回车): 示例说明:输入的第1个数为3,表示输出共3行。接着输入的第1个数为2,则输出的第1行有2个数(取值1至2),数字之间含有1个空格,数值1之前有2*(5-2)=6个空格;以此类推。函数说明:下列代码提供2个函数,可供编写程序时调用或参考。其中函数sca_0从键盘上输入n和n个整数至数组

7、a,并返回整数n;函数prtline可以输出图案中的某一行,参数m表示输出该行的m个数(取值1至m)。函数代码:函数代码说明int sca_n(int a) int n, i; scanf(%d,&n); for (i=0;in;i+) scanf(%d,&ai); return n;void prtline( int m ) int i; for ( i=1; i=5-m; i+ ) printf( ); for ( i=1; i=m; i+ ) printf( %d , i ); printf( n );函数:输入n和n个整数至数组 先输入整数n 再输入n个整数至数组a中 返回输入的整数n

8、函数:输出图案中的一行,m个数字 先输出2*(5-m)个空格 循环5-m次,每次输出2个空格 再输出m个数字,数字之后带有空格 最后输出换行第4题(源程序文件 E:answer1-A-4.C )【20分】上机要求:按程序功能要求编写程序,并将程序代码保存到 E:answer1-A-4.C 中。程序功能:输入10个整数(存贮在一维数组a中),按示例格式计算并输出以下结果。(1) 查找数值为100的元素并输出其下标(如果有多个100则输出第1个100的下标),如果没有找到,则输出Not Found;(2) 统计数值为0的元素个数并输出;(3) 从大到小排序,并按每行4个数的格式输出;如输入: 10

9、 20 30 40 50 100 60 70 80 100则输出: a5=100Count(0)=0 100 100 80 7060 50 40 3020 10示例说明:输入10个整数,第1个100出现在下标5位置,数值0没有出现,排序后分3行输出,第1行与第2行各有4个数。如输入: 10 0 -50 0 50 60 70 80 90 199则输出: Not Found(100) Count(0)=2 199 90 80 70 60 50 10 0 0 -50示例说明:输入10个整数(可以有负数或超过100的数),其中100没有出现,0出现2次。排序后分3行输出,第1行与第2行各有4个数。(0

10、93)上海大学2009-2010年春季学期操作题(A)参考答案第1题(1-A-1.c)更正程序错误点#include char *str_select_up( char b, char a ) int i, k = 0; for ( i=0; ai!=0; i+ ) /*/ if ( ai=A & ai=Z ) bk+ = ai; bk = 0; /*/ return b;main() char a100, b100; gets( a ); /*/ str_select_up( b, a ); /*/ puts( b );!后双等于改为1个等于双引号改为单引号去掉数组名后的中括号缺分号第2题(

11、1-A-2.c)#include main() int a,b,c,max,min,mid; printf(093,1-A-2n ); /* 输出学期与题号 */ printf(D413-27(Odd),09123456,ZhangDaHain); /* 输出本人信息 */ scanf(%d%d%d, &a,&b,&c); if (a=b & a=c) max=a; /* 求最大值 */ else if (b=a & b=c) max=b; else max=c; if (a=b & a=c) min=a; /* 求最小值 */ else if (b=a & b=c) min=b; else

12、min=c; mid=a+b+c-max-min; /* 求中间值 */ printf(Max=%d,Min=%dn,max,min); printf(Midd=%dn,mid);第3题(1-A-3.c)/* 方法1:使用函数 */#include int sca_n(int a) int n, i; scanf(%d,&n); for (i=0;in;i+) scanf(%d,&ai); return n;void prtline( int m ) int i; for ( i=1; i=5-m; i+ ) printf( ); for ( i=1; i=m; i+ ) printf( %d

13、 , i ); printf( n );main() int n,i,a10; n=sca_n(a); for (i=0;in;i+) prtline(ai);/* 方法2:不使用函数 */#include main() int n,i,j,a10; scanf(%d,&n); for (i=0;in;i+) scanf(%d,&ai); for (i=0;in;i+) for ( j=1; j=5-ai; j+ ) printf( ); for ( j=1; j=ai; j+ ) printf( %d , j ); printf( n ); 第4题(1-A-4.c)/* 方法1:使用函数 *

14、/#include void sca(int a,int n) int i; for (i=0;in;i+) scanf(%d,&ai);int find(int a,int n,int x) int i; for (i=0;in;i+) if (ai=x) return i; return -1;int count(int a,int n,int x) int ct=0, i; for (i=0;in;i+) if (ai=x) ct+; return ct;void sort_b(int a,int n) int i, j, t; for (i=0;in-1;i+) for (j=0;jn

15、-1-i;j+) if (ajaj+1) t=aj; aj=aj+1; aj+1=t; void prt_m(int a,int n,int m) int i; for (i=0;i0) printf(a%d=100n,k); else printf(Not Found(100)n); ct=count(a,10,0); printf(Count(0)=%dn,ct); sort_b(a,10); prt_m(a,10,4);/* 方法2:不使用函数 */#include #define N 10main() int aN,i,j,t,ct; for (i=0;iN;i+) scanf(%d,

16、&ai); for (i=0;iN;i+) if (ai=100) break; if (iN) printf(a%d=100n,i); else printf(Not Found(100)n); ct=0; for (i=0;iN;i+) if (ai=0) ct+; printf(Count(0)=%dn,ct); for (i=0;iN-1;i+) for (j=0;jN-1-i;j+) if (ajaj+1) t=aj; aj=aj+1; aj+1=t; for (i=0;iN;i+) printf(%dt,ai); if (i%4=3|i=N-1) printf(n); (093)上

17、海大学2009-2010年春季学期操作题(B) 2010.6课程名: 程序设计基础(C语言) 课程号: 00863006 学分: 5 上机操作题,4题,共70分第1题(源程序文件 E:answer1-B-1.C )【16分】上机要求:下列程序包含4个错误(2个函数各2行有错误),请输入该程序的代码,找出并更正程序错误,在修改行代码后增加“/*/”注释,将修改后的源程序保存到 E:answer1-B-1.C 中。程序功能:从键盘上输入一行字符串,选择其中的小写字母,并输出。如输入: Hello, Everybody.则输出: elloverybody再如输入: ABC, abc, DEF, 12

18、3.则输出: abc函数说明: 程序中函数str_select_low从字符串a中选择小写字母到字符串b中,同时返回字符串b。函数中变量i用于遍历字符串a,变量k用于计数小写字母个数,同时用于b数组的下标。主函数main从键盘上输入一行字符串,调用str_select_low函数取其中小写字母到字符串b,并输出字符串b。2个函数各有2个错误,分布在不同代码行上。带错误原程序:#include char *str_select_low( char b, char a ) int i, k = 0; for ( i=0; ai!=0, i+ ) if ( ai=a & ai=z ) bk+ :=

19、ai; bk = 0; return b;main() char a100;gets( a0 ); str_select_low( b, a ); puts( b );第2题(源程序文件 E:answer1-B-2.C )【18分】上机要求:按程序功能要求编写程序,并将程序代码保存到 E:answer1-B-2.C 中。程序功能:编写程序,实现以下功能:(6) 输出本题考试的学期号与题号,即“093,1-B-2”(7) 输出考生的基本信息,包括实际考试机房、机号、机号的单双(机号单输出Odd,机号双输出Even)、学号、姓名拼音。(8) 从键盘上输入3个整数。(9) 输出3个数的累加和与平均值

20、。(10) 输出3个数中大于或等于60的个数。如输入: 70 50 91则输出: 093,1-B-2 D413-28(Even),09123456,ZhangDaHai 注:本行请按考生实际情况输出 Sum=211, Ave=70.3 Pass=2示例说明:输出共4行,第1行为本考题基本信息,应为“093, 1-A-2”;第2行为考生本次考试的基本信息,请按实际情况输出,示例表示D413机房的28号计算机,机号为双(输出Even),学号为09123456,姓名拼音为ZhangDaHai(张大海);输入三数的累加和为211,平均值为70.3(输出一位小数),大于或等于60的数值有2个。再如输入:

21、 -91 -50 -70则输出: 093,1-B-2 D413-28(Even),09123456,ZhangDaHai 注:本行请按考生实际情况输出 Sum=-211, Ave=-70.3 Pass=0示例说明:输入三数的累加和为-211,平均值为-70.3(输出一位小数),大于或等于60的数值为0个。第3题(源程序文件 E:answer1-B-3.C )【16分】上机要求:按程序功能要求编写程序,并将程序代码保存到 E:answer1-B-3.C 中。程序功能:从键盘上连续输入整数直至输入0时终止(设输入的非0整数取值1至5),按示例格式输出数字图形,每行的数字及数字个数与输入数相对应。编

22、写程序可以使用或参考所提供的函数。如输入: 5 4 3 2 1 0则输出(表示空格,表示回车): 示例说明:输入5个数后输入0,表示输出共5行,居中对齐形状。输入的第1个数为5,则输出的第1行有5个数(取值1至5),数字之间含有1个空格;以此类推。再如输入: 2 3 2 0则输出(表示空格,表示回车): 示例说明:输入3个数后输入0,表示输出共3行。输入的第1个数为2,则输出的第1行有2个数(取值1至2),数字之间含有1个空格,第1个2之前有5-2=3个空格;以此类推。函数说明:下列代码提供2个函数,可供编写程序时调用或参考。其中函数sca_0从键盘上连续输入整数直至输入0时终止,并返回整数n

23、;函数prtline可以输出图案中的某一行,参数m表示输出该行的m个数(取值1至m)。函数代码:函数代码说明int sca_0(int a) int n; for (n=0;1;n+) scanf(%d,&an); if (an=0) break; return n;void prtline( int m ) int i; for ( i=1; i=5-m; i+ ) printf( ); for ( i=1; i=m; i+ ) printf( %d , i ); printf( n );函数:连续输入整数直至输入0 先循环并计数输入的整数个数 输入整数至数组a中 如果输入0则结束输入 返回

24、输入的非0整数个数函数:输出图案中的一行,m个数字 先输出5-m个空格 再输出m个数字,数字之后带有空格 最后输出换行第4题(源程序文件 E:answer1-B-4.C )【20分】上机要求:按程序功能要求编写程序,并将程序代码保存到 E:answer1-B-4.C 中。程序功能:输入10个整数(存贮在一维数组a中),按示例格式计算并输出以下结果。(4) 查找数值为0的元素并输出其下标(如果有多个0则输出第1个0的下标),如果没有找到,则输出Not Found;(5) 统计数值为100的元素个数并输出;(6) 从小到大排序,并按每行5个数的格式输出;如输入: 10 20 30 40 50 10

25、0 60 70 80 100则输出: Not Found(0)Count(100)=2 10 20 30 40 50 60 70 80 100 100示例说明:输入10个整数,0没有出现,100出现2次,排序后分2行输出,每行输出5个数。如输入: 50 0 -50 0 50 60 70 80 90 199则输出: a1=0 Count(100)=0 -50 0 0 50 50 60 70 80 90 199示例说明:输入10个整数(可以有负数或超过100的数),其中100没有出现,0出现2次,第1次出现在下标1位置。排序后分2行输出,每行输出5个数。(093)上海大学2009-2010年春季学

26、期操作题(B)参考答案第1题(1-B-1.c)更正程序错误点#include char *str_select_low( char b, char a ) int i, k = 0; for ( i=0; ai!=0; i+ ) /*/ if ( ai=a & ai=z ) bk+ = ai; /*/ bk = 0; return b;main() char a100, b100; /*/ gets( a ); /*/ str_select_low( b, a ); puts( b );for中的第2个分号误为逗号:=改为=,去掉=前的:号char b100;漏定义gets传递数组名第2题(1-B-2.c)#include main() int a,b,c,sum,pass; float ave; printf(093,1-B-2n ); /* 输出学期与题号 */ printf(D413-28(Even),09123456,ZhangDaHain); /* 输出本人信息 */ scanf(%d%d%d, &a,&b,&c); sum=a+b+c; /* 计算累加和 */ ave=sum/3.0; /* 计算平均值 */ printf(Sum=%d,Ave=%.1fn,sum,ave); pass =

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1