1、1. 下列对 C 语言字符数组的描述中错误的是(C )。 (A)字符数组可以存放字符串 (B)字符数组中的字符串可以整体输入、输出 (C)可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值 (D)不可以用关系运算符对字符数组中的字符串进行比较2. 不能把字符串:Hello!赋给数组 b 的语句是( B )。(A)char b10=H,e,l,l,o,!;(B)char b10;b=“Hello!“;(C)char b10;strcpy(b,“Hello!“);(D)char b10=“Hello!“;3. 若有以下说明:int a12=1,2,3,4,5,6,7,8,9,10,11,12;
2、char c=a,d,g;则数值为 4 的表达式是( D )。(A)ag-c (B)a4 (C)ad-c (D)ad-c4. 以下程序的输出结果是( B )(A) 20 (B) 21 (C) 22 (D)23main() int i, k, a10, p3;k=5;for (i=0;i=0 i-) ai=10-i; printf(“%d%d%d“,a2,a5,a8); (A) 258 (B) 741 (C) 852 (D) 369 28. 以下数组定义中不正确的是(D ) 。(A) int a23; (B) int b3=0,1,2,3; (C) int c100100=0; (D) int
3、d3=1,2,1,2,3,1,2,3,4; 29. 以下程序的输出结果是( A ) 。main() int a44=1,3,5,2,4,6,3,5,7; printf(“%d%d%d%dn“,a03,a12,a21,a30; (A) 0650 (B) 1470 (C) 5430 (D) 输出值不定 30. 已有定义:char a=“xyz“,b=x,y,z;,以下叙述中正确的是( C)。(A)数组 a 和 b 的长度相同 (B)a 数组长度小于 b 数组长度(C)a 数组长度大于 b 数组长度 (D)上述说法都不对31. 以下程序段的输出结果是(A ) 。char s=“141141abct“
4、;printf (“%dn“,strlen(s);(A) 9 (B) 12 (C) 13 (D) 1432. 以下程序段的输出结果是(A )。char s=“141141abct“;printf (“%dn“,strlen(s);(A) 9 (B) 12 (C) 13 (D) 1433. 以下程序的输出结果是(B )。main() char cf35=“AAAA“,“BBB“,“CC“;printf(“%s“n“,ch1);(A) “AAAA“ (B) “BBB“ (C) “BBBCC“ (D) “CC“34. 若有定义:int aa 8;,则以下表达式中不能代表数组元 aa1的地址的是( C
5、) 。(A) for(i=0;is2)S; (B)if(strcmp(s1,s2)S;(C)if(strcmp(s2,s1)0)S; (D)if(strcmp(s1,s2)0)S; 44. 有以下程序main() int p8=11,12,13,14,15,16,17,18,i=0,j=0; while(i+main( ) char b30,*chp;strcpy( int i, j, k; k=strlen(a); for(i=0; iaj或 ai=aj t=ai; ai=aj; aj=t; puts(a); printf(“n“); 58. 下列程序段的输出结果是 Hello 。main(
6、) char b=“Hello,you“;b5=0;printf(“%s n“, b ); 59. 以下程序的输出结果是 abc 。main() char s=“abcdef“;s3=0;printf(“%sn“,s);60. 有以下程序main() int m3=1,4,7,2,5,8,3,6,9;int i,j,k=2;for(i=0;i3;i+) printf(“%d“,mk); 执行后输出结果是 3 6 9 。61. 以下程序运行后的输出结果是 _24 _ 。main() int p7=11,13,14,15,16,17,18;int i=0,j=0;while(i7 printf(“
7、%dn“,j);62. 以下程序运行后的输出结果是 _ 92_ 。main() int a44=1,2,3,4,5,6,7,8,11,12,13,14,15,16,17,18;int i=0,j=0,s=0;while(i+4)if(i=2|i=4) continue;j=0;do s+= aj; j+; while(j4);printf(“%dn“,s);63. 以下程序的输出结果是 30 。main()int a3 3=1,2,9,3,4,8,5,6,7,i,s=0;for(i=0;i3;i+) s+=ai i+ai 3-i-1 ;printf(“dn“,s);64. 一个 320 的整数
8、数组,要求输出该数组中的最小值,并将其行号和列号输出。(10分)65. 有一个 34 的矩阵,要求编程序求出其中值最大的那个元素的值,以及其所在的行号和列号。66. 从字符串中删除指定的字符。同一字母的大小写按不同字符处理。例如:若程序执行时,输入字符串为:turbo c and Borland c+,从键盘上输入字符:n,则输出后变为:turbo c ad borlad c+,如果输入的字符串不存在,则字符串照原样输出。(10分)67. 要求用数组实现求 fibonacci 数列 40 个数,并且每输出 5 个数换行。这个数列有如下特点:第 1,2 两个数为 1,1。从第 3 个数开始,该数
9、是其前面两个数之和。即:f1=1 (n=1)f2=1 (n=2)68. 求一个 33 矩阵主对角线元素之和。69. 将一个数组中的值按逆序重新存放。例如,原来顺序为 8,6,5,4,1。要求改为 1,4,5,6,8。70. 打印出以下的杨辉三角形(要求打印出 10 行) 。11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 171. 有一篇文章,共有 3 行文字,每行有 80 个字符。要求分别统计出其中英文大写字母、小写字母、数字、空格以及其他字符的个数。72. 用选择法对 10 个整数排序。73. 用冒泡法对 10 个整数排序。74. 要求在字符串中所有数字字符前加一个$字符。(10 分)例如,输入:A1B23CD45,则输出为:A$1B$2$3CD$4$5。fn=fn-1+fn-2 (n3)