若有以下说明语句
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、选择题
1、若有以下说明语句:
int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};
char c=’a’,d,g;
则数值为4的表达式是_________。
A、a[g-c]
B、a[4]
C、a[‘d’-‘c’]
D、a[‘d’-c]
2、假设int型变量占两个字节的存储单元,若有定义:
int x[10]={0,2,4};
则数组x在内存中所占字节数为________。
A、3
B、6
C、10
D、20
3、下列合法的数组定义是________。
A、int a[]=”string”;
B、int a[5]={0,1,2,3,4,5};
C、char a=”string”;
D、char a[]={0,1,2,3,4,5};
4、若给出以下定义:
char x[]=”abcdefg”;
char y[]={‘a’,’b’,’c’,’d’,’e’,’f’,’g’};
则正确的叙述为________。
A、数组x和数组y等价
B、数组x和数组y的长度相同
C、数组x的长度大于数组y的长度
D、数组y的长度大于数组x的长度
5、下列程序运行后的输出结果是________。
Main()
{int n[3],t,j,k;
for(t=0;t<3;t++)
n[t]=0;
k=2;
for(t=0;t for(j=0;j<3;j++) n[j]=n[t]+1; printf(“%d\n”,n[1]);} A、2 B、1 C、0 D、3 6、有以下程序 main() { int p[7]={11,13,14,15,16,17,18}, i=0,k=0; while(i<7 && p[i]%2) { k =k+ p[i]; i++; } printf("%d\n", k); } 执行后输出结果是________。 A、58 B、56 C、45 D、24 7、以下能正确定义一维数组的选项是________。 A、int num[]; B)#define N 100 int num[N]; C、int num[0..100]; D)int N=100; int num[N]; 8、有以下程序 main( ) { char a[]="abcdefg",b[10]="abcdefg"; printf("%d %d\n",sizeof(a),sizeof(b)); } 执行后输出结果是________。 A、7 7 B、8 8 C、8 10 D、10 10 9、若有以下定义语句: char s[10],s=”abcd”;printf(“%s\n”,s); 则运行结果是_________。 A、输出abcd B、输出a C、输出ab cd D、编译不通过 10、不能把字符串“Hello!”赋给数组b的语句是________。 A、char b[10]={‘H’,’e’,’l’,’l’,’o’,’!’}; B、char b[10];b=”Hello!”; C、char b[10]; strcpy(b,”Hello!”); D、char b[10]=”Hello!”; 二、填空题 1、观察一下程序,在指定行加上注释,并说出程序的执行结果。 main() { int i,a[10]; _________ for(i=0;i<10;i++) { a[i]=3*i+1; _________ printf(“%5d”,a[i]); } printf(“\n”); for(i=9;i>=0;i--,i--) { if(a[i]%2==0) printf(“%5d”,a[i]); _________ } } 程序结果:________ 2、以下程序的输出结果是________。 main() { char s[]="abcdef"; s[3]=‘\0'; printf("%s\n",s); } 3、以下程序的输出结果是________。 main() { int i, a[10]; for(i=9;i>=0;i--) a[i]=10-i; printf("%d,%d,%d",a[2],a[5],a[8]); } 4、下列程序段的输出结果是________。 main() { char b[]=”Hello,you”; b[5]=’\0’; printf(“%s\n”,b); } 5、若想通过以下输入语句使a中存放字符串“1234”,b中存放字符“5”,则输入数据的形 式应该是_______。 char a[10],b; scanf(“a=%s,b=%c”,&a,&b); 三、编写程序 1、写一个函数,将一个整型数x插入到由小到大排列的整型数组a[0]~a[N-1]中,使得插入 元素后的数组a[0]~a[N]保持升序。 2、将两个字符串连接起来(不用strcat)。 3、随机产生N个(N由用户定义)0~9之内的整数,分别统计数字0和9出现的次数。 4、键盘输入某串,求字符ASC码之和。