- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2005年上海二级考题C2005年上海二级考题C
2005年上海市高等学校计算机等级考试试卷
二级 (C程序设计)
(本试卷答卷时间为120分钟)
试题一(28分,每小题4分)
解答下列各小题,把解答写在答卷纸的对应栏内。
⑴ 试写出下列命题的C语言表达式。
当字符变量m取英文字母时表达式的值为真。
⑵ 执行下述语句后,a,b,m,n变量的值分别是什么?
int a=1, b=2, c=3, d=4, m=5, n=6;
a=(m=ab)(n=cd)||++a==b--;
⑶ 执行下列语句后的输出结果是什么?
char s[81]=”a_string”, t[81];
strcpy(t,s);
printf(%d;%d\n%s\n,sizeof(s),strlen(s),t+2);
⑷ 写出下列C语句的功能。
#include string.h
char s[20];
do gets(s);
while(strcmp(s,passwd));
⑸ 执行下列程序后的输出结果结果是什么?
#define SQR(x) x*x
void main()
{
int s=8,a=2,b=3;
s=SQR(a+b)*4;
printf(“s=%d\n”, s);
}
⑹ 有定义
struct date {
int day;
char month;
int year;
}dd, *pd=dd;
试写出引用结构体变量dd的成员dd.day的其他两种描述形式。
⑺ 设有如下程序段:
int a[4]={0,4,5,13}, *p;
p = a[2];
printf(++(*p)=%d\n, ++(*p));
printf(*--p=%d\n,*--p);
printf(*p++=%d\n,*p++);
printf(%d\n, a[0]);
试写出执行该程序段后的输出结果。
试题二(12分,每小题6分)
阅读下列程序,把程序的输出结果写在答卷纸的对应栏内。
⑴ 【程序2.1】
#include stdio.h
void main()
{
int k[]={ 65, 30, 3, 123, 831, 54};
int j, m1=32767, m2=0, n1, n2;
for(j=0; j6; j++)
if(m1k[j])
{ m1=k[j];
n1=j; }
else if(m2k[j])
{ m2=k[j];
n2=j; }
printf(“m1=%d,n1=%d\n”,m1, n1);
printf(“m2=%d,n2=%d\n”,m2, n2);
}
⑵ 【程序2.2】
#include stdio.h
void func(int *x, int y )
{
static int k=3;
y=*x+y;
*x=y%k;
k++;
printf(*x=%d,y=%d\n, *x, y);
}
void main()
{
int x=12, y=5;
func(x, y);
printf(x1=%d,y1=%d\n, x, y);
func(y, x);
printf(x2=%d,y2=%d\n, x, y);
}
试题三(12分,每小题6分)
下列程序中都有三个错误,按题中的计算要求,纠正错误,并以“将#XX”行改为“YYYY”的形式进行解答,把解答写在答卷纸的对应栏内。代码左边的#1、#2、…是附加的行号。
⑴ 用冒泡排序法求出由21个整数组成的中间值,并输出所有大于中间值的偶数。
【程序3.1】
#01 #include stdio.h
#02 void main() {
#03 int i, j, temp;
#04 int array[21];
#05 for(i=0; i21; i++ ) scanf(%d, array[i]);
#06 for(i=0; i21; i++ )
#07 for(j=0; j
文档评论(0)