则以下叙述正确的是 A)a与b数组完全相同 B)a与b长度相同 C)a和b中都存放字符串D)a数组比b数组长度长 【题7.32】有两个字符数组a、b,则以下正确的输入格式是 C) scanf(“%s%s”,&a,&b);D)gets(“a”),set(“b”); 【题7.33】有字符数组a[80]和b[80],则正确的输出形式是 A) puts(a, b) B) printf(“%s%s”,a[],b[]) C) putchar(a, b) D)puts(a), puts(b) 【题7.34】下面程序段的运行结果是 char a [7]=“ abcdef”; char b[4]=“ABC” strcpy(a, b) printf(“%c”,a[5]); A)空格B)0 c)e D)f 【题7.35】有下面的程序段 char a[3],b[]=“ China” printf(“%s”,a) 则 A)运行后将输出 China B)运行后将输出Ch C)运行后将输出Chi D)编译出错 【题7.36】下面程序段的运行结果是 char c[]=“\ t\v\\\Will\n” printf(“%d”, strlen(c)); A)14B)3C D)字符串中有非法字符,输出值不确定 【题7.37】判断字符串a和b是否相等,应当使用 A) if(a=b) B) if(a=b) C) if(strcpy(a, b)) D)if(strcmp(a, b)) 【题7.38】判断字符串s1是否大于字符串s2,应当使用 A) if(s1>s2) if(strcmp(sl, s2)) C)if(strcmp(s2, s1)>0) D) if(strcmp(sl, s2)>0) 【题7.39】下面程序段是输出两个字符串中对应字符相等的字符。请选择填空 char x[]=“ programmin char y[]=“ Fortran
则以下叙述正确的是 。 A)a 与 b 数组完全相同 B)a 与 b 长度相同 C)a 和 b 中都存放字符串 D)a 数组比 b 数组长度长 【题 7.32】有两个字符数组 a、b,则以下正确的输入格式是 。 A)gets(a,b); B)scanf(“%s %s”,a,b); C)scanf(“%s %s”,&a,&b); D)gets(“a”),get(“b”); 【题 7.33】有字符数组 a[80]和 b[80],则正确的输出形式是 。 A)puts(a,b); B)printf(“%s %s”,a[],b[]); C)putchar(a,b); D)puts(a),puts(b); 【题 7.34】下面程序段的运行结果是 。 char a[7]=“abcdef”; char b[4]=“ABC”; strcpy(a,b); printf(“%c”,a[5]); A)空格 B)\0 C)e D)f 【题 7.35】有下面的程序段 char a[3],b[]=“China”; a=b; printf(“%s”,a); 则 。 A)运行后将输出 China B)运行后将输出 Ch C)运行后将输出 Chi D)编译出错 【题 7.36】下面程序段的运行结果是 。 char c[]=“\t\v\\\0will\n”; printf(“%d”,strlen(c)); A)14 B)3 C)9 D)字符串中有非法字符,输出值不确定 【题 7.37】判断字符串 a 和 b 是否相等,应当使用 。 A)if(a==b) B)if(a=b) C)if(strcpy(a,b)) D)if(strcmp(a,b)) 【题 7.38】判断字符串 s1 是否大于字符串 s2,应当使用 。 A)if(s1>s2) B)if(strcmp(s1,s2)) C)if(strcmp(s2,s1)>0) D)if(strcmp(s1,s2)>0) 【题 7.39】下面程序段是输出两个字符串中对应字符相等的字符。请选择填空。 char x[]=“programming”; char y[]=“Fortran”; int i=0;
while(x[i]!=‘0’&&y[i]!=“10,) if(x[i]==y[i]) printf(“%c”,【1】) else itt 【1】A)x[i++]B)y[+i]C)x[i]D)y[i] 【题7.40】下面描述正确的是 A)两个字符串所包含的字符个数相同时,才能比较字符串 B)字符个数多的字符串比字符个数少的字符串大 )字符串“STOP”与“STOP”相等 D)字符串“That”小于字符串“The” 【题7.41】下述对C语言字符数组的描述中错误的是 A)字符数组可以存放字符串 B)字符数组的字符串可以整体输入、输出 C)可以在赋值语句中通过赋值运算符“≡”对字符数组整体赋值 D)不可以用关系运算符对字符数组中的字符串进行比较 【题7.42】有已排好序的字符串a,下面的程序是将字符串s中的每个字符按a中元素的规 律插入到a中。请选择填空。 #include <stdio. h> maino hara[20]=“ cehikngtw”; char s[]=“fbla” for(k=0;s[k]!=‘0’;k+) while(s[k]>=a[j]&&a[j]!=“0’)j+; for(【1】)【2】 alj]=s[k] (11 A) i=strlen(a)+k: i>=j; i-- B)i=strlen(a): i>=j:i C)i=j: i<=strlen(a)+k: i++ D) i=j: i<=strlen (a):i++ 【2】A)a[i]=a[i+1] B)ali+l=alil C)a[i]=a[i-1] D)a[i-1]=a[i] 【题7.43】下面程序的功能是将已按升序排好序的两个字符串a和b中的字符按升序归并 到字符串c中。请选择填空。 #include <stdio. h>
while(x[i]!=‘\0’&&y[i]!= ‘\0’) { if(x[i]==y[i]) printf(“%c”,【1】); else i++; } 【1】 A)x[i++] B)y[++i] C)x[i] D)y[i] 【题 7.40】下面描述正确的是 。 A) 两个字符串所包含的字符个数相同时,才能比较字符串 B) 字符个数多的字符串比字符个数少的字符串大 C) 字符串“STOP ”与“STOP”相等 D) 字符串“That”小于字符串“The” 【题 7.41】下述对 C 语言字符数组的描述中错误的是 。 A) 字符数组可以存放字符串 B) 字符数组的字符串可以整体输入、输出 C) 可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值 D) 不可以用关系运算符对字符数组中的字符串进行比较 【题 7.42】有已排好序的字符串 a,下面的程序是将字符串 s 中的每个字符按 a 中元素的规 律插入到 a 中。请选择填空。 #include <stdio.h> main() { char a[20]=“cehiknqtw”; char s[]=“fbla”; int i,k,j; for(k=0;s[k]!=‘\0’;k++) { j=0; while(s[k]>=a[j]&&a[j]!=‘\0’) j++; for(【1】) 【2】; a[j]=s[k]; } puts(a); } 【1】 A)i=strlen(a)+k; i>=j; i-- B)i=strlen(a); i>=j; i-- C)i=j; i<=strlen(a)+k; i++ D)i=j; i<=strlen(a); i++ 【2】 A)a[i]=a[i+1] B)a[i+1]=a[i] C)a[i]=a[i-1] D)a[i-1]=a[i] 【题 7.43】下面程序的功能是将已按升序排好序的两个字符串 a 和 b 中的字符按升序归并 到字符串 c 中。请选择填空。 #include <stdio.h>
char a[]=“ acegi harb[]=“ bdf jl char c while(a[i]!=“0’&&b[j!=“10’) if(a[i]<b[j]){【1】} else{【2】} [k]=“10 f(【3】)p=b+j strcat(c, p) 【1】A)c[k]=a[i];i++; B)c[k]=a[j];i++; C)c[k]=a[i];j++; D)c[k]=a[j;j++; 【2】A)c[k]=a[i];i++; B)c[k]=a[j];i++ C)c[k]=a[i];j+; D)c[k]=a[j]: j++ 【3】A)a[i]== B)a[i]!=“10 )a[i-1]=10 D)a[i-1]!=‘\0 【题7.44】下面程序的功能是将字符串s中所有的字符c删除。请选择填空。 #include <stdio. h> char s int 1,J gets(s) for(i=j=0;s[i]!=‘0’;i++) f(s[i]!=‘c’)【1】 s[j]=“0 【1】A)s[j++]=s[i] B)s[++j]=s[i] C)s[j]=s[i];j++ D)sli]=s[il 【题7.45】下面程序的功能是从键盘输入一行字符,统计其中有多少个单词,单词之间用 空格分隔。请选择填空 #include <stdio. h>
main() { char a[]=“acegikm”; char b[]=“bdfhjlnpq”; char c[80],*p; int i=0,j=0,k=0; while(a[i]!=‘\0’&&b[j]!=‘\0’) { if(a[i]<b[j]) { 【1】 } else { 【2】 } k++; } c[k]= ‘\0’; if(【3】) p=b+j; else p=a+i; strcat(c,p); puts(c); } 【1】 A)c[k]=a[i]; i++; B)c[k]=a[j]; i++; C)c[k]=a[i]; j++; D)c[k]=a[j]; j++; 【2】 A)c[k]=a[i]; i++; B)c[k]=a[j]; i++; C)c[k]=a[i]; j++; D)c[k]=a[j]; j++; 【3】 A)a[i]==‘\0’ B)a[i]!=‘\0’ C)a[i-1]==‘\0’ D)a[i-1]!=‘\0’ 【题 7.44】下面程序的功能是将字符串 s 中所有的字符 c 删除。请选择填空。 #include <stdio.h> main() { char s[80]; int i,j; gets(s); for(i=j=0;s[i]!=‘\0’;i++) if(s[i]!=‘c’) 【1】; s[j]=‘\0’; puts(s); } 【1】 A)s[j++]=s[i] B)s[++j]=s[i] C)s[j]=s[i]; j++ D)s[j]=s[i] 【题 7.45】下面程序的功能是从键盘输入一行字符,统计其中有多少个单词,单词之间用 空格分隔。请选择填空。 #include <stdio.h> main()
har s[80, cl, c2 cl=s [i] if(i=0)c2= else c2=s[i-1] (【1】)num++; printf(“ There are% d words.n”,num); 【1】 C)cl==“’&&c2!=‘ D)cl!=“’&&c2!=‘ 【题7.46】下面程序的运行结果是 #include <stdio. h> char ch[7]={“12ab56”}; int i,s=0 for(i=0;ch[i]>=“0’&&ch[i]<=‘9’;i+=2) s=10*s+ch[i]-“0’; A)1 B)1256C)12ab56 D)1 【题7.47】当运行以下程序时,从键盘输入:aabb<CR> (<CR>表示回车),则下面程序的运行结果是 #include <stdio. h> char al[5],a2[5],a3[5],a45]; ts(al): puts(a puts(a3): puts(a4)
{ char s[80],c1,c2=‘’; int i=0,num=0; gets(s); while(s[i]!=‘\0’) { c1=s[i]; if(i==0) c2=‘’; else c2=s[i-1]; if(【1】) num++; i++; } printf(“There are %d words.\n”,num); } 【1】 A)c1==‘’&&c2==‘’ B)c1!=‘’&&c2==‘’ C)c1==‘’&&c2!=‘’ D)c1!=‘’&&c2!=‘’ 【题 7.46】下面程序的运行结果是 。 #include <stdio.h> main() { char ch[7]={“12ab56”}; 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)1 B)1256 C)12ab56 D)1 2 5 6 【题 7.47】当运行以下程序时,从键盘输入:aa bb<CR> cc dd<CR> (<CR>表示回车),则下面程序的运行结果是 。 #include <stdio.h> main() { char a1[5],a2[5],a3[5],a4[5]; scanf(“%s %s”,a1,a2); gets(a3); gets(a4); puts(a1); puts(a2); puts(a3); puts(a4); }
【题7.48】当运行以下程序时,从键盘输入:ab<CR> def<cr> (<CR>表示回车),则下面程序的运行结果是 #include <stdio. h> #define n 6 maino char cINJ for(i<N;c[i]=getchar, i++) for(i=0: i<N; i++)putchar(clil) A) abcdef B) c)b D) ab b 【题7.49】当运行以下程序时,从键盘输入: AhaM Aha<CR>(<CR>表示回车),则下面程序 的运行结果是 #include <stdio. h> int i=0: hile(s[i]!=‘0 f(s[i]=c)s[i]=s[i]-32; else if(s [i]==c-32)s[i]=s [i]+32 puts(s) A) ahAMa B) AhAMa C) AhAMa aha D) ahAMa ahA 【题7.50】下面程序的运行结果是
A)aa B)aa C)aa D)aa bb bb bb bb cc cc cc dd dd cc dd dd ee 【题 7.48】当运行以下程序时,从键盘输入:ab<CR> c<CR> def<CR> (<CR>表示回车),则下面程序的运行结果是 。 #include <stdio.h> #define N 6 main() { char c[N]; int i=0; for(;i<N;c[i]=getchar(),i++); for(i=0;i<N;i++) putchar(c[i]); } A)abcdef B)a C)b D)ab b c c c d d d e f 【题 7.49】当运行以下程序时,从键盘输入:AhaMA Aha<CR>(<CR>表示回车),则下面程序 的运行结果是 。 #include <stdio.h> main() { char s[80],c=‘a’; int i=0; scanf(“%s”,s); while(s[i]!=‘\0’) { if(s[i]==c) s[i]=s[i]-32; else if(s[i]==c-32) s[i]=s[i]+32; i++; } puts(s); } A)ahAMa B)AhAMa C)AhAMa ahA D)ahAMa ahA 【题 7.50】下面程序的运行结果是