实验考试试卷模板2013算法.docVIP

  • 4
  • 0
  • 约 4页
  • 2017-08-12 发布于北京
  • 举报
湖南科技学院二○一四年上学期期末考试 软件工程专业 2011级 算法设计与分析实验考试 考试类型:闭卷 考试时量:90分钟 考试要求:1. 不能使用U盘,2. 不能带有代码的草稿纸 3. 不能查阅教材 填空题(程序填空题 30分,每空10分) 评分标准: 第一空 第二空 第三空 得分 32、给定程序中,函数fun的功能是将形参给定的字符串、整数、浮点数写到文本文件中,再用字符方式从此文本文件中逐个读入并显示在终端屏幕上。 请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构! #include stdio.h void fun(char *s, int a, double f) { /**********found**********/ __1__ fp; char ch; fp = fopen(file1.txt, w); fprintf(fp, %s %d %f\n, s, a, f); fclose(fp); fp = fopen(file1.txt, r); printf(\nThe result :\n\n); ch = fgetc(fp); /**********found**********/ while (!feof(__2__)) { /**********found**********/ putchar(__3__); ch = fgetc(fp); } putchar(\n); fclose(fp); } main() { char a[10]=Hello!; int b=12345; double c= 98.76; fun(a,b,c); } 第一空: 第二空:: 改错题(程序改错题 30分,每个错误15分) 评分标准: 第一处 第二处 得分 32.给定程序MODI1.C中函数fun的功能是: 依次取出字符串中所有数字字符, 形成新的字符串, 并取代原字符串。 请改正函数fun中指定部位的错误, 使它能得出正确的结果。 #include stdio.h void fun(char *s) { int i,j; for(i=0,j=0; s[i]!=\0; i++) if(s[i]=0 s[i]=9) /**********found**********/ s[j]=s[i]; /**********found**********/ s[j]=\0; } main() { char item[80]; printf(\nEnter a string : );gets(item); printf(\n\nThe string is : \%s\\n,item); fun(item); printf(\n\nThe string of changing is : \%s\\n,item ); } 程序改错:s[j]=s[i]; 改为 s[j++]=s[i]; s[j]=\0; 改为 s[j]=’\0’; 编程题(程序编写题 40分) 评分标准: 基础分 代码说明 编译通过 得分 32. 请编写函数fun, 函数的功能是: 将M行N列的二维数组中的字符数据, 按列的顺序依次放到一个字符串中。 例如, 二维数组中的数据为: W W W W S S S S H H H H 则字符串中的内容应是: WSHWSHWSH。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和其它函数中的任何内容, 仅在函数fun的花括号中填入你编写的若干语句。 #include stdio.h #define M 3 #define N 4 void fun(char (*s)[N], char *b) { } main() { char a[100],w[M][N]={{W,W,W,W},{S,S,S,S},{H,H,H,H}}; int i,j; printf(The matrix:\n); for(i=0; iM; i++) { for(j=0;jN; j++)printf(%3c,w[i][j]); printf(\n);

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档