c语言第6章数组,C语言程序设计第6章数组.doc-资源下载在线文库www.lddoc.cn

C语言程序设计第6章 数组.doc

6.4 课后习题6.4.1 项目练习一练习目的 1进一步巩固一维数组的定义与数组元素的引用方法 2进一步巩固二维数组的定义与数组元素的引用方法 3进一步巩固字符数组的定义与引用方法二练习内容1用起泡法对10个数由大到小进行排序。 分析起泡法的算法思想是,n个数排序,将相邻两个数依次进行比较,将大数调在前头,逐次比较,直至将最小的数移至最后,然后再将n-1个数继续比较,重复上面操作,直至比较完毕。 可采用双重循环实现起泡法排序,外循环控制进行比较的次数,内循环实现找出最小的数,并放在最后位置上即沉底。include stdio.hmain int a10; int i,j,t; printf请输入10个整数n; fori0;i10;i scanfd,ai; fori0;i9;i forj0;j9-i;j ifajaj1 taj; ajaj1; aj1t; printf排序后的数为n; fori0;i10;i printfd ,ai; printfn; getch; 2 从键盘输入10个整数,检查整数3是否包含在这些数据中,若是的话,它是第几个被输入的。include stdio.hmain int i,a10; printf请输入这10个整数; fori0;i10;i scanfd,ai; fori0;i10;i ifai3 printf3包含于数列中,输入顺序号是d,i1; else printf3不包含于此数列中; getch;3编程一个3*5的数组,要求每行都进行降序排列,并求出每行的平均值。include stdio.hdefine N 5define M 3main int x,i,j,k,t,aMN;float sum0.0,avgM;输入数组forx0;xM;x fori0;iN;i scanfd,axi;数组排序forx0;xM;x fori0;iN;i ki; forji1;jN;j ifaxjaxk kj; ifki taxi; axiaxk; axkt; forx0;xM;xsum0.0; fori0;iN;i printfd ,axi; sumaxi; avgxsum/N; printf第d行的平均值是fn,x,avgx;getch; 4定义一个二维字符数组,并从键盘上输入字符串的值,将这些字符串按字典顺序升序排列后分行输出。include stdio.hmain int m,n,i,j; printf请行列上限不超100的m和n的值; scanfdd,m,n; char tmp1000,smn; fori0;im;i scanfs,si; for i0;im-i;iforj0;jm-i-1;jifstrcmpsj,sj10strcpytmp,sj;strcpysj,sj1;strcpysj1,tmp;fori0;im;i printfsn,si; getch;6.4.2 练习题一选择题1.在C语言中,引用数组元素时,其数组下标的数据类型允许是( C )。A整型常量 B整型表达式C整形常量或整型表达式 D任何类型的表达式2.若有定义int a10,则对数组a元素的正确引用是( D )。Aa10 Ba3.5 Ca5 Da10-103.基本int a4类型变量所占的字节数是( D )。A1 B2 C4 D84.合法的数组定义是( C )。Aint a“string”; Bint a50,1,2,3,4,5;Cchar a“string”; Dchar a0,1,2,3,4,55.下列对数组操作不正确的语句是( D )。Aint a5; Bchar b h,e,l,l,o;Cint a 2,3,4,5; Dchar b3 1,2,3,4,5,6;6. 以下对二维数组a的正确定义是( C )。Aint a3 Bfloat a(3,4)Cdouble a14 Dfloat a(3)(4)7.以下能对二维数组a进行正确初始化的语句是( B )。Aint a21,0,1,5,2,3 ;Bint a31,2,3,4,5,6 ;Cint a241,2,3,4,5,6 ;Dint a31,0,11,1 ;8.以下不能对二维数组a进行正确初始化的语句是( C )。Aint a230 ;Bint a31,2,0 ;Cint a231,2,3,4,5,6 ;Dint a31,2,3,4,5,6 ;9.若有说明int a31,2,3,4,5,6,7;则数组a第一维大小是( B )。A2 B3 C4 D无确定值10.下面程序段的输出结果是( A )。int k,a331,2,3,4,5,6,7,8,9;for k0;k3;k printf“d”,ak2-k;A3 5 7 B3 6 9 C1 5 9 D1 4 711.若有说明语句char a “this is a book”。则该数组占了( D )个字节。A11 B12 C14 D15二填空题1.C语言数组的下标总是从( 0 )开始,不可以为负数;构成数组各个元素具有相同的( 基类型 )。2.C语言中数组的下标必须是正整数、0或( 整型表达式 )。3.设有如下定义double a180 ;则数组a的下标下界是( 0 ),上界是( 179 )。4.在C语言中,二维数组的元素在内存中的存放顺序是( 按行存放 )。5. 若有定义int a341,2,0,4,6,8,10;则初始化后,a12得到的初值是( 0 ),a22得到的初值是( 8 )。6.当运行下面程序时,从键盘上输入AabD,则写出下面程序的运行结果( AzyD )。main char s80;int i0;getss; /*从键盘上输入字符串*/while si 0 if si zsi asi za-si ;i; putss;getch; 7.写出下面程序的运行结果( 3 )。include stdio.hmain int n3,i,j,k; fori0;i3;i ni0 ; k2 ; fori0;ik;i forj0;jk;j njni1 ; printfdn,n1 ; getch ; 8.下面程序的输出结果是( 21 )。include stdio.hmain int i,k,a10,p3; k5; fori0;i10;iaii; fori0;i3;ipiai*i1; fori0;i3;ikpi*2; printfdn,k;getch;9.写出下面程序的运行结果( 1 0 0 0 0 )。main int a66,i,j ;for i1; i6 ; ifor j1 ; j6 ; jaiji/j*j/i ;for i1;i6 ; i for j1 ; j6 ; jprintf“2d”,aij ;printf“n”; getch; 10.写出下面程序的运行结果( FGH KL )。include stdio.hinclude string.hmain char w 10ABCD,EFGH,IJKL,MNOP,k;fork1;k3;k printfsn,wkk; getch;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值