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

C语言程序设计等级考试习题汇编[1]

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

C语言程序设计等级考试习题汇编2

数组

一、 判断题

1. 数组a[5]表示a数组有5个元素,下标从1到5。F 2. 数组的大小不依赖于程序运行过程中变量的值。T 3. 在C中,变量和数组都必须先定义,然后使用。T 4. int new[8]={0,0,0,0,0,0,0,0}等价于int new[8]={0*8}。F

5. int a[3][2]={{1,1,1},{2,2,2},{3,3,3}}等价于int a[3][2]={{1},{2},{3}}。F

6. 用来存放字符数据的数组是字符数组,字符数组中的一个元素存放一个字符。T 7. 数组的名称其实是数组在内存中的首地址。T

8. 如果在对数组进行初始化时,给定的数据元素个数比数组元素个数少时,多余的数

组元素会被自动初始化为最后一个给定元素的值。F

9. 当数组名作为参数被传递给某个函数时,原数组中的元素的值可能被修改。T 10. C语言不检查数组的下标是否越界。T

二、 单项填空题

1. 若数组名作实参而指针变量作形参,函数调用实参传给形参的是 (D)

A.数组的长度

B.数组第一个元素的值

C.数组所有元素的值 D.数组第一个元素的地址

2. 已有定义:char a[]=\以下叙述中正确的是 (C)

A.数组a和b的长度相同

B.a数组长度小于b数组长度 D.上述说法都不对

C.a数组长度大于b数组长度

3. 以下能正确定义一维数组的选项是(B)

A.int a[5]={0,1,2,3,4,5} C.char a={'A','B','C'}

B.char a[]={0,1,2,3,4,5} D.int a[5]=\

4. 有以下语句:int b;char c[10];,则正确的输入语句是 (B)

A.scanf(\C.scanf(\

B. scanf(\ D.scanf(\

5. 已有定义:char a[]=\以下叙述中正确的是 (C)

A.数组a和b的长度相同

B.a数组长度小于b数组长度 D.上述说法都不对

C.a数组长度大于b数组长度

6. 以下语句或语句组中,能正确进行字符串赋值的是 (C )

— 1 —

A.char *sp;*sp=\ C.char s[10];*s=\ 7. 有以下程序

main()

{char s[]=\ p=s;

B.char s[10];s=\ D.char *sp=\

printf(\ }

程序运行后的输出结果是(A) A.15

B.16

C.12

D.59

8. 有以下程序

main()

{int num[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},i,j; for(i=0;i<4;i++)

{for(j=0;j<=i;j++)printf(\

for(j=_____;j<4;j++)printf(\ printf(\ } }

若要按以下形式输出数组右上半三角 1 2 3 4 6 7 8 11 12 16

则在程序下划线处应填入的是 (B) A.i-1

B.i

C. i+1

D.4-i

9. 下面程序(C) (每行程序前面的数字表示行号)

1 main( ) 2 {

3 float a[10]={0,0}; 4 int I;

— 2 —

5 for (i=0;i<3;i++) scanf(“%d”,&a[i]); 6 for (i=1;i<10;i++) a[0]=a[0]+a{i}; 7 printf(“%f\\n”,a[0]); 8 }

A.没有错误

B.第3行有错误观点 C.第5行有错误 D.第7行有错误

10. 若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为(D)..(假设a[0][0]

位于数组的第一个位置上)。 A.i*m+j

B.j*m+I

C.i*m+j-1

D.i*m+j+1

11. 若有以下程序段:

······

int a[]={4,0,2,3,1},I,j,t; for (i=1;i<5;i++) {t=a[i];j=i-1;

while (j>=0 && t>a[j]) {a[j+1]=a[j];j--;} a[j+1]=t; ······ 则此程序的功能是( B) A.对数组a进行插入排序(升序) C.对数组a进行选择排序(升序)

B.对数组a进行插入排序(降序) D.对数组a进行选择排序(降序)

三、程序填空题

题1

以下是使用数组来处理并打印斐波那契数列的前二十项的程序。打印时,每行打印10个数字。斐波那契数列的格式为:当n=0时,f[0]=0,当n=1时,f[1]=1,当n>1时,f[n]=f[n-1]+f[n-2]。 【程序】 # include,stdio.h. main()

{ int___(1)____ ; int line=0,j; fbnq[0]=0; fbnq[1]=1;

CBBAD — 3 —

for (j=___(2)____;j<20;j++) ___(3)____; for (j=0.j<20;j++); { print (%d,”fbqn[j]); ___(4)____; if (line==10) | {___(5)____ printf(“\\n”); } } return (1); }

1.A. Fbnq

B. Fbnq[1 to 20]

C. Fbnq[20]

D. Fbnq D.-1

2.A.1 B.2 C.0 3.A.fbnq[j]=fbnq[j-1]+fbnq[j] C. fbnq[j]=fbnq[0]+fbnq[1] 4.A. line++ 5.A. line++ 题2.

B.line-- B.line--

B. fbnq[j]=fbnq[j-1]+fbnq[j-2] D. fbnq[j+1]=fbnq[j-1]+fbnq[j] C.line=line-1 C.line=line-1

D.line=0 D.line=0

有已排序好的字符串a,下面的程序是将字符串s中的每个字符升序的规律插入到a中,请BB 选择填空。 【程序】 # include main ( )

{char a [20 ]=”cehiknqtw”; char s [ ]= “fbla”; int i,k,j;

for (k = 0;s [k]>!=’\\0’);k++) { j=0;

while (k = 0;s [k]>=a [j]&&a[j]!=’\\0’) j++;

— 4 —

搜索更多关于: C语言程序设计等级考试习题汇编[1] 的文档
C语言程序设计等级考试习题汇编[1].doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c7mx9p5kc9d47ty70k28w_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top