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

c语言第五章习题

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

C、char c1[]={'1','2','3','4','5'}; D、char c2[]={'\\x10','\\xa','\\x8'}; 21、调用函数时,若实参是一个数组名,则向函数对应的形参传送的是( ) A、数组的长度

B、数组的首地址

C、数组第一个元素的值 D、整个数组元素的值 22、下面程序段的运行结果是( )

char s[6]; s=‖abcd‖; printf(―\\‖%s\\‖\\n‖,s);

A、―abcd‖

B、‖abcd ―

C、\\‖abcd\\‖\\n

D、编译出错

23、(多项选择)以下不能对二维数组a进行正确初始化的语句是( ) A、int a[2][]={{1,0,1},{5,2,3}}; C、int a[2][4]={{1,2,3},{4,5},{6}};

B、.int a[][3]={{1,2,3},{4,5,6}};

D、int a[][3]={{1,0,1},{},{1,1}};

24、(多项选择)若有说明:int a[3][4];则对a数组元素不能正确引用是( ) A.a[2][4]

B、a[1,3]

C、a[1+1][0] D、a(2)(1)

25、(多项选择)若有说明“static int a[3][4]={0};”则下面正确的叙述是( ) A、只有元素:a[0][0]可得到初值0

B、此说明语句不正确

C、数组a中各元素都可得到初值,但其值不一定为0 D、数组a中每个元素均可得到初值0 26、 以下对一维整型数组的正确说明是( ) A、int a(1);

B、int n=10,a[n];

C、int n;scanf(―%d‖,&n);int a[n]; D、#define SIZE 10 int a[SIZE]; 27、有以下程序,其输出结果是( )

void swap1(int c[]) { int t;

t=c[0];c[0]=c[1];c[1]=t; }

void swap2(int c0,int c1) { int t;

t=c0;c0=c1;c1=t; } main( )

{ int a[2]={3,5},b[2]={3,5}; swap1(a); swap2(b[0],b[1]);

printf(―%d %d %d %d\\n‖,a[0],a[1],b[0],b[1]); }

A、5 3 5 3

B、5 3 3 5

C、3 5 3 5

D、3 5 5 3

5

28、以下程序执行后的输出结果是( )

int f(int b[][4]) { int i,j,s=0; for(j=0;j<4;j++) { i=j;

if(i>2) i=3-j; s+=b[i][j]; } return s; } main( )

{int [4][4]={{1,2,3,4},{0,2,4,5},{3,6,9,12},{3,2,1,0}}; printf(―%d\\n‖,f(a));}}

A、12

B、11

C、18

D、16

29、执行下列程序后输出的结果是( )

int a[3][3]={{1},{2},{3}}; int b[3][3]={1,2,3}; main()

{printf(″﹪d \\ n″,a[1][0] + b[0][0]);}

A、0

B、1

C、2

D、3

30、以下程序运行后,输出结果是( )

main()

{ int y=18,i=O,j,a[8]; do { a[i]=y%2;i++; y=y/2; } while(y>=1); for(j=i-1;j>=0;j--) printf(―%d‖,a[j]); printf(―\n‖); }

A、1000

B、10010

C、00110

D、10100

二、填空题

1、设数组a中的元素均为正整数,以下程序是求a中偶数的个数和偶数的平均值。请填空。(填空时数组元素请用数组表示方法) main()

{int a[10]={1,2,3,4,5,6,7,8,9,10}; int k,s,i; float ave; for(k=s=i=0;i<10;i++)

6

{if(a[i]%2!=0) 《1》; s+=《2》; k++; }

if(k!=0) { ave=s/k; printf(\ }

2、下面程序的运行结果是( ) main()

{int num_list[]={6,7,8,9}; int k,j,b,u=0,m=4,w; w=m-1; while(u<=w) {j=num_list[u]; k=2;b=1;

while(k<=j/2&&b) b=j%++k; if(b) printf(\

else {num_list[u]=num_list[w]; num_list[w--]=j; }

} }

3、下面程序的功能是将字符数组a[6]={'a','b','c','d','e','f'}变为a[6]={'f','a','b','c','d','e'}。请填空。(注:填空时数组元素请用数组表示方法) main()

{char t,a[6]={'a','b','c','d','e','f'}; int i; 《1》;

for(《2》;i>0;i--) a[i]=a[i-1]; a[0]=t;

for(i=0;i<=5;i++) printf(\ }

4、下面程序的运行结果是( ) main() {int i;

char a[]=\ for(i=0;a[i]!='\\0'&&b[i]!='\\0';i++) if(a[i]==b[i])

7

if(a[i]>='a'&&a[i]<='z') printf(\ else printf(\ else printf(\

}

5、下面程序的运行结果是( ) main()

{int i=1;n=3,j,k=3; int a[5]={1,4,5}; while(i<=n&&k>a[i]) i++; for(j=n-1;j>=i;j--) a[j+1]=a[j]; a[i]=k;

for(i=0;i<=n;i++) printf(\ }

6、当从键盘输入18并回车后,下面程序的运行结果是( ) main()

{int x,y,i,a[8],j,u,v; scanf(\ y=x;i=0; do

{u=y/2; a[i]=y%2; i++;y=u; }while(y>=1);

for(j=i-1;j>=0;j--) printf(\ }

7、下面程序的运行结果是( ) main()

{int a[10]={1,2,3,4,5,6,7,8,9,10}; int k,s,i; float ave;

for(k=s=i=0;i<10;i++) {if(a[i]%2==0)continue; s+=a[i]; k++;}

if(k! =0) {ave=s/k; printf(\ }

8、若有以下输入(表示回车),则下面程序的运行结果是( )

8

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