2012江苏省计算机二级c语言上机,2012春江苏省高校计算机等级考试二级C语言上机题(含答案)...

江苏省高等学校非计算机专业学生

计算机基础知识和应用能力等级考试上机试卷(2012春)

二级 C语言(试卷代号C01)

(本试卷完成时间 70分钟)

一、 改错题(16分)

【程序功能】

以下程序中函数void csort(char str[][N],int n)对str指向的二级数组前n行中存储的n个字符串分别做如下处理:从中间将字符串一分为二,左半部分字符子串按字符的ASCII码从大到小排序(若字符串长度为奇数,则中间字符不参加排序)。

【测试数据与运行结果】

测试字符串:”abcdefgh”,”123498765”

屏幕输出:dcbaefgh

432198765

【含有错误的源程序】

#include

#include

#include

#define N 80

void 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<2;i++)

puts(s); //puts(s[i]); s[i]表示第i行字符串

getch();

}

void csort(char str[][N],int n)

{ int i,j,k,len,half;

char temp;

for(i=0;i

{ len=strlen(str[i][0]); //len=strlen(str[i]);

half=len/2; // half=len/2+1;因为下面两行循环终止值是half-1

for(j=0;j

for(k=j+1;k

if(str[i][j]

{ temp=str[i][j];

str[i][j]=str[i][k];

str[i][k]=temp;

}

}

}

【要求】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值