第一范文网 - 专业文章范例文档资料分享平台

(完整版)上海工程技术大学0809(2)C语言考试试卷A答案

来源:用户分享 时间:2025/6/10 9:08:38 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

一、选择题(本题共15小题,每小题2分,共30分)

1. C程序的基本组成单位是 B 。

A)程序 B)函数 值为 A 。

A) 0 B) 1 C) 5 D) 7

8. 下列 A 描述的全是C语言中的基本数据类型。

C)子程序 D)文件 2. C语言中的整数变量在内存中占 C 个字节。

A) 0 B) 1 C) 2 D)4

3. 设int i=3;与函数f(i, ++i)等价的调用语句为 D 。

A) f(3,3) B) f(3,4) C) f(4,3) D) f(4,4) 4. 在循环语句的循环体中执行continue语句,其作用是 C 。

A) 跳出该循环体,提前结束循环 B) 继续执行该语句之后的循环体各语句

C) 结束本次循环,进行下次循环 D) 终止程序运行

5.下列标识符中不合法的变量名是 D 。

A)class3 B)length C)_2abc D)long

6.C语言的一个源文件中定义的全局变量的作用域为 D 。

A)本文件的全部范围 B)本程序的全部范围

C)本函数的全部范围 D)从定义该变量的位置开始至本

文件结束

7. 设a、b、c、d、m、n均为int型变

量,且a=3、b=6、c=7、d=8、m=2、

n=5,则逻辑表达式

(m=a>b)&&(n=c>d)运算后,n的

1 / 4

A) 字符型、整型 B) 字符型、数组 C)整型、结构体 D) 浮点型、共用体

9.下面定义了共用体类型的变量x,则sizeof(x)的值为 D 。 union { char c[10]; int b; float e; } x;

A) 16 B) 4 C) 2 D) 10

10.已知a,b为整型变量,a=2,b=1,则表达式(a=b+2,a+b)的值是 D 。 A) 2 B) 6 C) 3 11.当调用函数时,实参和形参是数组名,则向被调用函数传送的是 B 。

A) 数组的长度

B) 数组首元素的地址

C) 数组的值 D) 数组每个元素中的值 12. 能正确表示逻辑关系:“x≤10或x≥20”的C语言表达式是 ( B ) A) x<=10 or x>=20 B)

x>=20||x<=10 C) x>=10 && x<=20 D)

x

?10 and x?20

13.设有以下说明语句,则下面正确的

引用是 C 。

struct student

{ int num; char name[10]; float

score;} s1;

A) struct.score B) student.score

C) s1.name D) s1[2].name

D) 4

14. 设p是指向字符型数据的指针变

量,与p++等价的语句是 A 。

A)p=p+1; B)p=p+2; p=s;

while(*p++!= '\\0' ) n++;

printf(“n=%d\\n”,n); C)p=p+3; D)p=p+4; 15. 若己定义:int

a[ ]={0,1,2,3,4,5,6,7,8,9},*p=a, i; 其中 0≤i≤9, 则对 a中数组元素不正确的引用是 C 。 A) *p B) *(a+i) C) a+i

D) p[i]

二、读程序,严格按照程序写出输出结果(本题共5小题,每小题4分,共20分) 1. #include

void main( )

{ int i,s=0;

for(i=1;i<10;i+=3) s+=i; printf("%d\\n",s); }

程序执行后的输出结果是 12 2. #include void main( ) { int i,j,s=0;

int a[ ][3]={{1,2,3},{4,5,6},{7,8,9}};

for(i=0;i<3;i++) for(j=0;j<3;j++) if(i!=j) s=s+a[i][j]; printf(\}

程序输出结果: s=30 3. #include

void main( )

{ char *p,s[ ]=\are a stud

ent\

int n=0;

2 / 4

}

程序输出结果: n=17

4. #include void main( ) { int i,t=1,s=0; for(i=1;i<=3;i++) { t=t*i; s=s+t; } printf(“s=%d\\n”,s); }

程序输出结果: s=9

5. struct stu{ char name[10]; int num; int score; };

void main( ) { struct stu

s[5]={{“yangsan”,2041,703},{“licuan”,2042,580},

{“zhangyue”,2043,6

80},{“sunyue”,2044,550},

{“pengli”,2045,537}

},*p[5],*t;

int i,j;

for(i=0;i<5;i++) p[i]=&s[i]; for(i=0;i<4;i++)

for(j=i+1;j<5;j++)

if(p[i]->score>p[j]->score) { t=p[i]; p[i]=p[j]; p[j]=t; }

printf(“%d,%d”,s[1].score,p[1]->score);

}

则程序输出结果为: 580,550

三、程序填空题(本题共4小题,每空3分,共30分)

1. 用以下程序计算

0+5+10+15+……+100的累加和。请填空。

#include void main( ) { int i,sum; sum=0 ;

for( i=0; i<=100; i=i+5 ) sum+=i;

printf(″sum=%d\\n″,sum); }

2. 找出一维数组a[10]中的最大值,返回最大值的下标。 #include void fun( int a[10]) { int i,j,max; j=0;

for(max=a[0],i=1;i<10;i++)

if( a[i]>max ) { max=a[i]; j=i ; }

return( j ); }

3. 函数count( )统计链表中结点的个数,head为头指针。

#include struct student { char name[10]; struct student *next; }; int count(struct student *head) { int n=0;

struct student *p;

3 / 4

p=head;

while( p!=NULL ) { n++;

p=p->next ; } return(n); }

4. 用0到9之间不同的3个数构成一个3位数,统计共可以得到多少个数。

void main( ) { int i,j,k,count; count=0; for(i=1;i<10;i++) for(j=0;j<10;j++)

if( i==j ) continue; else for(k=0;k<10;k++)

if( k!=i&&k!=j )

count++;

printf(“count=%d\\n”,count); }

四、编程题(本题共3个小题,第1、2小题6分,第3小题8分,共20分)

1. 输入一个无符号整数,求出它的位数以及各位数之和并输出。(例如若输入123,则各位之和为6)

# include void main( ) {

unsigned m,ws=0,p=0; scanf(“%u”,&m); do { ws++; p=p+(m); } while(m/=10);

printf(“%d\\t%u\\n”,ws,p); }

(完整版)上海工程技术大学0809(2)C语言考试试卷A答案.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c1jrsx3w4104oweh0q68m0sr9z0p01l00nxt_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top