2022知到答案 C语言程序设计-案例驱动 轻松掌握 最新智慧树满分章节测试答案

第一章 单元测试

1、单选题:
C 语言中规定:在一个源程序中main 函数的位置( )。
选项:
A:必须在最开始
B:可以任意
C:必须在最后
D:必须在系统调用的库函数的后面
答案: 【可以任意】

2、单选题:
一个C 语言程序是由( )。
选项:
A:若干过程组成
B:一个主程序和若干个子程序组成
C:若干子程序组成
D:函数组成
答案: 【函数组成】

3、判断题:
C++、Java 以及C#都源自于C语言。( )
选项:
A:对
B:错
答案: 【对】

4、多选题:
计算机内部运算不使用的数是( )。
选项:
A:八进制数
B:十六进制数
C:二进制数
D:十进制数
答案: 【八进制数;
十六进制数;
十进制数】

5、多选题:
不能将高级语言编写的源程序转换为目标程序的是( )。
选项:
A:编译程序
B:WORD 字处理程序
C:链接程序
D:网络程序
答案: 【WORD 字处理程序;
链接程序;
网络程序】

第二章 单元测试

1、单选题:
PC机中,’n’在内存占用的字节数是( )
选项:
A:1
B:4
C:2
D:3
答案: 【1】

2、单选题:
在以下一组运算符中,优先级最低的运算符是( )
选项:
A:+
B:=
C:!=
D:*
答案: 【=】

3、单选题:
设ch是 char型变量,其值为 ‘A’,则表达式 ch=(ch>=’A’&& ch<=‘z’)? (ch+32) : ch 的值是( )
选项:
A:A
B:a
C:z
D:Z
答案: 【a】

4、单选题:
要为字符型变量a赋初值,下列语句中哪一个是正确的( )。
选项:
A:char a=”3″
B:char a=’3’
C:char a=%
D:char a=*
答案: 【char a=’3’】

5、多选题:
以下用户标识符中,不合法的是( )
选项:
A:nit
B:123
C:a+b
D:int
答案: 【123;
a+b ;
int】

第三章 单元测试

1、单选题:
下列语句中符合C语言语法的赋值语句是( )。
选项:
A:a=7+b, b++, a+7;
B:a=7+b, c=a+7;
C:a=7+b++=a+7;
D:a=7+b+c=a+7;
答案: 【】

2、单选题:
以下程序输出结果是 main(){ int m=5;if(m++>5)printf(“%dn”,m);else printf(“%dn”,m–); } ( )
选项:
A:5
B:7
C:4
D:6
答案: 【】

3、单选题:
若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为( )。
选项:
A:a=0
B:a<>0
C:a
D:!a
答案: 【】

4、单选题:
如果c为字符型变量,判断c是否为空格不能使用(假设已知空格ASCII码为32)( )。
选项:
A:if(c==32)
B:if(c==’ ‘)
C:if(c==’40’)
D:if(c==’32’)
答案: 【】

5、单选题:
下列叙述中正确的是( )。
选项:
A:break语句必须与switch语句中的case配对使用
B:在switch语句中必须使用default
C:break语句只能用于switch语句
D:在switch语句中,不-定使用break语句
答案: 【】

6、单选题:
表达式:10!=9的值是( )。
选项:
A:非零值
B:1
C:0
D:true
答案: 【】

7、单选题:
能正确表示逻辑关系:“a≥10或a≤0”的C语言表达式是( )。
选项:
A:a>=10‖a<=0
B:a>=10 or a<=0
C:a>=10 &&a<=0
D:a>=0|a<=10
答案: 【】

8、单选题:
有以下程序main(){ int a,b,c=246;a=c/100%9;b=(-1)&&(-1);printf(“%d,%dn”,a,b);}输出结果是( )。
选项:
A:2,-1
B:4,3
C:2,1
D:3,2
答案: 【

9、单选题:
若变量c为char类型,能正确判断出c为小写字母的表达式是( )。
选项:
A:’a’<=c<= ‘z’
B:(‘a’<=c)and (‘z’>=c)
C:(c>= ‘a’)&&(c<= ‘z’)
D:(c>= ‘a’)||(c<= ‘z’)
答案: 【

10、单选题:
下面程序的输出是 main(){ int a=-1,b=4,k;k=(a++<=0)&&(!(b–<=0));printf(“%d %d %d%n”,k,a,b);} ( )
选项:
A:0 1 2
B:1 0 3
C:0 0 3
D:1 1 2
答案: 【】

第四章 单元测试

1、单选题:
若i为整型变量,则以下循环执行次数是 for(i=2; 2==0; ) printf ( ” %d”, i– ); ( )
选项:
A:无限次
B:2次
C:1 次
D:0次
答案: 【

2、单选题:
C语言中while和 do-while循环的主要区别是( )。
选项:
A:do-while允许从外部转到循环体内
B:do-while的循环体不能是复合语句
C:while的循环控制条件比 do-while的循环控制条件严格
D:do-whil的循环体至少无条件执行一次
答案: 【

3、单选题:
下面有关for循环的正确描述是( )。
选项:
A:for循环体语句中,可以包含多条语句,但要用花括号括起来
B:在for循环中,不能用break语句跳出循环体
C:for循环是先执行循环体语句,后判定表达式
D:for循环只能用于循环次数已经确定的情况
答案: 【

4、单选题:
语句while (!e);中的条件!e等价于( )。
选项:
A:~c
B:e!=0
C:e==0
D:e!=1
答案: 【

5、单选题:
t为int类型,进入下面的循环之前,t的值为0 while( t=l ) { ……} 则以下叙述中正确的是 ( )
选项:
A:其他说法都不对
B:循环控制表达式的值为1
C:循环控制表达式不合法
D:循环控制表达式的值为0
答案: 【

6、单选题:
有以下程序main( ){ int i,s=0;for(i=1;i<10;i+=2) s+=i+1;printf(“%dn”,s);}程序执行后的输出结果是 ( )。
选项:
A:自然数1~10的累加和
B:自然数1~9的累加和
C:自然数1~10中的偶数之和
D:自然数1~9中的奇数之和
答案: 【

7、单选题:
以下程序段的输出结果是int x=3; do { printf(“%3d”,x-=2);} while(!(- -x)); ( )
选项:
A:1 -2
B:死循环
C:1
D:30
答案: 【

8、单选题:
以下程序中,while循环的循环次数是main(){ int i=0;while(i<10){ if(i<1) continue;if(i==5) break;i++;}……} ( )
选项:
A:10
B:死循环,不能确定次数
C:6
D:1
答案: 【】

9、单选题:
有以下程序main() { int a=1,b; for(b=1;b<=10;b++) { if(a>=8)break; if(a%2==1){a+=5;continue;} a-=3; } printf(“%dn”,b); }程序运行后的输出结果是( )。
选项:
A:3
B:5
C:4
D:6
答案: 【】

10、单选题:
有以下程序main(){ int i;for(i=0;i<3;i++)switch(i){ case 1: printf(“%d”,i);case 2: printf(“%d”,i);default: printf(“%d”,i);}}执行后输出结果是( )。
选项:
A:011122
B:120
C:012020
D:012
答案: 【

第五章 单元测试

1、单选题:
以下定义语句中,错误的是( )。
选项:
A:char s[10]={“test”};
B:int n=5, a[n];
C:int a[]={1,2};
D:char a[]={“test”};
答案: 【

2、单选题:
以下对一维数组a进行正确初始化的是( )。
选项:
A:int a[10]={10*2};
B:int a[10]=(0,0,0,0,0);
C:int a[]={0};
D:int a[10]={ };
答案: 【】

3、单选题:
以下对二维数组a进行正确初始化的是( )。
选项:
A:int a[][3]={1,2,3,4,5,6};
B:int a[2][]={{1,2},{3,4}};
C:int a[2][]={1,2,3,4,5,6};
D:int a[2][3]={{1,2},{3,4},{5,6}};
答案: 【

4、单选题:
在定义inta[5][4];之后,对a的引用正确的是( )。
选项:
A:a[2][4]
B:a[5][0]
C:a[4][3]
D:a[1,3]
答案: 【

5、单选题:
以下给字符数组str定义和赋值正确的是( )。
选项:
A:char str[10]={“abcdefghijkl”};
B:char str[10]; strcpy(str, “abcdefghijkl”);
C:char str[10]; str={“China!”};
D:char str[ ]={“China!”};
答案: 【

6、判断题:
执行语句:int a[][3]={1,2,3,4,5,6};后,a[1][0]的值是4。( )
选项:
A:错
B:对
答案: 【】

7、判断题:
当接受用户输入的含有空格的字符串时,应使用getchar( )。( )
选项:
A:对
B:错
答案: 【】

8、判断题:
定义:char array[]=”China”;则数组array所占的存储空间是5个字节。( )
选项:
A:错
B:对
答案: 【】

9、判断题:
定义:char array[10]=”China”;则数组array所占的存储空间是10个字节。( )
选项:
A:错
B:对
答案: 【】

10、判断题:
执行语句:int a[5][6];后,数组a中的第7个元素是a[1][0]。( )
选项:
A:错
B:对
答案: 【】

第六章 单元测试

1、单选题:
#include <stdio.h>int f(int x);main(){int n=1, m;m=f(f(f(n))); printf(“%dn”, m);}int f(int x){return x*2; }程序运行后的输出结果是( )。
选项:
A:2
B:4
C:1
D:8
答案: 【】

2、单选题:
#include <stdio.h> int fun(int x, int y){if(x! =y) return ((x+ y)/2); else return (x); :}main( ){inta=4, b=5, c=6;printf(“%dn”, fun(2*a,fun(b,c)));}程序运行后的输出结果是( )。
选项:
A:6
B:8
C:12
D:3
答案: 【】

3、单选题:
#include <stdio.h>int f(int x, int у){return((y- x)*x);} main(){ inta=3, b=4,c=5,d; d=f(f(a, b), f(a, c));printf(“%dn”, d);}程序运行后的输出结果是( )。
选项:
A:8
B:7
C:9
D:10
答案: 【】

4、单选题:
#include <stdio.h> int fun( int a, int b){return a+b; }main(){int x=6,y=7,z=8,r; r= fun( fun(x,y), z–); printf(” %dn” , r );}程序运行后的输出结果是( ).
选项:
A:21
B:15
C:20
D:31
答案: 【

5、单选题:
以下叙述中正确的是( )
选项:
A:在C语言的函数内部,可以定义局部嵌套函数。
B:用户自己定义的函数只能调用库函数。
C:不同函数的形式参数不能使用相同名称的标识符 。
D:实用的C语言源程序总是由一个或多个函数组成 。
答案: 【

6、单选题:
以下叙述中正确的是( )
选项:
A:所有函数均不能接受函数名作为实参传入
B:函数体中的语句不能出现对自己的调用。
C:如果函数带有参数,就不能调用自己
D:函数名代表该函数的入口地址。
答案:

7、单选题:
以下叙述中正确的是( )
选项:
A:在函数体中只能出现一次return语句。
B:函数调用时,不必区分函数名称的大小写
C:调用函数时,函数名必须与被调用的函数名完全一致 。
D:函数名允许用数字开头。
答案: 【

8、单选题:
设有某函数的说明为: int* func(int a[10], int n);则下列叙述中,正确的是( )
选项:
A:说明中的a[10]写成a或*a效果完全一样。
B:形参a对应的实参只能是数组名。
C:只有指向10个整数内存单元的指针,才能作为实参传给a。
D:func的函数体中不能对a进行移动指针(如a++)的操作。
答案: 【】

9、单选题:
以下关于C语言函数参数传递方式的叙述正确的是( )
选项:
A:数据可以在实参和形参之间双向传递。
B:数据只能从形参单向传递给实参。
C:数据只能从实参单向传递给形参
D:C语言的函数参数既可以从实参单向传递给形参,也可以在实参和形参之间双向传递,可视情况选择使用。
答案: 【

第七章 单元测试

1、单选题:
有以下定义char a[10],*b=a; 不能给数组a输入字符串的语句是( )。
选项:
A:gets(b);
B:gets(a[0])
C:gets(a)
D:gets(&a[0]);
答案: 【

2、单选题:
int a[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3], b; b=p[5]; 则b中的值是( )。
选项:
A:6
B:9
C:8
D:5
答案: 【】

3、单选题:
void main() { int *p,*q,a,b; p=&a; printf(“input a:”); scanf(“%d”,*p); ……} 以上程序中调用scanf函数给变量a输入数值的方法是错误的,其错误原因是( )。
选项:
A:*p只能用来说明p是一个指针变量
B:*p表示的是指针变量p的值
C:*p表示的是变量a的值,而不是变量a的地址
D:*p表示的是指针变量p的地址
答案:

4、单选题:
以下程序段中,不能正确赋字符串(编译时系统会提示错误)的是( )。
选项:
A:char s[10];strcpy(s,”abcdefg”);
B:char s[10];s=”abcdefg”;
C:char s[10]=”abcdefg”;
D:char t[]=”abcdefg”,*s=t;
答案: 【

5、单选题:
以下程序段正确的是( )。
选项:
A:char str[20]; scanf(“%s”,&str);
B:char str[20], *p=str; scanf(“%s”,p[2]);
C:char *p; scanf(“%s”,p);
D:char str[20]; scanf(“%s”,&str[2]);
答案: 【

6、判断题:
变量指针指向该变量的地址。( )
选项:
A:对
B:错
答案: 【】

7、判断题:
定义int a[10], *p=a,则p+6表示元素a[6]的地址。( )
选项:
A:错
B:对
答案: 【】

8、判断题:
定义char a[6], *b=a; 则gets(&a[0]);不能给数组a输入字符串。( )
选项:
A:错
B:对
答案: 【】

9、判断题:
char s[10]; s=”abcd”; 语句在编译时系统会报错。( )
选项:
A:对
B:错
答案: 【】

10、判断题:
return *p; 的返回值是变量p的地址。( )
选项:
A:对
B:错
答案: 【】

第八章 单元测试

1、单选题:
#include <stdio.h>typedef struct {int b, p; ) A;void f(A c) {int j;c.b+=1; c.p+=2;}main(){int i;A a={1,2};f(a);printf(“%d, %dn”, a.b, a.p);}程序运行后的输出结果是( )。
选项:
A:2,4
B:2,3
C:1,4
D:1,2
答案: 【】

2、单选题:
struct complex{int real, unreal; } data1={1,8}, data2; 则以下赋值语句中错误的是( )。
选项:
A:data2。real= đata1 .unreal;
B:data2.real=data1.real;
C:data2=(2,6);
D:data2= data1;
答案: 【】

3、单选题:
#include <string.h>typedef struct {char name[9]; char sex; int score[2]; }STU; STU f(STU a){STU b= {“Zhao”, ‘m’, 85, 90};int i;strcpy( a. name, b.name );a.sex= b.sex;for(i=0; i<2; i++) a.score[i]= b. score[i];return a;}main(){STU c={“Qian”, ‘f’, 95, 92 }, d;d=f(c);printf(“%s,%c,%d,%d ”,d.name,d.sex,d.score[0],d.score[1]);printf(“%s,%c,%d,%dn”,c.name,c.sex,c.score[0],c.score[1]);程序运行后的输出结果是( )。
选项:
A:Qian,f,95,92, zhao,m,85,90
B:Qian,f,95,92, Qian,f,95,92
C:zhao,m,85,90,Qian,f,95,92
D:zhao,m,85,90, zhao,m,85,90
答案: 【

4、单选题:
有以下程序 #include <stdio.h>struct S{ int a;int b; };main(){ struct S a, *p=&a;a.a=99;printf( “%dn” ,___ );}程序要求输出结构体中成员a的数据,以下不能填入横线处的内容是( )
选项:
A:p->a
B:a.a
C:*p.a
D:(*p).a
答案: 【】

5、单选题:
设有如下的说明和定义struct {int a;char *s;}x,*p=&x;x.a=4;x.s= “hello”;则以下叙述中正确的是( )
选项:
A:(p++)->a与p++->a都是合语法的表达式,但二者不等价
B:语句*p->s++;等价于(*p)->s++;
C:语句++p->a;的效果是使成员a増1
D:语句++p->a;的效果是使p増1
答案: 【

6、单选题:
以下叙述中正确的是( )
选项:
A:即使是同类型的结构体变量,也不能进行整体赋值
B:结构体数组名不能作为实参传给函数
C:结构体变量的地址不能作为实参传给函数
D:结构体中可以含有指向本结构体的指针成员
答案: 【

7、单选题:
以下叙述中正确的是( )
选项:
A:函数的返回值不能是结构体指针类型
B:在调用函数时,可以将结构体变量作为实参传给函数
C:结构体数组不能作为参数传给函数
D:函数的返回值不能是结构体类型
答案: 【

8、单选题:
以下叙述中正确的是( )
选项:
A:结构体类型中各个成分的类型必须是-致的
B:一个结构体类型可以由多个称为成员(或域)的成分组成
C:在定义结构体类型时,编译程序就为它分配了内存空间
D:结构体类型中的成分只能是C语言中预先定义的基本数据类型
答案: 【

9、单选题:
若有以下程序段struct st{ int n; struct st *next; };struct st a[3]={ 5,&a[1],7,&a[2],9,’’ }; *p;p=&a[0];则以下选项中值为6的表达式是( )
选项:
A:++(p->n)
B:p->n.
C:p->n++
D:(*p).n
答案:

10、单选题:
、#include <stdio.h>struct ord{int x,y;}dt[2J={1,2,3,4}; main( ){struct ord *p=dt;printf(“%d,”,++(p->x));printf(“%dn”,++(p->y));程序运行后的输出结果是( )
选项:
A:3,4
B:4,1
C:1,2
D:2,3
答案: 【

点点赞赏,手留余香 给TA打赏

AI创作

  • u******* 登录了本站
  • 游客 下载了资源 2014年412公务员联考《申论》卷及参考答案(福建、广西、安徽、海南、湖南、内蒙古、贵州、重庆、陕西、云南、宁夏)
  • 游客 下载了资源 2020年0822公务员多省联考《申论》题(甘肃乡镇卷)及参考答案
  • u******* 加入了本站
  • u******* 加入了本站
  • u******* 登录了本站
  • 1******* 投稿收入增加0.8块钱
  • 游客 购买了资源 Part V Writing (写作题。根据题目与写作要求写作。请不要用附件或者图片上传作文!禁止雷同作文!禁止直接用AI写作!) Directions: For this part, you are allowed 30 minutes to write a short essay on the applications of robots in future life. You should write at least 150 words but no more than 180 words.
  • u******* 登录了本站
  • u******* 登录了本站
  • 游客 购买了资源 China's online literature and short-video sectors have seen explosive growth in recent years, with platforms hosting over 20 million original literary works and 500 million daily active users for short-video apps. To ensure healthy development, regulators have introduced guidelines to curb content and protect intellectual property rights. Content creators are now encouraged to produce works that promote traditional culture and positive values, such as historical stories and scientific popularization. Live-streaming e-commerce, another booming sector, has integrated with rural revitalization, helping farmers sell local products to national and global markets through real-time interactions.
  • 1******* 投稿收入增加0.8块钱
  • u******* 下载了资源 2026年秋江苏开放大学网络技术及应用050309第四次作业:无线网络技术知识测试
  • u******* 下载了资源 2026年秋江苏开放大学网络技术及应用050309第三次作业:完成远程登录实验,撰写实验报告
  • u******* 下载了资源 2026年秋江苏开放大学网络技术及应用050309第二次作业:完成局域网组建实验,撰写实验报告
  • u******* 下载了资源 2026年秋江苏开放大学网络技术及应用050309第一次作业:计算机网络准备知识综合测试答案
点击浏览器地址栏的⭐图标收藏本页
需要代写作业的扫码加微信
显示验证码

社交账号快速登录

微信扫一扫关注
如已关注,请回复“登录”二字获取验证码