admin 管理员组

文章数量: 1184232


2024年3月26日发(作者:flask项目实例)

二级C语言-17

(总分71.5,考试时间90分钟)

一、选择题

1. 有以下程序:

main()

{

char s[]="Yesn/No",*ps=s;

puts(ps+4);

*(ps+4)=0;

puts(s);

}

程序运行后的输出结果是(选项D中的第一行是空行) ( )。A. n/No Yes /No B.

/No Yes C. /No Yes /No D. /No Yes

2. 以下叙述中正确的是______。A. 用C语言实现的算法必须要有输入和输出操作 B. 用C

语言实现的算法可以没有输出,但必须要有输入 C. 用C程序实现的算法可以没有输入,

但必须要有输出 D. 用C程序实现的算法可以既没有输入,也没有输出

3. 以下叙述中错误的是A. C语言是一种结构化程序设计语言 B. 结构化程序由顺序、分

支、循环三种基本结构组成 C. 使用三种基本结构构成的程序只能解决简单问题 D. 结构

化程序设计提倡模块化的设计方法

4. 下列选项可以正确表示字符型常量的是A. 'r' B. "a" C. "897" D. 296

5. 以下程序运行后的输出结果是______。

int d=1:

fun(int p)

{static int d=5;d+=p;

printf("%d",d);return d;

}

main()

{int a=3;printf("%dn",fun(a+fun(d)));}A. 699 B. 669 C. 61515 D. 6615

6. 有以下程序

#include<stdio.h>

main()

{ int a=2,b=2,c=2;

printf("%dn",a/b&c);

}

程序运行后的输出结果是A. 0 B. 1 C. 2 D. 3

7. 下列程序段的运行结果是( )。

#include<stdio.h>

void main()

{ char str[]="ABC",*p=str;

printf("%dn",* (p+3));

}A. 67 B. 0 C. 字符'C'的地址 D. 字符'C'

8. 若有定义int x, y;,并已正确给变量赋值,则以下选项中与表达式(x-y)?(x++):(y++)中的条

件表达式(x-y)等价的是______。A. (x-y>0) B. (x-y<0) C. (x-y<0||x-y>0) D. (x-y==0)

9. #define能作简单的替代,用宏来替代计算多项式5*x*x+5*x+5的值的函数f,正确的宏定

义语句为 。A. #definef(x)5*x*x+5*x+5 B. #definef5*x*x+5*x+5 C.

#definef(a)(5*a*a+5*a+5) D. #define(5*x*x+5*x+5)f(x)

10. 下列判断正确的是 。A. chara="ABCD";等价于char*a;*a="ABCD"; B. char

str[10]={"ABCD"};等价于char str[10];str[]={"ABCD"}; C. char*s="ABCD";等价于char

s;*s="ABCD"; D. charc[5]="ABCD",d[5]="ABCD";等价于char c[5]=d[5]="ABCD";

11. 当用户要求输入的字符串中含有空格时,应使用的输入函数是 。A. scanf() B.

getchar() C. gets() D. getc()

12. 以下各选项企图说明一种新的类型名,其中正确的是 ______。A. typedef vl int; B.

typedef v2=intC. typedef int v3; D. typedef v4:int

13. C语言规定,简单变量作实参时,它和对应形参之间的数据传递方式是______。A. 由实

参传给形参,再由形参传回给实参 B. 地址传递 C. 单向值传递 D. 由用户指定传递方式

14. 有以下程序:

main()

{int a[]={2,4,6,8,10),y=0,x,*P;

P=&a[1];

for(x=1;x<3;x++)y+=p[x];

printf("%dn",y);

}

程序运行后的输出结果是______。A. 10 B. 11 C. 14 D. 15

15. 将E-R图转换到关系模式时,实体与实体间的联系可以表示成 A. 属性 B. 关系 C.

键 D. 域

16. 已知字母A的ASCII代码值为65,若变量kk为char型,以下不能正确判断出比中的

值为大写字母的表达式是A. kk>='A'&&kk<='Z' B. !(kk>='A'||kk<='Z') C. (kk+32)>

='a'&&(kk+32)<='z' D. isalpha(kk)&&(kk<91)

17. 下列叙述中正确的是 。A.一个算法的空间复杂度大,则其时间复杂度必定大 B.一个

算法的空间复杂度大,则其时间复杂度必定小 C.一个算法的时间复杂度大,则其空间复杂

度必定小 D.上述三种说法都不对

18. 以下程序中的变量已正确定义,程序段的输出结果是

for(i=0; i<4; i++, i++)

for(k=1; k<3; k++); printf("*");A. ******** B. **** C. ** D. *

19. 有以下程序段:

char ch; int k;

ch='a'; k=12;

printf("%c, %d, ", ch, ch); printf("k=%dn", k);

已知字符a的ASCII码值为97,则执行上述程序段后输出结果是( )。A. 因变量类型与

格式描述符的类型不匹配,输出无定值 B. 输出项与格式描述符个数不符,输出为零值或

不定值 C. a, 97, 12k=12 D. a, 97, k=12

20. 有以下程序:

main()

{int e[]={2,4,6,8,10},y=0,x,*p;

p=&a[1];

for(x=1;x<3;x++)y+=p[x];

printf("%dn",y);

}

程序运行后的输出结果是______。A. 10 B. 11 C. 14 D. 15

21. 有以下程序

main()

{ int x[]={1,3,5,7,2,4,6,0},i,j,k;

for(i=0; i<3 ; i++)

for(j=2; j>=i ; j--)

if(x[j+1]>x[j]) {k=x[j]; x[j]=x[j+1]; x[j+1]=k; }

for(i=0; i<3; i++)

for(j=4; j<7-i; j++)

if(x[j]>x[j+1])

{k=x[j]; x[j]=x[j+1]; x[j+1]=k; }

for(i=0; i<8; i++)

printf("%d",x[i]);

printf("n");

}

程序运行后的输出结果是______。A. 75310246 B. 01234567 C. 76310462D. 13570246


本文标签: 输出 结果 算法