百年教育职业培训中心 百年教育学习服务平台
题库试卷

【百年教育职业培训中心】C语言程序设计-章节资料考试资料-巢湖学院

来源: 更新时间:

报名本机构合作学校,赠送复习资料,复习课程,确保录取。并且可以申请学校奖学金500元~1500元不等!答案:微信搜索【渝粤教育】公众号codeblocks介绍——从HelloW

报名本机构合作学校,赠送复习资料,复习课程,确保录取。并且可以申请学校奖学金500元~1500元不等!

答案:微信搜索【渝粤教育】公众号



codeblocks介绍——Hello World开始

1、【单选题】#include stdio.h是

A、编译预处理指令

B、语句

C、函数

D、程序入口


debug

1、【单选题】codeblocks中运行到下一步(next line)的快捷键是

A、F7

B、F5

C、F8

D、F11


变量在内存中所占的字节数

1、【单选题】C语言用sizeof计算变量在内存中的字节数,其中sizeof是()

A、函数

B、运算符

C、标识符

D、语句


宏常量与const常量

1、【单选题】宏定义是()

A、一条语句

B、一种编译预处理指令

C、一个标识符

D、一个变量


2、【判断题】const常量有数据类型。

A、正确

B、错误


练兵区——编程题——不计入总分

1周测验

1、【单选题】下列选项中,合法的C语言标识符是

A、_a1

B、width.x

C、

D、abc123

E、123abc

F、o*k

G、a?

H、a+b

I、%a

J、b!


2、【单选题】以下不适合定义为用户标识符的是

A、int

B、a2

C、def2

D、_3com_

E、PI

F、Source

G、abc


3、【单选题】#include stdio.h是

A、编译预处理指令

B、语句

C、函数

D、什么都不是

E、有语法错误


4、【单选题】在windows下,程序编译链接后形成的可执行文件是

A、.obj文件

B、.exe文件

C、.o文件

D、.c文件

E、.h文件


5、【单选题】程序编译链接后显示 0 error,0 warning 代表

A、程序中没有语法错误

B、程序是正确的

C、程序是不正确的

D、程序中可能存在语法错误

E、程序中有语义错误


6、【单选题】用8位无符号二进制数能表示的最大十进制数为

A、255

B、127

C、128

D、256


7、【单选题】关于可执行文件说法正确的是

A、可执行文件是编译链接后生成的文件

B、可执行文件就是源代码文件

C、可执行文件后缀为.obj

D、可执行文件就是main.c文件


8、【单选题】若变量a是int类型,并执行了语句:a='A'+1.6;,则正确的叙述是

A、'A'+1.6的结果是浮点型

B、a的值还是整型

C、a的值是字符C

D、a的值是浮点型

E、不允许字符型和浮点型相加


9、【单选题】C语言用sizeof计算变量在内存中的字节数,其中sizeof是()

A、运算符

B、一元运算符

C、只需要一个操作数的运算符

D、函数

E、语句

F、标识符

G、变量


10、【单选题】以下不属于Codeblocks中用于调试程序的工具是

A、run

B、build

C、run to cursor

D、next line

E、stop debugger

F、watches


11、【单选题】程序的开发步骤中不包括

A、撰写文档

B、运行程序

C、编译链接

D、程序测试

E、编辑(编写代码)


12、【单选题】下列说法中错误的是()

A、尾数决定了实数的表数范围,阶码决定了实数的表数精度。

B、内存是按位编址的。

C、有符号和无符号整数的表数范围是相同的。

D、int型在所有的计算机上都占4个字节的存储单元。

E、编译器按变量定义的类型对不同类型的变量分配不同大小的内存空间。

F、内存是按字节编址的。

G、对于同样的尾数,阶码的值越大,则浮点数所表示的数值的绝对值就越大。

H、sizeof是编译时执行的运算符,不会导致额外的运行时间开销。


13、【单选题】若有定义:int a=8,b=5,c; ,执行语句c=a/b+0.4;后,c的值为

A、1

B、1.4

C、2.0

D、2


14、【单选题】在C语言中,字符型数据在内存中以字符的( )形式存放

A、ASCII码

B、国标码

C、BCD码

D、反码


15、【单选题】以下符合C语言语法的实型常量是

A、5e-3

B、3.14.159e

C、1.2e0.5

D、e15


16、【单选题】以下选项中可作为C语言合法整数的是

A、0xffa

B、10110B

C、038x

D、x2a2


17、【单选题】下列说法正确的是

A、在C语言中,变量必须先定义后使用。

B、一条变量定义语句可定义多个同类型的变量。

C、C89规定所有变量必须在第一条可执行语句前定义。

D、const常量只能在定义时赋值。

E、实型常量的默认类型是double类型。

F、一条变量定义语句不可以同时定义多个变量。

G、不同类型的变量分配的存储空间大小都是相同的。

H、在C语言中,所有变量都必须在定义时进行初始化。

I、变量在没有初始化的时候,其值都是0

J、宏常量有数据类型,编译器在宏替换时可以进行类型检查。


18、【单选题】下列变量定义中合法的是

A、long ao=0xfdaL;

B、short _a=1-.1e-1;

C、double b=1+5e2.5;

D、float 2_and=1-e-3;


练兵区——单选题——不计入总分

1、【单选题】下列选项中,合法的C语言标识符是

A、_a1

B、width

C、

D、abc123

E、123abc

F、o*k

G、a?

H、a+b

I、%a

J、b!


2、【单选题】以下不适合定义为用户标识符的是

A、float

B、main

C、define

D、_3com_

E、PI

F、Source

G、abc


3、【单选题】#include stdio.h是

A、编译预处理指令

B、语句

C、函数

D、什么都不是

E、有语法错误


4、【单选题】在windows下,程序编译链接后形成的可执行文件是

A、.obj文件

B、.exe文件

C、.o文件

D、.c文件

E、.h文件


5、【单选题】程序编译链接后显示 0 error,0 warning 代表

A、程序中没有语法错误

B、程序是正确的

C、程序是不正确的

D、程序中可能存在语法错误

E、程序中有语义错误


6、【单选题】用8位无符号二进制数能表示的最大十进制数为

A、255

B、127

C、128

D、256


7、【单选题】关于可执行文件说法正确的是

A、可执行文件是编译链接后生成的文件

B、可执行文件就是源代码文件

C、可执行文件后缀为.obj

D、可执行文件就是main.c文件


8、【单选题】若变量a是int类型,并执行了语句:a='A'+1.6;,则正确的叙述是

A、'A'+1.6的结果是浮点型

B、a的值还是整型

C、a的值是字符C

D、a的值是浮点型

E、不允许字符型和浮点型相加


9、【单选题】C语言用sizeof计算变量在内存中的字节数,其中sizeof是()

A、运算符

B、一元运算符

C、只需要一个操作数的运算符

D、函数

E、语句

F、标识符

G、变量


10、【单选题】以下不属于Codeblocks中用于调试程序的工具是

A、run

B、build

C、run to cursor

D、next line

E、stop debugger

F、watches


11、【单选题】程序的开发步骤中不包括

A、撰写文档

B、运行程序

C、编译链接

D、程序测试

E、编辑(编写代码)


12、【单选题】下列说法中错误的是()

A、尾数决定了实数的表数范围,阶码决定了实数的表数精度。

B、内存是按位编址的。

C、有符号和无符号整数的表数范围是相同的。

D、int型在所有的计算机上都占4个字节的存储单元。

E、编译器按变量定义的类型对不同类型的变量分配不同大小的内存空间。

F、内存是按字节编址的。

G、对于同样的尾数,阶码的值越大,则浮点数所表示的数值的绝对值就越大。

H、sizeof是编译时执行的运算符,不会导致额外的运行时间开销。


13、【单选题】若有定义:int a=8,b=5,c; ,执行语句c=a/b+0.4;后,c的值为

A、1

B、1.4

C、2.0

D、2


14、【单选题】在C语言中,字符型数据在内存中以字符的( )形式存放

A、ASCII码

B、国标码

C、BCD码

D、反码


15、【单选题】以下符合C语言语法的实型常量是

A、5e-3

B、3.14.159e

C、1.2e0.5

D、e15


16、【单选题】以下选项中可作为C语言合法整数的是

A、0xffa

B、10110B

C、038x

D、x2a2


17、【单选题】下列说法正确的是

A、在C语言中,变量必须先定义后使用。

B、一条变量定义语句可定义多个同类型的变量。

C、C89规定所有变量必须在第一条可执行语句前定义。

D、const常量只能在定义时赋值。

E、实型常量的默认类型是double类型。

F、一条变量定义语句不可以同时定义多个变量。

G、不同类型的变量分配的存储空间大小都是相同的。

H、在C语言中,所有变量都必须在定义时进行初始化。

I、变量在没有初始化的时候,其值都是0

J、宏常量有数据类型,编译器在宏替换时可以进行类型检查。


18、【单选题】下列变量定义中合法的是

A、long ao=0xfdaL;

B、short _a=1-.1e-1;

C、double b=1+5e2.5;

D、float 2_and=1-e-3;


运算符的优先级和结合性

1、【判断题】二元的算术运算符的结合性都是左结合。

A、正确

B、错误


在定义变量的时候对变量进行初始化

1、【单选题】下列语句中错误的是()。

A、int a, b, c;a=b=c=0;

B、int a, b, c;a=0;b=0;c=0;

C、int a=0;int b=0;int c=0;

D、int a=b=c=0;


不同类型数据的运算

1、【判断题】通常情况下,不同类型数据的运算结果的类型是取值范围较大的那种类型。

A、正确

B、错误


强制类型转换

1、【判断题】强制类型转换运算符就是强制改变一个变量原有的数据类型。

A、正确

B、错误


练兵区——编程题——不计入总分

2周测验

1、【单选题】下列程序的输出结果是#include stdio.h
int main()
{
int a=7,b=5;
printf(%d\n,b/a);
return 0;
}

A、0

B、5

C、1

D、0.7


2、【单选题】下列关于单目运算符++、--的叙述中正确的是

A、a++的运算过程是:先使用变量a的值,然后再执行a=a+1。

B、++a的运算过程是:先使用变量a的值,然后再执行a=a+1。

C、a++的运算过程是:先执行a=a+1,然后再使用变量a的值。

D、a++和++a都是最终使变量a执行a=a+1,因此对于包含a++或++a的表达式而言(如j=a++;或者j=++a;),两种情况下表达式的最终运算结果一定是相同的。


3、【单选题】以下程序的输出结果是:#include stdio.h
int main()
{
int a=1, b=2;
a=a+b;
b=a-b;
a=a-b;
printf(%d,%d\n, a, b );
return 0;
}

A、2,1

B、3,1

C、3,2

D、1,2


4、【单选题】程序运行后的输出结果是#include stdio.h
int main()
{
int m=3,n=4,x;
x=m++;
++n;
x=x+8/n;
printf(%d,%d\n,x,m);
return 0;
}

A、4,4

B、4,3

C、5,4

D、5,3


5、【单选题】下面程序的运行结果是#include stdio.h
int main()
{
int a = 2, b = 3 ;
float x = 3.5, y = 2.5 ;
printf(%f, (float)(a+b) / 2 + (int)x % (int)y) ;
return 0;
}

A、3.500000

B、3.000000

C、3.5

D、3


6、【单选题】以下非法的赋值语句是

A、++(i+1);

B、x=(j--);

C、n=++i;

D、j++;


7、【单选题】设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是

A、6.000000

B、 6.500000

C、6

D、5.500000


8、【单选题】 以下程序的运行结果是#include stdio.h
int main()
{
int a = 12, b = 3;
float x = 18.5, y = 4.5;
printf(%f\n, (float)(a * b) / 2);
printf(%d\n, (int)x %(int)y);
return 0;
}

A、18.0000002

B、182

C、182.000000

D、18.0000002.000000


9、【单选题】设有语句“int a = 3;”,执行语句“a += a -= a * a;”后,变量a的值是

A、-12

B、3

C、0

D、9


10、【单选题】在C语言中,要求操作数必须是整型的运算符是

A、%

B、/

C、*

D、+

E、-


11、【单选题】程序运行后的输出结果是#include stdio.h
int main()
{
char a='a';
printf(%c,,++a);
printf(%c\n,a++);
return 0;
}

A、 b,b

B、b,c

C、a,b

D、a,c


12、【单选题】下面哪条语句可以生成0-9之间的随机数

A、magic=rand()%10;

B、magic=rand()%10+1;

C、magic=rand()/10;

D、magic=rand()/10+1;


13、【单选题】在下面的C语言语句中,存在错误的是

A、int a=b=10;

B、int a=10,b=10;

C、int a,b;a=b=10;

D、int a,b;a=10;b=10;


14、【单选题】若以下选项中的变量已正确定义,则正确的赋值语句是

A、x3=x2=x1=0;

B、x1=26.8%3;

C、1+2=x2;

D、x4=1+2=3;


15、【单选题】若有以下定义,则表达式“a * b + d – c”的值的类型为#include stdio.h
int main()
{
char a;
int b;
float c;
double d;
....
return 0;
}

A、double

B、int

C、float

D、char


16、【单选题】在C程序中如果要使用数学函数,如sin(x),log(x)等,需要在程序中加入的语句是

A、

B、include <math.h>

C、

D、include <stdio.h>

E、

F、define <math.h>

G、

H、define <stdio.h>


17、【单选题】十进制3位数整数x,下面哪条语句能正确分离出它的十位上的数字d?

A、d=(x-(x/100)*100)/10;

B、d=(x%100)/10;

C、d=(x/10)%10;

D、d=x%10;

E、d=(x-x%10)/10;

F、d=x%100;


18、【单选题】在C语言中对下面的语句而言,哪个说法是错误的?int a, b;

A、变量a和b中的值都是0

B、变量a和b中都没有数值

C、变量a和b中的值都是未知的随机数

D、a和b都是整型变量

E、变量a和b占用的内存空间的大小是相同的


19、【单选题】已知int a,b;并且有a=5%3;以及b=5/3;,则a和b的值分别是( )。

A、2和1

B、0和1.67

C、3和1

D、5和1

E、0和1

F、3和1.67

G、5和1.67


20、【单选题】设有以下定义,则下面给出的语句中错误的是int a=0;
float b=1.25;
char c='A';
#define d 2

A、d++;

B、(a+b)++;

C、(-a)++;

D、(a+1)++;

E、a++;

F、b++;

G、c++;


练兵区——单选题——不计入总分

1、【单选题】设有语句“int a = 3;”,执行语句“a += a -= a * a;”后,变量a的值是

A、-12

B、3

C、0

D、9


2、【单选题】在C程序中如果要使用数学函数,如sin(x),log(x)等,需要在程序中加入的语句是

A、

B、include <math.h>

C、

D、include <stdio.h>

E、

F、define <math.h>

G、

H、define <stdio.h>


3、【单选题】设有以下定义,则下面给出的语句中错误的是int a=0;
float b=1.25;
char c='A';
#define d 2

A、d++;

B、(a+b)++;

C、(-a)++;

D、(a+1)++;

E、a++;

F、b++;

G、c++;


4、【单选题】下列关于单目运算符++、--的叙述中正确的是

A、a++的运算过程是:先使用变量a的值,然后再执行a=a+1。

B、++a的运算过程是:先使用变量a的值,然后再执行a=a+1。

C、a++的运算过程是:先执行a=a+1,然后再使用变量a的值。

D、a++和++a都是最终使变量a执行a=a+1,因此对于包含a++或++a的表达式而言(如j=a++;或者j=++a;),两种情况下表达式的最终运算结果一定是相同的。


5、【单选题】以下程序的输出结果是:#include stdio.h
int main()
{
int a=1, b=2;
a=a+b;
b=a-b;
a=a-b;
printf(%d,%d\n, a, b );
return 0;
}

A、2,1

B、3,1

C、3,2

D、1,2


6、【单选题】下面哪条语句可以生成0-9之间的随机数

A、magic=rand()%10;

B、magic=rand()%10+1;

C、magic=rand()/10;

D、magic=rand()/10+1;


7、【单选题】在下面的C语言语句中,存在错误的是

A、int a=b=10;

B、int a=10,b=10;

C、int a,b;a=b=10;

D、int a,b;a=10;b=10;


8、【单选题】若有以下定义,则表达式“a * b + d – c”的值的类型为#include stdio.h
int main()
{
char a;
int b;
float c;
double d;
....
return 0;
}

A、double

B、int

C、float

D、char


9、【单选题】十进制3位数整数x,下面哪条语句能正确分离出它的十位上的数字d?

A、d=(x-(x/100)*100)/10;

B、d=(x%100)/10;

C、d=(x/10)%10;

D、d=x%10;

E、d=(x-x%10)/10;

F、d=x%100;


10、【单选题】在C语言中对下面的语句而言,哪个说法是错误的?int a, b;

A、变量a和b中的值都是0

B、变量a和b中都没有数值

C、变量a和b中的值都是未知的随机数

D、a和b都是整型变量

E、变量a和b占用的内存空间的大小是相同的


11、【单选题】下列程序的输出结果是#include stdio.h
int main()
{
int a=7,b=5;
printf(%d\n,b/a);
return 0;
}

A、0

B、5

C、1

D、0.7


12、【单选题】程序运行后的输出结果是#include stdio.h
int main()
{
int m=3,n=4,x;
x=m++;
++n;
x=x+8/n;
printf(%d,%d\n,x,m);
return 0;
}

A、4,4

B、4,3

C、5,4

D、5,3


13、【单选题】下面程序的运行结果是#include stdio.h
int main()
{
int a = 2, b = 3 ;
float x = 3.5, y = 2.5 ;
printf(%f, (float)(a+b) / 2 + (int)x % (int)y) ;
return 0;
}

A、3.500000

B、3.000000

C、3.5

D、3


14、【单选题】以下非法的赋值语句是

A、++(i+1);

B、x=(j--);

C、n=++i;

D、j++;


15、【单选题】已知int a,b;并且有a=5%3;以及b=5/3;,则a和b的值分别是

A、2和1

B、0和1.67

C、3和1

D、5和1

E、0和1

F、3和1.67

G、5和1.67


16、【单选题】设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是

A、6.000000

B、 6.500000

C、6

D、5.500000


17、【单选题】以下程序的运行结果是#include stdio.h
int main()
{
int a = 12, b = 3;
float x = 18.5, y = 4.5;
printf(%f\n, (float)(a * b) / 2);
printf(%d\n, (int)x %(int)y);
return 0;
}

A、18.0000002

B、182

C、182.000000

D、18.0000002.000000


18、【单选题】在C语言中,要求操作数必须是整型的运算符是

A、%

B、/

C、*

D、+

E、-


19、【单选题】程序运行后的输出结果是#include stdio.h
int main()
{
char a='a';
printf(%c,,++a);
printf(%c\n,a++);
return 0;
}

A、b,b

B、b,c

C、a,b

D、a,c


20、【单选题】若以下选项中的变量已正确定义,则正确的赋值语句是

A、x3=x2=x1=0;

B、x1=26.8%3;

C、1+2=x2;

D、x4=1+2=3;


格式字符

1、【判断题】在调用printf函数输出数据时,当数据的实际位宽大于printf函数中的指定位宽时,将按照数据的实际位宽输出数据。

A、正确

B、错误


单个字符的输入输出

1、【判断题】单个字符既可以以c格式符也可以以d格式符输出,前者是输出这个字符,后者是输出这个字符的ASCII码值。

A、正确

B、错误


%c格式转换说明

1、【判断题】用c格式符输入字符型数据的时候,为了避免将输入缓冲区中的空白字符(空格、回车换行符、Tab键)作为有效字符读入,可以在%c前面加一个空格。

A、正确

B、错误


3周编程题在线测试

练兵区——编程题——不计入总分

3周测验

1、【单选题】分析下列程序,写出程序运行结果#include stdio.h
int main()
{
char c1 = 'a', c2 = 'b', c3 = 'c';
printf(a%cb%cc%cabc\n, c1, c2, c3);
return 0;
}

A、aabbccabc

B、acbcabc

C、aabcabc

D、acbbcabc


2、【单选题】有如下语句,为使变量a的值为1,b的值为2,从键盘输入数据的正确形式是scanf(a=%d,b=%d,a,b);

A、a=1,b=2

B、1 2

C、1,2

D、a=1 b=2


3、【单选题】#include stdio.h
int main()
{
int a,b,c,d;
scanf(%c%c%d,%d,a,b,c,d);
printf(%c,%c,%c,%c\n,a,b,c,d);
return 0;
}若运行以上程序时从键盘上输入:6565,66回车。则输出结果是

A、6,5,A,B

B、6,5,65,66

C、6,5,6,5

D、6,5,6,6


4、【单选题】给出程序的运行结果,程序运行时从键盘输入:54321回车#include stdio.h
int main()
{
int a,b,s;
scanf(%2d%2d,a,b);
s=a/b;
printf(s=%d,s);
return 0;
}

A、1

B、1.6875

C、2

D、0


5、【单选题】以下程序的输出结果为#include stdio.h
int main()
{
float a = 1234.567,b = 55.32;
printf(a = %4.2f, b = %5.1f\n, a,b);
return 0;
}

A、a = 1234.57, b = 55.3

B、a =1234, b =55

C、a = 1234.6, b = 5.32

D、a =1234.567, b = 55.32


6、【单选题】以下程序的输出结果为#include stdio.h
int main()
{
int a=2, c=5;
printf(a = %%d, b = %%d\n, a, c);
return 0;
}

A、a = %d, b = %d

B、a = %2, b = %5

C、a = 2, b = 5

D、a = %%d, b = %%d


7、【单选题】有以下程序,运行时若输入为B,则输出是#include stdio.h
int main()
{
char ch;
ch=getchar();
ch=ch+32;
printf(%c,ch);
return 0;
}

A、b

B、98

C、32

D、66


8、【单选题】在调用printf函数输出数据时,当数据的实际位宽小于printf函数中的指定位宽时,下面叙述正确的是

A、如果格式字符前面没有负号,那么输出的数据将会右对齐、左补空格;如果格式字符前面有负号,那么输出的数据将会左对齐、右补空格。

B、如果格式字符前面没有负号,那么输出的数据将会左对齐、右补空格;如果格式字符前面有负号,那么输出的数据将会右对齐、左补空格。

C、如果格式字符前面没有负号,那么输出的数据将会右对齐、左补0;如果格式字符前面有负号,那么输出的数据将会左对齐、右补0。

D、如果格式字符前面没有负号,那么输出的数据将会左对齐、右补0;如果格式字符前面有负号,那么输出的数据将会右对齐、左补0。


9、【单选题】设有语句“char c='\72';”,则变量c

A、包含1个字符

B、包含2个字符

C、包含3个字符

D、不合法


10、【单选题】在下列语句中存在错误的是

A、int a,b;scanf("%d %f",&a,&b);

B、int a,b;scanf("%d %d",a,b);

C、int a,b;scanf("%d%d\n",&a,&b);printf("%d %d",a,b);

D、float a,b;scanf("%3.2f %4.2f",&a,&b);printf("%f %f",a,b);

E、float a,b;scanf("%f %f",&a,&b);printf("%f %f",a,b);

F、float a,b;scanf("%f %f",&a,&b);printf("a=%4.3f,b=%4.3f",a,b);

G、int a,b;scanf("%2d%2d",&a,&b);printf("a=%d,b=%d",a,b);

H、int a,b;scanf("%d,%d",&a,&b);printf("a=%2d,b=%2d",a,b);

I、int a,b;scanf("a=%d,b=%d",&a,&b);printf("a=%d,b=%d",a,b);


11、【单选题】程序运行后的输出结果是#include stdio.h
int main()
{
int a=666,b=888;
printf(%d\n,a,b);
return 0;
}

A、666

B、错误信息

C、888

D、666,888


12、【单选题】有以下语句段#include stdio.h
int main()
{
int n1=10,n2=20;
printf(_________,n1,n2);
return 0;
}要求按以下格式输出n1和n2的值,每个输出行都是从第一列开始,则空白处代码填写正确的是运行结果示例如下:n1=10n2=20

A、n1=%d\nn2=%d

B、n1=%dn2=%d\n

C、n1=%d,n2=%d

D、n1=%d n2=%d\n


13、【单选题】以下选项中合法的字符常量是

A、 '\010'

B、"B"

C、68

D、D


14、【单选题】写出下面程序的输出结果#includestdio.h
int main()
{
int x=6,y,z;
x*=18+1;
printf(%d,,x--);
x+=y=z=11;
printf(%d,x);
return 0;
}

A、114,124

B、113,124

C、109,116

D、110,116


15、【单选题】给出程序的运行结果,程序运行时从键盘输入:45-12回车#include stdio.h
int main()
{
int a,b,sum;
scanf(%d%*c%d,a,b);
sum=a+b;
printf(sum=%d,sum);
return 0;
}

A、57

B、输出报错

C、33

D、输出一个随机数


16、【单选题】给出程序的运行结果#include stdio.h
int main()
{
int a,b,s;
char op;
scanf(%d %c%d,a,op,b);
s=a%b;
printf(s=%d,s);
return 0;
}程序运行时从键盘输入:15回车%5回车

A、0

B、程序报错

C、输出一个随机数

D、3


17、【单选题】给出程序的运行结果#include stdio.h
int main()
{
int a,b,c,d;
char op1,op2,op3;
int sum;
printf(please input:a+b+c+d\n);
scanf(%d%c%d%c%d%c%d,a,op1,b,op2,c,op3,d);
sum=a+b+c+d;
printf(sum=%d,sum);
return 0;
}程序运行时从键盘输入:1回车2+3+1回车

A、7

B、1

C、3

D、6


18、【单选题】在C语言中,字符型数据在内存中以( )形式存放

A、ASCII码

B、国标码

C、BCD码

D、反码


19、【单选题】以下程序的执行结果是#include stdio.h
int main()
{
int a = 5, b = 4, x, y;
x = 2 * a++;
y = --b * 2;
printf(a=%d, x=%d\n, a, x);
printf(b=%d, y=%d\n, b, y);
return 0;
}

A、a=6, x=10b=3, y=6

B、a=6, x=10b=3, y=8

C、a=6, x=12b=3, y=6

D、以上均不对


20、【单选题】以下程序运行后的输出结果是#include stdio.h
int main()
{
int a;
int c=10;
float f=100.0;
double x;
a=f/=c*=(x=6.5);
printf(%d,%d,%3.1f,%3.1f\n,a,c,f,x);
return 0;
}

A、1,65,1.5,6.5

B、1,65,1,6.5

C、1,65,1.0,6.5

D、 2,65,1.5,6.5


21、【单选题】给出程序的运行结果#include stdio.h
int main()
{
char a,b;
int s;
printf(please input a and b:\n);
a=getchar();
b=getchar();
s=a+b;
printf(a=%c,b=%c,a,b);
return 0;
}程序运行时从键盘输入:1空格2回车

A、a=1,b=

B、a=1,b=2

C、a= ,b=2

D、输出乱码


22、【单选题】以下程序的输出结果是#include stdio.h
int main()
{
int a=1234;
printf(%2d\n,a);
return 0;
}

A、1234

B、12

C、34

D、提示出错、无结果


练兵区——单选题——不计入总分

1、【单选题】以下程序的输出结果为#include stdio.h
int main()
{
float a = 1234.567,b = 55.32;
printf(a = %4.2f, b = %5.1f\n, a,b);
return 0;
}

A、a = 1234.57, b = 55.3

B、a =1234, b =55

C、a = 1234.6, b = 5.32

D、a =1234.567, b = 55.32


2、【单选题】以下选项中合法的字符常量是

A、 '\010'

B、"B"

C、68

D、D


3、【单选题】给出程序的运行结果程序运行时从键盘输入:1空格2回车#include stdio.h
int main()
{
char a,b;
int s;
printf(please input a and b:\n);
a=getchar();
b=getchar();
s=a+b;
printf(a=%c,b=%c,a,b);
return 0;
}

A、a=1,b=

B、a=1,b=2

C、a= ,b=2

D、输出乱码


4、【单选题】有如下语句,为使变量a的值为1,b的值为2,从键盘输入数据的正确形式是scanf(a=%d,b=%d,a,b)

A、a=1,b=2

B、1 2

C、1,2

D、a=1 b=2


5、【单选题】#include stdio.h
int main()
{
int a,b,c,d;
scanf(%c%c%d,%d,a,b,c,d);
printf(%c,%c,%c,%c\n,a,b,c,d);
return 0;
}若运行以上程序时从键盘上输入:6565,66回车。则输出结果是

A、6,5,A,B

B、6,5,65,66

C、6,5,6,5

D、6,5,6,6


6、【单选题】给出程序的运行结果,程序运行时从键盘输入:54321回车#include stdio.h
int main()
{
int a,b,s;
scanf(%2d%2d,a,b);
s=a/b;
printf(s=%d,s);
return 0;
}

A、1

B、1.6875

C、2

D、0


7、【单选题】在调用printf函数输出数据时,当数据的实际位宽小于printf函数中的指定位宽时,下面叙述正确的是

A、如果格式字符前面没有负号,那么输出的数据将会右对齐、左补空格;如果格式字符前面有负号,那么输出的数据将会左对齐、右补空格。

B、如果格式字符前面没有负号,那么输出的数据将会左对齐、右补空格;如果格式字符前面有负号,那么输出的数据将会右对齐、左补空格。

C、如果格式字符前面没有负号,那么输出的数据将会右对齐、左补0;如果格式字符前面有负号,那么输出的数据将会左对齐、右补0。

D、如果格式字符前面没有负号,那么输出的数据将会左对齐、右补0;如果格式字符前面有负号,那么输出的数据将会右对齐、左补0。


8、【单选题】程序运行后的输出结果是#include stdio.h
int main()
{
int a=666,b=888;
printf(%d\n,a,b);
return 0;
}

A、666

B、错误信息

C、888

D、666,888


9、【单选题】在C语言中,字符型数据在内存中以( )形式存放

A、ASCII码

B、国标码

C、BCD码

D、反码


10、【单选题】以下程序运行后的输出结果是#include stdio.h
int main()
{
int a;
int c=10;
float f=100.0;
double x;
a=f/=c*=(x=6.5);
printf(%d,%d,%3.1f,%3.1f\n,a,c,f,x);
return 0;
}

A、1,65,1.5,6.5

B、1,65,1,6.5

C、1,65,1.0,6.5

D、 2,65,1.5,6.5


11、【单选题】以下程序的输出结果是#include stdio.h
int main()
{
int a=1234;
printf(%2d\n,a);
return 0;
}

A、1234

B、12

C、34

D、提示出错、无结果


12、【单选题】设有语句“char c='\72';”,则变量c

A、包含1个字符

B、包含2个字符

C、包含3个字符

D、不合法


13、【单选题】有以下语句段#include stdio.h
int main()
{
int n1=10,n2=20;
printf(_________,n1,n2);
return 0;
}要求按以下格式输出n1和n2的值,每个输出行都是从第一列开始,则空白处代码填写正确的是运行结果示例如下:n1=10n2=20

A、n1=%d\nn2=%d

B、n1=%dn2=%d\n

C、n1=%d,n2=%d

D、n1=%d n2=%d\n


14、【单选题】给出程序的运行结果,程序运行时从键盘输入:45-12回车#include stdio.h
int main()
{
int a,b,sum;
scanf(%d%*c%d,a,b);
sum=a+b;
printf(sum=%d,sum);
return 0;
}

A、57

B、输出报错

C、33

D、输出一个随机数


15、【单选题】给出程序的运行结果#include stdio.h
int main()
{
int a,b,s;
char op;
scanf(%d %c%d,a,op,b);
s=a%b;
printf(s=%d,s);
return 0;
}程序运行时从键盘输入:15回车%5回车

A、0

B、程序报错

C、输出一个随机数

D、3


16、【单选题】分析下列程序,写出程序运行结果#include stdio.h
int main()
{
char c1 = 'a', c2 = 'b', c3 = 'c';
printf(a%cb%cc%cabc\n, c1, c2, c3);
return 0;
}

A、aabbccabc

B、acbcabc

C、aabcabc

D、acbbcabc


17、【单选题】以下程序的输出结果为#include stdio.h
int main()
{
int a=2, c=5;
printf(a = %%d, b = %%d\n, a, c);
return 0;
}

A、a = %d, b = %d

B、a = %2, b = %5

C、a = 2, b = 5

D、a = %%d, b = %%d


18、【单选题】有以下程序,运行时若输入为B,则输出是#include stdio.h
int main()
{
char ch;
ch=getchar();
ch=ch+32;
printf(%c,ch);
return 0;
}

A、b

B、98

C、32

D、66


19、【单选题】在下列语句中存在错误的是

A、int a,b;scanf("%d %f",&a,&b);

B、int a,b;scanf("%d %d",a,b);

C、int a,b;scanf("%d%d\n",&a,&b);printf("%d %d",a,b);

D、float a,b;scanf("%3.2f %4.2f",&a,&b);printf("%f %f",a,b);

E、float a,b;scanf("%f %f",&a,&b);printf("%f %f",a,b);

F、float a,b;scanf("%f %f",&a,&b);printf("a=%4.3f,b=%4.3f",a,b);

G、int a,b;scanf("%2d%2d",&a,&b);printf("a=%d,b=%d",a,b);

H、int a,b;scanf("%d,%d",&a,&b);printf("a=%2d,b=%2d",a,b);

I、int a,b;scanf("a=%d,b=%d",&a,&b);printf("a=%d,b=%d",a,b);


20、【单选题】写出下面程序的输出结果#includestdio.h
int main()
{
int x=6,y,z;
x*=18+1;
printf(%d,,x--);
x+=y=z=11;
printf(%d,x);
return 0;
}

A、114,124

B、113,124

C、109,116

D、110,116


21、【单选题】给出程序的运行结果#include stdio.h
int main()
{
int a,b,c,d;
char op1,op2,op3;
int sum;
printf(please input:a+b+c+d\n);
scanf(%d%c%d%c%d%c%d,a,op1,b,op2,c,op3,d);
sum=a+b+c+d;
printf(sum=%d,sum);
return 0;
}程序运行时从键盘输入:1回车2+3+1回车

A、7

B、1

C、3

D、6


22、【单选题】以下程序的执行结果是#include stdio.h
int main()
{
int a = 5, b = 4, x, y;
x = 2 * a++;
y = --b * 2;
printf(a=%d, x=%d\n, a, x);
printf(b=%d, y=%d\n, b, y);
return 0;
}

A、a=6, x=10b=3, y=6

B、a=6, x=10b=3, y=8

C、a=6, x=12b=3, y=6

D、以上均不对


判断ch是英文字母(大写或者小写)

1、【判断题】下面判断ch是大写或者小写英文字母的表达式是否正确?ch = 'A' ch = 'Z' || ch = 'a' ch = 'z'

A、正确

B、错误


条件运算符

1、【单选题】下列关于if-else语句的说法中哪个是正确的。

A、else总是和离它最近的if配对

B、else总是和前面离它最近的且还未和其他else匹配的在同一语句块内同一层次的if配对

C、else总是和前面离它最近的且位于花括号内的if配对

D、else可以和它前面的尚未与其他else匹配的任何一个if配对


2、【判断题】条件运算符是C语言中唯一的一个三元运算符.

A、正确

B、错误


逗号运算符

1、【单选题】下列说法错误的是()。

A、逗号运算符也称为顺序求值运算符,由逗号运算符构成的表达式称为逗号表达式。

B、多数情况下,我们并不使用整个逗号表达式的值,主要用它来顺序求得到各个子表达式的值。

C、逗号表达式主要用在循环语句中同时对多个变量赋初值等。

D、在逗号表达式中,其第一个表达式的值就是整个逗号表达式的值。


随机数的生成

1、【单选题】下列说法错误的是()。

A、函数rand()用于生成一个[0,RAND_MAX]间的随机数,RAND_MAX是不大于双字节整数的最大值32767的宏常量。使用函数rand()必须在程序开头加上这样一条编译预处理指令:

B、include <stdio.h>

C、magic = rand()%100 + 1用于生成[1,100]之间的随机数。

D、事实上,函数rand()产生的都是伪随机数。

E、函数srand()用于为rand()设置随机数种子,使rand()产生的随机数“随机化”。


嵌套循环

1、【单选题】下列说法错误的是( )。

A、执行嵌套循环时是先执行内层循环,后执行外层循环。

B、嵌套循环的内层和外层循环的循环控制变量不能同名。

C、嵌套循环的循环次数等于外层循环的循环次数与内层循环的循环次数之积。

D、如果一个循环的循环体中又完整地包含了另一个循环,则称为嵌套循环。


流程的转移控制

1、【单选题】下面程序段中的break语句是转移到哪里去执行()。for(...)
{
for(...)
{
switch(...)
{
case 1: ...
break;
case 2:...
...
}
A: //code
}
B: //code
}
C: //code

A、转到标号A所在的语句行与执行

B、转到标号B所在的语句行与执行

C、转到标号C所在的语句行与执行

D、不进行流程转移,而是继续执行break后面的语句


程序调试

1、【单选题】下列说法错误的是()。

A、程序测试的目的就是验证程序的正确性。

B、程序中常见的错误有三种:编译错误,链接错误,以及运行时错误。

C、编译错误通常是由语法错误造成的。

D、运行时错误是指在程序运行时发生的错误,运行时错误有两种:一种是导致程序的运行结果与预期的不一致,另一种是导致程序无法正常运行。


函数的参数和返回值

1、【单选题】下列说法中错误的是()。

A、函数中的return语句可以有多个,但是多个return语句并不表示函数可以用return返回多个值,用return返回的函数值只能有一个。

B、在C语言中,只有当实参与其对应的形参同名时,才共占同一个存储单元,此时形参值的变化会影响到实参的值。

C、形参也是局部变量,只能在函数体内访问。

D、在C语言中,实参与其对应的形参各占独立的存储单元,函数调用时的参数传递就是把实参的值复制一份给形参,即由实参向形参进行单向传值,因此形参值的变化不影响实参的值。


函数原型

1、【单选题】下列说法错误的是()。

A、当函数原型与函数定义中的形参类型不一致时,编译器一般都会指出参数类型不匹配的编译错误。因此,写上函数原型有助于编译器对函数参数进行类型匹配检查。

B、函数声明是一条语句,不包括函数体。

C、无论何种情况,只要把用户自定义的所有函数都放在main函数的前面,就可以不用写函数原型了。

D、函数调用时,要求实参与形参的数量相等,它们的类型也要匹配,匹配的原则与变量赋值的原则一致。当函数调用时的实参与函数定义中的形参的类型不匹配时,有的编译器会发出警告,提示有可能出现数据信息丢失,而有的编译器则不会发出警告。


函数封装与程序的健壮性

1、【单选题】下列说法错误的是()。

A、我们常将程序具有遇到不正确使用或非法数据输入时仍能保护自己避免出错的能力称为程序的健壮性。

B、在函数的入口处增加对函数参数合法性的检查以及对函数调用是否成功的检查,是一种常用的增强程序健壮性的方法。

C、对于一个封装好的函数,外界对函数的影响仅限于入口参数,函数对外界的影响仅限于函数的返回值和数组、指针形参 。

D、编译器给出的警告信息无关紧要,因此可以忽略。


断言

1、【单选题】下列说发错误的是()。

A、assert()其实是一个在<assert.h>中定义的宏,用来验证“不应该”发生的情况是否的确不会发生。

B、assert()的功能就是验证assert后括号内表达式值的真假,当该表达式的值为真时,它什么也不做。反之,则立即终止程序的执行,并报告错误,但是不会对错误采取其他处理措施。

C、在使用assert()时,必须在源文件中用编译预处理指令包含头文件<assert.h>。

D、断言不仅可以用于调试程序,还可以作为程序的功能,检查有可能发生的程序错误。


断言的使用场合

1、【多选题】在下列哪些情况下适合使用断言?

A、检查程序中的各种假设的正确性。

B、证实或测试某种不可能发生的状况确实不会发生。

C、捕捉不应该或者不可能发生的非法情况。

D、捕捉程序中有可能出现的错误。


函数名的命名

1、【多选题】下面所列举的函数名正确且具有良好风格的是()

A、2_abcd()

B、GetNumber()

C、change_directory()

D、chushihua@()


计算最大值

1、【判断题】在计算一组数据的最大值之前,通常假设这组数据中的第一个数为最大,即用这组数据中的第一个数为存放最大值的变量初始化。

A、正确

B、错误


线性查找与二分查找

1、【判断题】线性查找算法不要求数据表是已排好序的,而二分查找算法要求数据表是已排好序的。

A、正确

B、错误


二分查找算法的基本思想

1、【判断题】二分查找算法就是先将表的中间位置记录的关键字与查找关键字相比较,如果两者相等,则查找成功,否则将表分成前、后两个子表,根据比较结果,决定查找前一子表还是后一子表。

A、正确

B、错误


函数的嵌套调用和递归调用

1、【单选题】下列说法错误的是()

A、函数既可以嵌套定义,也可以嵌套调用。

B、函数直接或间接调用自己,称为递归调用。

C、一个递归算法必须包含一般条件和基本条件两个基本要素。

D、基本条件是一个能控制递归过程结束的条件,是递归的出口,它本身不再使用递归的方式来定义。一般条件定义了递归关系,控制递归调用向着基本条件的方向转化。


递归的数学基础

1、【判断题】数学归纳法是递归的数学基础。

A、正确

B、错误


递归算法的执行过程

1、【判断题】递归算法的执行过程可分为递推和回归两个阶段。在递推阶段,必须要有终止递归的情况。当满足递归终止条件时,即获得最简单情况的解以后,开始进入回归阶段,即递归返回阶段。

A、正确

B、错误


尾递归

1、【判断题】当递归调用是整个函数体中最后执行的语句且它的返回值不属于任何表达式的一部分(即在回归阶段不需要任何计算)时,这种递归调用就是尾递归。

A、正确

B、错误


变量的作用域

1、【单选题】下列说法错误的是()。

A、变量的作用域是指变量的作用范围,即在程序中可以被读写访问的区域,它取决于变量被定义的位置。

B、局部变量与全局变量同名时,全局变量隐藏局部变量,即全局变量起作用,局部变量不起作用。

C、形参也是局部变量,形参变量和实参变量的作用域是不同的,因此形参变量和实参变量同名时,二者互不干扰。

D、只要同名的变量出现在不同的作用域内,二者互不干扰,编译器有能力区分不同作用域中的同名变量


全局变量的副作用

1、【判断题】全局变量破坏了函数的封装性,不能实现信息隐藏,依赖全局变量的函数很难在其他程序中复用,对于使用全局变量的程序维护也比较困难,因此建议尽量不用全局变量。

A、正确

B、错误


变量的存储类型与变量的作用域

1、【单选题】下列说法错误的是()。

A、变量的作用域决定了变量可以被访问的范围,而变量的存储类型决定了变量的生存期。

B、静态变量和全局变量都是在静态存储区中分配内存的,而自动变量是在动态存储区中分配内存的。

C、用extern声明变量为外部变量的时候,编译器是对其分配内存的。

D、静态局部变量和静态全局变量的生存期是相同的,但二者的作用域是不同的,而静态局部变量和自动变量的作用域都是局部的,但二者的生存期是不同的。




广东理工学院成人高考招生简章

广州城建职业学院成人高等教育招生简章

广东科学技术职业学院招生简章

广东科学技术职业学院招生简章

广东生态工程职业学院成人高考招生专业

清远职业技术学院成人高等教育招生专业简介

电子科技大学中山学院成人高等教育招生简章

广州涉外经济职业技术学院

韶关学院成人高考招生简章

广东财经大学成人高等教育招生简介

广东理工学院成人高考招生简章

广东第二师范学院成人高考招生简章

广东南方职业学院成人高考招生简章

广东亚视演艺职业学院成人高考招生简章


电话咨询