c 2级计算机,计算机2级C上级真题

本文解析了2010年江苏高校非计算机专业二级C语言上机考试真题,涉及改错题中数字验证和素数判断,以及编程题中字符串逆序与交叉合并功能。重点在于指导如何修改错误代码并实现字符串处理功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2011-12-29 回答

2010年秋江苏二级C上机真题

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

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

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

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

一、改错题(16分)

【程序功能】

查找介于n1与n2(O

#include

int validate(int n)

{ int i,j,k=0,num[5]={0},size=0;

do

{ num[size]=n%10;

n=n/10;

size++;

}while(n<0);

for(i=0;i1)

return 1;

else

return 0;

}

int prime(int)

{ int i;

for(i=2;i<=(int)sqrt(n);i++)

if(n%i==0)retum 0;

return 1;

}

void main()

{ int i,count=0,n1,n2;

scanf("%d%d",&n1,&n2);

for(i=n1;i<=n2;i++)

{ if(validate(int i)&&prime(int i))

{ count++;

printf("%d\t",i);

if(count%8==0)printf("\n");

}

}

}

【要求】

1. 将上述程序录入到文件myf1.C中,根据题目要求及程序中语句之间的逻辑关系对程序

中的错误进行修改。

2. 改错时,可以修改语句中的一部分内容,调整语句次序,增加少量的变量说明或编译预

处理命令,但不能增加其他语句,也不能删去整条语句。

3. 改正后的源程序(文件名myf1.c)保存在T:盘根目录中供阅卷使用,否则不予评分。

二、编程题(24分)

【程序功能】

字符串变换。

【编程要求】

1. 编写函数void change(char *a,char *b,char

*c)。函数功能是首先把b指向的字符串逆向存放,然后将a指向的字符串和b指向的字符串按排列顺序交叉合并到c指向的数组中,两个字符串中过长的剩余字符接在c指向数组的尾部。例如,当a指向的字符串为

"abcdefg",b指向的字符串为"1324"时,C指向的数组中字符串应为"a4b2c3dlefg"。

2.编写main函数。函数功能是声明字符型数组s1、s2和t,用测试数据初始化数组s1和

s2,再用s1、s2和t作为实参调用函数change,将数组s1、s2和t中的字符串输出到屏幕及文件myf2.out中。最后将考生本人的准考证号字符串输出到文件myf2.out中。

【测试数据与运行结果】

测试数据:s1:abcdefg

s2:1324

屏幕输出:s1:abcdefg

s2:4231

The result is:a4b2c3dlefg

【要求】

1.源程序文件名为myf2.c,输出结果文件名为myf2.out。

2.数据文件的打开、使用、关闭均用C语言标准库中缓冲文件系统的文件操作函数实现。

3.源程序文件和运行结果文件均需保存在T:盘根目录中供阅卷使用

4.不要复制扩展名为obj和exe的文件到T:盘中。

2144

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值