C语言练习测试试题
引导语:编程语言是计算机独有的,以下是小编整理的C语言练习测试试题,欢迎参考阅读!
一、判断题:(12分 每题2分)
1、C语言规定:在一个源程序中,main函数的位置必须在最开始。
2、假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是8。
3、凡是函数中未指定存储类别的局部变量,其隐含的存储类别为静态存储。
4、C语言中规定函数的返回值的类型是由return语句中的表达式类型所决定。
5、在C语言中对文件操作必须先关闭当前文件,然后再打开一个新文件。
6、C语言程序的基本单位是语句。
二、选择题:(20分 每题2分)
1.假设已定义char a[10]和char *p=a, 下面的赋值语句中,正确的是:
A) a[10]=“Turbo C”;
B) a=“Turbo C”;
C) *p=”Turbo C”;
D) p=”Turbo C”;
2.下面关于运算符优先顺序的描述中正确的是:
A)关系运算符<算术运算符< 赋值运算符< 逻辑与运算符
B)逻辑运算符<关系运算符< 算术运算符< 赋值运算符
C)赋值运算符<逻辑与运算符< 关系运算符< 算术运算符
D)算术运算符<关系运算符< 赋值运算符< 逻辑与运算符
3.以下正确的描述是。
A)continue语句的作用是结束整个循环的'执行
B)只能在循环体内和switch语句体内使用break语句
C)在循环体内使用break语句或continue语句的作用相同
D)从多层循环嵌套中退出时,只能使用goto语句
4.用8位无符号二进制数能表示的最大十进制数为
A) 127 B) 128 C) 255D)256
5.下列叙述中正确的是:
A) C语言中既有逻辑类型也有集合类型
B) C语言中没有逻辑类型但有集合类型
C) C语言中有逻辑类型但没有集合类型
D) C语言中既没有逻辑类型也没有集合类型
6.以下对C语言函数的有关描述中,正确的是:
A) 调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参
B) 函数既可以嵌套定义又可以递归调用
C) 函数必须有返回值,否则不能使用函数
D) 程序中有调用关系的所有函数必须放在同一个源程序文件中
7.在C语言中,不正确的int类型的常数是:
A)32768 B) 0
C) 037 D) 0xaf
8.以下叙述中不正确的是:
A) 在不同的函数中可以使用相同名字的变量
B) 函数中的形式参数是局部变量
C) 在一个函数内定义的变量只在本函数范围内有效
D) 在一个函数内的复合语句中定义的变量在本函数范围内有效
9.以下说法中正确的是:
A) #define和printf都是C语句
B) #define是C语句,而printf不是
C) printf是C语句,但#define不是
D) #define和printf都不是C语句
10.若有以下定义和语句:doubler=99,*p=&r; *p=r;则以下正确的叙述是:
A) 以下两处的*p含义相同,都说明给指针变量p赋值
B) 在“doubler=99,*p=&r;”中,把r的地址赋值给了p所指的存储单元
C) 语句“*p=r;”把变量r的地址值赋给指针变量p
D) 语句“*p=r;”取变量r的值放回r中
三、填空题:(24分 每空2分)
1、下面程序的功能是:输入一行字符,统计其中有多少个单词,单词之间
用空格分开。请填空完成。
# include
main()
{charstr[81];
int I,(【1】);
charc;
gats(str);
for(I=0;(【2】 )!=’’;I++)
if(c==’ ’)word=0;
elseif( 【3】 )
{word=1;
(【4】 )}
printf(“There are %d word in line. ”,num);
}
2、下面程序的功能是:用选择排序法对数组中10个数据按由小到大排序。请填空完成。
voidsort(int a[],int n)
{( 【5】 )
for(I=0;I<n-1;I++)
{ (【6】 )for(j=I+1;j<n;j++)
if(a[j]<a[k])k=j;
if( (【7】 )){t=a[k];a[k]=a[I];a[I]=t;}
}
}
main()
{intb[10],I;
printf(“enter the array ”);
for(I=0;I<10;I++)
scanf(“%d”.&b[I]);
( 【8】 )
printf(“the sorted array: ”);