第六章测试1.若有以下说明: int a[12]={1,2,3,4,5,6,7,8,9,10,11,12}; char c='a',d,g;则数值为4的表达式是( )。
A:a['d'-c] B:a[4] C:a['d'-'c'] D:a[g-c]
答案:A
2.若有定义语句:int m[]={5,4,3,2,1},i=4;,则下面对m 数组元素的引用中错误的是( )。
A:m[--i] B:m[m[i]] C:m[2*2] D:m[m[0]] 3.以下对一维整型数组a的正确说明是( )。
A:int a[ ]; B:#define SIZE 10 int a[SIZE]; C:int n; scanf("%d", &n); int a[n]; D:int n=10,a[n]; 4.若要定义一个具有5个元素的整型数组,以下错误的定义语句是( )。
A:int i=5, d[i]; B:int a[5]={0}; C:int b[]={0,0,0,0,0}; D:int c[2+3]; 5.给出以下定义:char x[]="abcdefg";char y[]={'a', 'b', 'c', 'd', 'e', 'f', 'g'};则正确的叙述为()。
A:数组X的长度大于数组Y的长度 B:数组X和数组Y等价 C:数组X的长度小于数组Y的长度 D:数组x和数组Y的长度相同 6.下列字符串赋值语句中,不能正确把字符串C program赋给数组的语句是( )。
A:char a[10]={"C program"}; B:char a[]={'C', ' ', 'p', 'r', 'o', 'g', 'r', 'a', 'm' , '\0'}; C:char a[10]; strcpy(a, "C program"); D:char a[10]; a= "C program"; 7.下面程序段的运行结果是()。char c[5]={ 'a', 'b', '\0', 'c', '\0'}; printf("%s", c);
A:ab\0c\0 B:ab c C:'a' 'b' D:ab 8.若有如下定义和语句: char s[12]= "a book!"; printf("%d", strlen(s) );则输出结果是( )。
A:7 B:12 C:9 D:8 9.以下定义数组的语句中错误的是( )。
A:int num[][4]={1, 2, 3, 4, 5, 6}; B:int num[]={1, 2, 3, 4, 5, 6}; C:int num[2][4]={{1, 2}, {3, 4}, {5, 6}}; D:int num[][3]={{1, 2}, 3, 4, 5, 6}; 10.执行下面的程序段后,变量k中的值为( )。int k=3, b[10]={1};b[0]=k; k=b[1]*10;
A:30 B:10 C:不定值 D:0 11.以下程序的输出结果是( )。#include "stdio.h"main( ){ int n[5]={0},i,k=3; for(i=0;i<k;i++) n[i]=n[i]+1; printf("%d\n ",n[k]);}
A:0 B:2 C:1 D:不确定的值 12.以下程序的输出结果是( )。#include "stdio.h"main( ){ int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0; for(i=1;i<3;i++) for(j=0;j<=i;j++) s+=a[i][j]; printf("%d",s);}
A:19 B:20 C:21 D:18 13.以下程序执行后的输出结果是( )。#include "stdio.h"main( ){ char a[]="abcdefg", b[10]="abcdefg"; printf("%d %d", sizeof(a) , sizeof(b));}
A:8 10 B:7 7 C:8 8 D:10 10 14.当执行下面的程序且输入ABC时,输出的结果是( )。#include <stdio.h>#include <string.h>main( ){ char ss[10]="123456789"; gets(ss); printf("%s",ss);}
A:ABC456789 B:123456ABC C:ABC D:ABC9 15.以下程序执行后的输出结果是( )。#include "stdio.h"main( ) { char ch[20]={"7856ab21"}; int i,s=0; for(i=0;ch[i]>='0'&&ch[i]<='9';i+=2) s=10*s+ch[i]-'0'; printf("%d\n",s); }
A:7856 B:75 C:785 D:752 16.以下程序运行的输出结果是( )。#include "stdio.h"main( ) { char ch[2][5]={"789","256"}; int i,j,s=0; for(i=0;i<2;i++) for(j=0;j<2;j++) s=10*s+ch[i][j]-'0'; printf("%d\n",s); }
A:789 B:7889256 C:72 D:7825 17.以下程序的输出结果是( )。#include<stdio.h>main(){ int i,k,a[10],p[3]; k=5; for (i=0;i<10;i++) a[i]=i; for (i=0;i<3;i++) p[i]=a[i*(i+1)]; for (i=0;i<3;i++) k+=p[i]*2; printf("%d\n",k);}
A:20 B:23 C:22 D:21 18.有以下程序#include<stdio.h>main(){ int i, t[][3]={9,8,7,6,5,4,3,2,1}; for(i=0; i<3; i++) printf("%d ", t[2-i][i]);}程序执行后的输出结果是( )。
A:7 5 1 B:3 6 9 C:3 5 7 D:7 5 3 19.设有定义语句:int a[][3]={{0},{1},{2}};,则数组元素a[1][2]的值为( )。
A:不确定 B:2 C:0 D:1 20.有以下程序#include<stdio.h>#include<string.h>main(){ char s[]="12345"; printf("%d,%d", strlen(s),sizeof(s));}执行后输出结果是( )。
A:5,6 B:赋初值的字符串有错 C:6,6 D:6,7
温馨提示支付 ¥3.00 元后可查看付费内容,请先翻页预览!