2012春江苏省高校计算机等级考试二级C语言上机题(含答案)
2012 春上机题_C01第 1 页 共 4 页江苏省高等学校非计算机专业学生计算机基础知识和应用能力等级考试上机试卷(2012 春)二级 C 语 言(试卷代号 C01)(本试卷完成时间 70 分钟)、、 改错题(16 分)【程序功能】以下程序中函数 void csort(char str[][N],int n)对 str 指向的二级数组前 n 行中存储的 n 个字符串分别做如下处理:从中间将字符串一分为二,左半部分字符子串按字符的 ASCII 码从大到小排序(若字符串长度为奇数,则中间字符不参加排序)。【测试数据与运行结果】测试字符串:”abcdefgh”, ”123498765”屏幕输出:dcbaefgh432198765【含有错误的源程序】#include#include#include#define N 80void csort(char str[][N],int n); void main(){ char s[2][N]=“abcdefgh“,“123498765“; //char s[2][N]={“abcdefghertyt“,“123498765“};//二维字符串 赋值需要在数值两边加大括弧//char s[10]= “we hunt the dog“;int i; csort(s,2);for(i=0;i#includeint found(int a[][30], int n);//分析://从 2 开始//3,4,5,6,7,8,9.500//请同学们考虑,若公差是 3,如何修改程序void main()2012 春上机题_C01第 3 页 共 4 页{FILE *fp;int a[10][30]={0};int n;int i,j,k;if((fp=(“myf2.out“,“w“))==NULL){ printf(“It is not open this file!\n“); exit(0);}scanf(“%d“,while(n>600||n=n) break;}if(k==n) //说明:i 到 j 之间的等差数列之和等于 n,将 i 到 j 之间的数列写到数组中去;{int xiabiao=0;for(m=i;m<=j;m++){a[x][xiabiao]=m; xiabiao++;}x++;}}2012 春上机题_C01第 4 页 共 4 页return x;}