C语言程序设计基础(石河子大学)智慧树知到章节测试答案_第1页
C语言程序设计基础(石河子大学)智慧树知到章节测试答案_第2页
C语言程序设计基础(石河子大学)智慧树知到章节测试答案_第3页
C语言程序设计基础(石河子大学)智慧树知到章节测试答案_第4页
C语言程序设计基础(石河子大学)智慧树知到章节测试答案_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、c语言程序设计基础(石河子大学)智慧树知到章节测试答案c语言程序设计基础(石河子大学)智慧树知到章节测试答案第一章测试1、下列对c语言特点的描述中,错误的是( )。a、c语言不是结构化程序设计语言b、c语言编程简洁明了c、c语言功能较强d、c语言移植性好答案:a2、下列关于c语言程序在结构上特点的描述中,错误的是( )。a、c语言程序是一个函数串b、c语言程序可以由一个或多个文件组成c、c语言程序的诸多函数中,只能有一个主函数d、c语言程序被执行时,通常是从第1个函数开始答案:d3、在scanf()函数的格式说明符中,长整型数的输入格式说明符是( )。a、%db、%lfc、%ldd、%x答案:

2、c4、在printf()函数的格式说明符中,双精度浮点型数的输出格式说明符是( )。a、%ldb、%lfc、%cd、%s答案:b5、下列不是c语言特点的是?a、c语言是一个有结构化程序设计、具有变量作用域(variable scope)以及递归功能的过程式语言。b、语言传递参数均是以值传递(pass by value),另外也可以传递指针(a pointer passed by value)。c、不同的变量类型可以用结构体(struct)组合在一起。d、只有64个保留字(reserved keywords),使变量、函数命名有更多弹性。答案:d6、几乎没有不能用c语言实现的软件?答案:x7、c

3、编译器主要有clang、gcc、win-tc、sublime、msvc、turbo c等?答案:8、dev c+是一个开源的编程软件吗?答案:9、编程环境包括编辑程序(edit)、编译(compile)、调试(debug)等过程对吗?答案:10、任何程序都有主函数吗?答案:第二章测试1、若i=3,j=i+;执行运算后i和j的值为?a、i=4,j=3b、i=3,j=4c、i=3,j=3d、i=4,j=4答案:a2、下列函数在屏幕上输出的结果是? # include int main(void ) printf("学号 姓名 班级n");return 0; a、学号 姓名 班级

4、b、学号班级姓名c、"学号 姓名 班级"d、"学号 姓名 班级n"答案:a3、下列函数在屏幕上输出的结果是? # include int main(void ) printf("*n*n*n*n"); return 0; a、"*n*n*n*n"b、*n*n*n*nc、* * * *d、* * * *答案:d4、关于关系运算,下列说法正确的是?a、关系表达式的值是一个逻辑值,即“真”或“假”。b、关系表达式“a>b”的值为“真”,表达式的值为0。c、>=和=的优先级相同。d、关系运算符的优先级低于赋值运

5、算符答案:a5、下列运算符,优先级最高的是?a、|b、&&c、!d、>答案:b6、关于if-else 语句,下列说法错误的是?a、当if和else数目不同时,可以加花括号来确定配对关系。b、if语句后面只能加逻辑表达式。c、else总是与它上面的,最近的,同一复合语句中的,未配 对的if语句配对。d、在if语句中可嵌套一个或多个if语句。答案:b7、关于scanf()函数,说法正确的是?a、a. scanf()函数中的“格式控制”后面应当是变量名。b、scanf()函数中“u”是用来输入无符号的十进制整数的格式字符。c、scanf()函数中“d”是用来输入无符号的十进制整

6、数的格式字符。d、scanf()函数中“u”是用来输入有符号的十进制整数的格式字符。答案:b8、语句for(i=1;i=c、(类型)d、+答案:c2、执行下列程序段后,m的值是( ). int w=2,x=3,y=4,z=5,m; m=(w void main() int x,y; scanf("%d,%d",&x,&y);if(x>y) x=y;y=x; else x+;y+; printf("%d,%d",x,y);a、语法错误,不能通过编译b、输入数据3和4,则输入4和5c、输入数据4和3,则输入3和4d、输入数据4和3,则输

7、出4和4答案:a4、两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是( ). #include void main( ) int x;scanf(" %d ", &x); if(x+>5) printf(" %d",x); else printf(" %dn", x-); a、7和5b、6和3c、7和4d、6和4答案:a5、执行下列语句后的输出为( ). int j=-1; if(j b> c) printf(" %dn",d); elseif (c-1> = d) = = 1

8、) printf(" %dn",d+ 1); else printf(" %dn",d + 2);执行后输出结果是( ).a、2b、3c、4d、编译时有错,无结果答案:b10、当a=1、b=2、c=5、d=5时,执行下面的程序后,x的值是( ). if(a main() int n,sum=0;n=2345; do sum=sum+ ; n=n/10; while(n); printf(“sum=%d”,sum); a、n%10b、(n%10)*(n%10)c、n/10d、(n/10)*(n/10)答案:b3、对以下程序段,循环体执行的次数是 。 int

9、 k=0; while(k=1) k+;a、有语法错误,不能执行b、一次也不执行c、执行一次d、无数次答案:d4、下面程序段的执行结果是( )。 a=1;b=2;c=2; while(a=0时什么也不输出c、printf函数永远也不执行d、循环一次也不会被执行答案:a第六章测试1、以下正确的函数形式是 。a、double fun(int x,int y) z=x+y; return z; b、double fun(int x,y) int z; return z; c、double fun(x,y) int x,y; double z; z=x+y; return z; d、double fu

10、n(int x,int y) double z; z=x+y; return z; 答案:d2、若调用一个函数,且此函数中没有return语句,则正确的说法是。a、该函数没有返回值b、该函数返回若干个系统默认值c、该函数能返回一个用户所希望的函数值d、该函数返回一个不确定的值答案:a3、以下正确的说法是。a、实参和与其对应的形参各占用独立的存储单元b、实参和与其对应的形参共占用一个存储单元c、只有当实参和与其对应的形参同名时才共占用存储单元d、形参是虚拟的,不占用存储单元答案:a4、下面函数调用语句含有实参的个数为。 func(exp1,exp2),(exp3,exp4,exp5);a、1b、

11、2c、4d、5答案:b5、若使用一维数组名作函数实参,则以下正确的说法是。a、必须在主调函数中说明此数组的大小b、实参数组类型与形参数组类型可以不匹配c、在被调函数中,不需要考虑形参数组的大小d、实参数组名与形参数组名必须一致答案:a6、凡是函数中未指定存储类型的局部变量,其隐含的存储类别为。a、自动(auto)b、静态(static)c、外部(extern)d、寄存器(register)答案:a7、执行下列程序: #define m(x,y) (x*y) i=3; i=m(i,i+1)-8; 变量i的值应为。a、2b、3c、4d、5答案:a8、执行下列程序,正确的输出是。 int x=3,y

12、=5; void swap() int a; a=x; x=y; y=a; intmain() int x=5,y=7; swap(); printf(“%d,%dn”,x,y); return 0; a、3,5b、5,3c、5,7d、7,5答案:c9、以下程序是选出能被3整除且至少有一位是5的两位数,打印出所有这样的数及其个数。请选择填空。 sub(int k,int n) int a1,a2;a2= ; a1=k-a2*10; if(k%3=0&&a2=5)|(k%3=0&&a1=5) printf(“%d”,k); n+;return n; else re

13、turn -1; int main() int n=0,k,m; for(k=10;k int fun(int x) int p; if(x=0 | x=1) return 3;p=x-fun(x-2); return p; int main() printf(“%dn”,fun(9); return 0; 正确的输出是。a、9b、7c、5d、4答案:b第七章测试1、下列数组定义语句中,正确的是( )。a、int a=1,2,3,4,5,6;b、char a23'a','b';c、int a3= 1,2,3,4,5,6;d、static int a1,2,3,4

14、,5,6;答案:c2、设有下列数据定义语句,则数组元素xi的值是( )。 int i 3,x4=1,2,3;a、0b、1c、2d、3答案:a3、运行下列程序的输出结果是( ) main() int a=1,2,3,4,5,i; for(i=1;i #include main() chara10=”abcd”; printf(“%d,%dn”,strlen(a),sizeof(a); a、7,4b、10,10c、8,8d、4,10答案:d6、程序运行后的输出结果是( )。 #include main() int b33=0,1,2,0,1,2,0,1,2;int i,j,t=1; for(i=0

15、;i int main() static chara=”language”,b=”programe”; char *p1,*p2; int k; p1=a; p2=b;for(k=0;k #include main() char*p1,*p2,str50=”abc”; p1=”abc”;p2=”abc”; strcpy(str+1,strcat(p1,p2);printf(“%sn”,str); a、abcabcabcb、bcabcabcc、aabcabcd、cabcabc答案:c5、若有说明:char *language=“fortran”,”basic”,”pascal”,”java”,”

16、c”;则表达式*language1>*language3比较的是。a、字符f和字符pb、字符串basic和字符串javac、字符b和字符jd、字符串fortran和字符串pascal答案:b6、若有说明语句 char a=”it is mine”; char *p=”it is mine”; 则以下不正确的叙述是_。a、a+1表示的是字符t的地址b、p指向另外的字符串时,字符串的长度不受限制c、p变量中存放的地址值可以改变d、a中只能存放10个字符答案:d7、以下程序调用fun函数求数组中最大值所在元素的下标。 #include void fun(int *s,int n, int *k

17、) int i; for(i=0,*k=i;is*k) _ int main() inta5=1,8,3,6,9,k; fun(a,5,&k); printf(“%d,%dn”,k,ak); return 0; a、*k=i;b、k=i;c、*k=i-s;d、k=i-s;答案:a8、有以下程序: #include void fun(int *p, int *q) int *t; t=p; p=q; q=t; int main() int a=0,b=9; fun(&a,&b); printf(“%d,%dn”,a,b); return 0; 程序的输出结果是。a、9,0

18、b、0,9c、9,9d、0,0答案:b9、以下正确的定义语句和赋值语句是_。a、int b35,(*p)3,(*q)5; p=b; q=b;b、char b35,*p3; p0=b0; p2=*b+4;c、double b35,s53,*q; q=b; s=q;d、int b10,*q; char *s; q=b; s=b;答案:b10、a、*p1=*p2;b、p1=p2;c、p1=*p2;d、*p1=p2;答案:b第九章测试1、有以下结构体定义: struct example int x; int y; v1; 则正确的引用或定义是( ) 。a、v1.x=10;b、example v2; v

19、2.x=10;c、struct v2; v2.x=10;d、struct example v2=10;答案:a2、对于如下结构体定义,若对变量person的出生年份进行赋值,正确的赋值是( )。 struct date int year,month,day; ;struct worklist char name20; char sex; struct date birth; person;a、year=1976b、birth.year=1976c、person.birth.year=1976d、person.year=1976答案:c3、根据下述定义,可以输出字符'a'的语句是

20、( )。 struct person char name11; struct charname11; int age; other; ; struct person man10="jone","paul",20,"paul","mary",18,"mary","adam",23,"adam","jone",22 ;a、printf("%c",0);b、printf("%c&qu

21、ot;,0);c、printf("%c",man2.(* other0);d、printf("%c",);答案:a4、若有以下程序段: struct st int n; struct st *next; ; struct sta3=5,&a1,7,&a2,9, '0' ,*p=a; 则值为6的表达式为( )。a、p+->nb、p->n+c、(*p).n+d、+p->n答案:d5、运行下列程序段,输出结果是( ) 。 struct country int num; ch

22、ar name10;x5=1,"china",2,"usa",3,"france",4, "england",5, "spanish" struct country*p; p=x+2; printf("%d,%c",p->num,(*p).name2);a、3,ab、4,gc、2,usad、5,spanish答案:a6、定义以下结构体数组 struct c int x; int y; s2=1,3,2,7;语句printf("%d",s0.x*s1.x)的输出结果为( )a、14b、6c、2d、21答案:c7、定义以下结构体类型 struct student char name10; float score50; doub

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论