首页 › 答案 › 题库 › 知到智慧树 › 未分类

智慧树知到《C君带你玩编程(昆明理工大学)》2024章节测试答案

智慧树知到《C君带你玩编程(昆明理工大学)》2024章节测试答案
第一章测试
1、将C程序编译成目标文件,其扩展名为EXE。
A、正确
B、错误
正确答案:B
2、main函数是C程序的入口,由计算机系统负责调用。
A、正确
B、错误
正确答案:A
3、变量必须先定义后使用。
A、正确
B、错误
正确答案:A
4、C语言是一种()。
A、低级语言
B、高级语言
C、机器语言
D、汇编语言
正确答案:B
5、在C源程序中,整型常量不能表示的数制是()。
A、二进制
B、八进制
C、十进制
D、十六进制
正确答案:A
6、若已定义charc='a',则变量c所占的字节数为__________。
A、1
B、2
C、3
D、4
正确答案:A[page_break]
第二章测试
1、二元运算符均可以和赋值运算符构成复合的赋值运算符。
A、正确
B、错误
正确答案:B
2、表达式1/4+2.75的值是3。
A、正确
B、错误
正确答案:B
3、已知i、j、k为int型变量,若从键盘输入:1,2,3,使i的值为1,j的值为2,k的值为3,以下选项中正确的输入语句是()。
A、scanf('%2d%2d%2d',&i,&j,&k);
B、scanf('%d%d%d',&i,&j,&k);
C、scanf('%d,%d,%d',&i,&j,&k);
D、scanf('i=%d,j=%d,k=%d',&i,&j,&k);
正确答案:C
4、以下叙述中正确的是______。
A、调用printf函数时,必须要有输出项
B、使用putchar函数时,必须在之前包含头文件stdio.h
C、在C语言中,整数可以以十二进制、八进制或十六进制的形式输出
D、调用getchar函数读入字符时,可以从键盘上输入字符所对应的ASCII码
正确答案:B
5、设有定义:intx=2;,以下表达式中,值不为6的是()。
A、x*=x+1
B、x++,2*x
C、x*=(1+x)
D、2*x,x+=2
正确答案:D[page_break]
第三章测试
1、所有关系运算符的运算优先级相同。
A、正确
B、错误
正确答案:B
2、关系运算符是双目运算符,其功能是将两个运算对象进行大小比较。
A、正确
B、错误
正确答案:A
3、当a=1,b=2,c=3时,执行语句“if(a>c){b=a;a=c;c=b;}”后,变量c中的值为2。
A、正确
B、错误
正确答案:A
4、为表示关系100≥b≥0,应使用C语言表达式______。
A、(100>=b)&&(b>=0)
B、(100>=b)and(b>=0)
C、100>=b>=0
D、(100>=B)&&(B>=0)
正确答案:A
5、else子句不能单独作为语句使用,它是if语句的一部分,必须与if配对使用。
A、正确
B、错误
正确答案:A[page_break]
第四章测试
1、在循环外的语句不受循环的控制,在循环内的语句也不受循环的控制。
A、正确
B、错误
正确答案:B
2、循环for(;;)的循环条件始终为真。
A、正确
B、错误
正确答案:A
3、若i为整型变量,则for(i=2;i==0;)printf("%d",i--);循环执行次数是0次。
A、正确
B、错误
正确答案:A
4、若变量已正确定义,有以下程序段i=0;doprintf("%d,",i);while(i++);printf("%d",i);其输出结果是()。
A、0,0
B、0,1
C、1,1
D、程序进入无限循环
正确答案:B
5、有以下程序#includevoidmain(){intx,a=1,b=1;while(1){scanf("%d",&x);if(x>0){a*=x;break;}if(x<0){b*=x;continue;}printf("%d,%d",a,b);}}程序运行时输入:-1-2012<回车>,则输出结果是()。
A、-1,1
B、2,2
C、1,2
D、-2,1
正确答案:C[page_break]
第五章测试
1、数组名代表数组的首地址。
A、正确
B、错误
正确答案:A
2、一个数组可以存储不同类型的数据。
A、正确
B、错误
正确答案:B
3、若有定义:inta[10];,使用数组元素时,下标的最小值是1,最大值是10。
A、正确
B、错误
正确答案:B
4、下面程序的运行结果是______。#include<stdio.h>main(){inta[5],i;for(i=0;i<5;i++){a[i]=9*(i-2+4*(i>3))%5;printf("%2d",a[i]);}}
A、-3-4044
B、-3-4043
C、-3-4042
D、-3-4040
正确答案:A
5、下面程序的运行结果是______。#include<stdio.h>main(){inta[3][3]={1,2,3,4,5,6,7,8,9},i;for(i=0;i<=2;i++)printf("%d",a[i][2-i]);}
A、357
B、369
C、159
D、147
正确答案:A
6、数组在定义时可以不指定数组的长度,可根据程序中实际使用的元素个数决定。
A、正确
B、错误
正确答案:B[page_break]
第六章测试
1、如果某个函数在定义时省略了存储类型,则默认的存储类型是int。
A、正确
B、错误
正确答案:A
2、函数可以嵌套定义,但是不可以嵌套调用。
A、正确
B、错误
正确答案:B
3、函数中的多个return语句,可以实现调用该函数后,多个值同时被返回。
A、正确
B、错误
正确答案:B
4、以下程序运行后的输出结果是________。#include"stdio.h"intf(intx);main(){intn=1,m;m=f(f(f(n)));printf("%d",m);}intf(intx){returnx*2;}
A、1
B、2
C、4
D、8
正确答案:D
5、以下程序的输出结果是________。#include"stdio.h"f(intb[],intm,intn){inti,s=0;for(i=m;i<=n;i=i+2)s=s+b[i];returns;}main(){intx,a[]={1,2,3,4,5,6,7,8,9};x=f(a,3,7);printf("%d",x);}
A、8
B、10
C、15
D、18
正确答案:D[page_break]
第七章测试
1、若有定义inta[5],*p=a;,则对a数组元素的正确引用是______。
A、*&a[5]
B、a+2
C、*(p+5)
D、*(a+2)
正确答案:D
2、以下程序的运行结果是______。#include"stdio.h"main(){intm=1,n=2,*p=&m,*q=&n,*r;r=p;p=q;q=r;printf("%d,%d,%d,%d",m,n,*p,*q);}
A、1,2,1,2
B、1,2,2,1
C、2,1,2,1
D、2,1,1,2
正确答案:B
3、若有语句int*point,a=4;和point=&a;下面均代表地址的一组选项是______。
A、a,point,*&a
B、&*a,&a,*point
C、&point,*point,&a
D、&a,&*point,point
正确答案:D
4、已知inta[4],*p;,则语句p=&a;是正确的。
A、正确
B、错误
正确答案:B
5、指针变量的类型不是该变量本身的类型,而是它所指向的变量的类型。
A、正确
B、错误
正确答案:A[page_break]
第八章测试
1、下列的结论中只有________是正确的。
A、所有的递归程序均可以采用非递归算法实现
B、只有部分递归程序可以用非递归算法实现
C、所有的递归程序均不可以采用非递归算法实现
D、以上三种说法都不对
正确答案:A
2、以下程序的执行结果为________。#include"stdio.h"floatfun(intx,inty){return(x*y);}main(){inta=2,b=5,c=8;printf("%.0f",fun((int)fun(a+b,c),a-b));}
A、168
B、-168
C、24
D、-24
正确答案:B
3、以下程序的输出结果是________。#include"stdio.h"#definef(x)x*xvoidmain(){inta=6,b=2,c;c=f(a)/f(b);printf("%d",c);}
A、9
B、18
C、36
D、6
正确答案:C
4、有参的宏,其参数参与运算,宏替换要先完成参数的计算,然后再执行替换。
A、正确
B、错误
正确答案:B
5、下列程序的运行结果为________。#include"stdio.h"#defineMA(x)x*(x-1)voidmain(){inta=1,b=2;printf("%d",MA(1+a+b));}
A、5
B、6
C、7
D、8
正确答案:D[page_break]
第九章测试
1、结构体中各个成员的数据类型必须是相同的。
A、正确
B、错误
正确答案:B
2、typedef的作用是给已有的数据类型取一个别名。
A、正确
B、错误
正确答案:A
3、结构体变量所占用空间是全部成员占用空间之和。
A、正确
B、错误
正确答案:A
4、在定义一个共用体变量时,系统分配给它的内存是()。
A、各成员所需内存之和
B、第一个成员所需内存
C、成员中占用内存最大者
D、任意一个成员所需内存
正确答案:C
5、已知对学生记录的描述为:structstudent{intnum;charname[20],sex;struct{intyear,month,day;}birthday;};structstudentstu;设变量stu中的"生日"是"1995年11月12日",对"birthday"正确赋值的程序是______。
A、year=1995;month=11;day=12;
B、stu.year=1995;stu.month=11;stu.day=12;
C、birthday.year=1995;birthday.month=11;birthday.day=12;
D、stu.birthday.year=1995;stu.birthday.month=11;stu.birthday.day=12;
正确答案:D[page_break]
第十章测试
1、C语言中通过文件指针对它所指向的文件进行操作。
A、正确
B、错误
正确答案:A
2、函数rewind()的作用是使文件指针返回上次移动的位置。
A、正确
B、错误
正确答案:B
3、以下函数不能用于向文件写入数据的是______。
A、ftell
B、fwrite
C、fputc
D、fprintf
A、正确
B、错误
正确答案:A
4、下列关于C语言文件的叙述中正确的是______。
A、文件由一系列数据依次排列组成,只能构成二进制文件
B、文件由结构序列组成,可以构成二进制文件或文本文件
C、文件由数据序列组成,可以构成二进制文件或文本文件
D、文件由字符序列组成,其类型只能是文本文件
正确答案:C
5、函数fopen()不可以打开二进制文件。
A、正确
B、错误
正确答案:B