2023年C语言A卷 试题

发布 2021-12-26 23:16:28 阅读 7737

!!4.若有下列定义:int a[5],*p=a ;

则对a数组元素地址的正确引用是( b )

a)&a[5b)p+2c)ad)&a

!!!5.对于以下的变量定义,表达式( c )不符合c语言语法。

struct node x=, p=&x;

a)p->pk (b) (p).pk (c) *d)

6.下面程序段的运行结果是(b )

int n ;

for(n=0;n<=2;n++)

cout<(a) 2b) 3c) 4 (d) 有语法错误

7.已知:char b[5],*p=b;则正确的赋值语句是(c )。

a)b=”abcd”; b)*b=”abcd”; c)p=”abcd”; d)*p=”abcd”;

8.若有以下定义和语句,则对a数组元素的正确引用是( c )

int a[2][3],(p)[3];

p = a;

(a) (p+1)[0b) *p+2)+1) (c) *p[1]+1d) p[1]+2

9.以下能对外部的二维数组a进行正确初始化的语句是:( b )。

a) int a[2]

b) int a[3] =

c) int a[2][4] =

d) int a[3] =

10.以下函数调用语句中实参的个数为( a )

excc((v1,v2),(v3,v4,v5),v6);

a)3b)4c)5d)6

二、填空题(共20分,每空2分)

1.表达式5/2的值为 2(1) ,表达式(float)5/2的值为 2.5 (2) 。

2.若有定义:int a[ ]p=a; ,则*(p+2) 的值是_3_(3)_ a+4)的值是5(4)_

3.以下程序段对输入字符更改大小写。

char ch;

ch=getchar();

if ( ch>='a'&&ch<='z'(5) )ch=ch+32;

else if ( ch>='a'&&ch<='z' (6) )ch=ch-32;

4.若有定义:int a[3][4]=;则a[1][2]得到的初值是 10(7) ,若定义为:int a[3][4]=,a[1][2]的初值是 7(8) 。

5..有以下定义及语句。

int a[4][3]=;

int (*pt)[3]=a, *p[4], i;

for(i=0;i<4;i++)p[i]=a[i];

则(*(pt+2))[2]的值为 9 (9p[1]+1)的值为 4 (10) 。

三、阅读下面程序,写出运行结果(共10题,每小题3分,共30分)

1.程序。#include<>

void main()

int i,j;

for(i=1;i<=6;i++)

2.程序。#include<>

void main()

int a=5,b=7;

int *p,*q,*r;

p=&a5;q=&b7;

r=p;p=q;q=r;

cout<<"a=5"< 5775

3. 程序。

#include<>

int t( )

int x = 0 ;

static int y = 4 ;

y +=x ;

return x+y;

void main( )

cout<<(t( )t( )7

4.程序。#include<>

int sum( int n)

int c = 0 ;

do while (n );

return c ;

void main( )

cout<<"sum(1234)="10

5.程序。#include<>

void fun()

char ch;

cin>>ch;

if(ch!='#') fun();

cout<}

void main()

fun();

程序的输入为:abcd#

输出:?#dcba

6. 程序。

#include<>

void getmxmn(int a,int n,int *pmx,int *pmn)

int i;

*pmx=*pmn=a[0];

for (i=1;i if (*pmx else if (*pmn>a[i]) pmn=a[i];

void main()

int x[10]=,mx,mn;

getmxmn(x,10,&mx,&mn);

cout<<"mx="<

输出:?95 15

7. 程序。

#include<>

int func1( int n )

if ( n==1 )

return 1;

return 2*func1(n-1);

int func2( int n )

if ( n==1 )

return 1;

return 2*func2(n-1) +func1(n-1);

void main()

int i;

for ( i=1; i<=4; i++

cout<<"data1="<

输出:?8.程序。

#include<>

void prt2( long n )

int a[10], i, j;

long k=1, d=0, e=0;

for ( i=0; n>0; i++

for ( j=0; j

cout<<"data d="C语言A卷

11.以下程序的输出结果为 main int x 1,a 0,b 0 switch x case 0 b case 1 a case 2 a b printf a d,b d a,b a a 2,b 1 b a 1,b 1 c a 1,b 0 d a 2,b 2 12.数组名作为实参数传递给函数时,...

2019 C语言模拟卷

c语言程序设计。一 单项选择题 本大题共10 小题,每小题2分,共20分 1 正确表示 当a的取值在 1,5 或 51,55 范围内为真,否则为假 的表达式是 a.a 1 a 5 a 51 a 55 b.a 1 a 5 a 51 a 55 c.a 1 a 5 a 51 a 55 d.55 a 51 ...

C语言期末试题2023年C

c语言考试题。说明 考试成绩分为两部分 实验占10 卷面笔试占90 满分为100分。本试卷为卷面笔试部分,卷面满分为90分。一 填空题 10分,第1小题4分,其余每空1分 1 设有下列登记表,请采用最佳方式定义一种数据类型来表示这些数据的集合。其中,配偶姓名用spousename表示,子女人数用ch...