当前位置:首页 > C语言单元习题集
《C语言程序设计》习题集
k=2;
for(I=0;I n[j]=n[I]+1; printf(“%d\\n”,n[1]);} (A)2 (B)1 (C)0 (D)3 7. 下面程序的输出结果是( ) main() { int n = 0; while(n++ <=1) printf(“%d\\t”,n); printf(“%d\\n”,n);} (A)1 2 3 (B)0 1 2 (C)1 1 2 (D)1 2 2 8. 当输入为”quert?”时,下面程序的执行结果是( ) main() { char c; c=getchar(); while((c=getchar())!=’?’) putchar(++c);} (A)Quert (B)vfsu (C)quert? (D)rvfsu? 9. 当输入为”quert?”时,下面程序的执行结果是( ) main() {while(putchar(getchar())!=’?’);} (A)quert (B)Rvfsu (C)quert? (D)rvfsu? 10. 当输入为”quert?”时,下面程序的执行结果是( ) main() {char c; c=getchar(); while(c!=’?’) { putchar( c ); c=getchar();}} (A)quert (B)Rvfsu (C)quert? (D)rvfsu? 1. 将for(表达式1;表达式2;表达式3)语句改写为等价的while语句为( - 17 - ) 2. break语句的功能是( ) 《C语言程序设计》习题集 3. break语句只能用于( )语句和( )语句 4. continue语句的作用是( ),即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循 环的判定。 1. 求100-200间的全部素数 2. 编一程序,将2000年到3000年中所有的闰年年份输出并统计出闰年的总年数,要求每10个闰年 放在一行输出。 - 18 - 《C语言程序设计》习题集 数组 1. 若有语句int a[8];则下述对a 的描述正确的是( )。 (A)定义了一个名称为a的一维整型数组,共有8个元素 (B)定义了一个数组a,数组a共有9个元素 (C)说明数组a的第8个元素为整型变量 (D)以上可选答案都不对 2. 在C语言中,引用数组元素时,其数组下标的数据类型允许是( )。 (A)整型常量(B)整型表达式(C)整型常量或整型表达式(D)任何类型的表达式 3. 下述对C语言字符数组的描述正确的是( )。 (A)任何一维数组的名称都是该数组存储单元的开始地址,且其每个元素按照顺序连续占用存储空间 (B)一维数组的元素在引用时其下标大小没有限制 (C)任何一个一维数组的元素,可以根据内存的情况按照其先后顺序以连续或非连续的方式占用存储 空间 (D)一维数组的第一个元素是其下标为1的元素 3. 下述对C语言字符数组的描述中正确的是( )。 (A)任何一个一维数组的元素在引用时,其下标可以是整型、实型或字符型常量 (B)一维数组的元素实质上就是一个变量,代表内存中的一个存储单元 (C)如果要引用数组中的每一个元素,则直接使用该数组名称即可 (D)以上都不对 5. 以下对一维整型数组a的正确说明是( )。 (A)int a(10); (B)int n=10,a[n]; (C) int n; (D) #define SIZE 10 scanf(“%d”,&n); int a[SIZE]; int a[n]; 6. 以下能对一维数组a进行正确初始化的语句是( ) (A)int a[10]=(0,0,0,0,0);(B)int a[10]={};(C)int a[]={0};(D)int a[10]=(10*1); 7. 若有说明:int a[3][4];则对a数组元素的正确引用是( ) (A)a[2][4] (B)a[1,3] (C)a[1+1][0] (D)a(2)(1) 8. 以下能对二维数组a进行正确初始化的语句是( ) (A)int a[2][]={{1,0,1},{5,2,3}};(B)int a[][3]={{1,2,3},{4,5,6}}; (C)int a[2][4]={{1,2,3},{4,5},{6}};(D)int a[][3]={{1,0,1}{},{1,1}}; 9. 若有说明:int a[3][4]={0};则下面正确的叙述是( ) - 19 - 《C语言程序设计》习题集 (A)只有元素a[0][0]可得到初值0 (B)此说明语句不正确 (C)数组a中各元素都可得到初值,但其值不一定为0 (D)数组a中每个元素均可得到初值0 10. 以下各组选项中,均能正确定义二维实型数组a的选项是( ) (A)float a[3][4]; float a[][4]; float a[3][]={{1},{0}}; (B)float a(3,4); float a[3][4]; float a[][]={{0};{0}}; (C)float a[3][4]; static float a[][4]={{0},{0}}; (D)float a[3][4]; float a[3][]; 11. 若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为(的第一个位置上。) (A)i*m+j(B)j*m+i(C)i*m+j-1(D)i*m+j+1 12. 对以下说明语句的正确理解是( ) int a[10] = {6,7,8,9,10}; (A)将5个初值依次赋给a[1]至a[5] (B)将5个初值依次赋给a[0]至a[4] (C)将5个初值依次赋给a[6]至a[10] (D)因为数组长度与初值的个数不相同,语句有错 13. 若有说明:int a[][3]={1,2,3,4,5,6,7};则a数组第一维的大小是( ) (A)2 (B)3 (C)4 (D)不确定 14. 定义如下变量和数组: int I; int x[3][3]={1,2,3,4,5,6,7,8,9}; 则下面语句的输出结果是( ) for(I=0;I<3;I++) printf(“%d”,x[I][2-I]); (A)1 5 9(B)1 4 7(C)3 5 7(D)3 6 9 15. 下面程序的运行结果是( ) main() {int a[6][6],I,j; for(I=1;I<6;I++) for(j=1;j<6;j++) - 20 - 。(假设a[0][0]位于数组 )
共分享92篇相关文档