C语言复习题-1
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言复习题-1
C语言复习题-1
一、填空:每空1分;共10分
1.能够构成数组的各个元素必须具有相同的___数据类型____。
2.能正确表示0<=x<=10的关系表达式是____ x>=0&&x<=10___。
3.表达式!2+1>2&&15%5+2的值是____2___。
4.下面字符串的长度为_5______。
char *s="\xab\107\\A\""
5.有以下运算符:+,&,<,!,优先级最高的是____&___。
6.若有以下定义char ch[10];则数组ch元素下标的上限为___9____,下限为__0_____。
7.C语言的数组名是一个__指针_____常量,不能对它进行加减和赋值等运算。
8.有以下函数调用语句,请问函数fun1到底有____4___个参数。
fun1(x,(y,z),10,fun2((x-1,y-1)))
9.函数调用时,若形参和实参均为数组,则其传递方式是___地址传送方式___
二.单选题:每小题2分,共20分。
1.不是C语言基本数据类型的是( A )。
A) 指针类型 B) 整型 C) 无符号长整型 D) 单精度型
2.正确的字符串常量是( A )。
A) "abcd" B) {abcd} C) {"abcd"} D) abcd
3.在C语言中,只能用于整型数据操作的运算符是(D )。
A) ! B) < C) / D) %
4.下列有关函数的说法中错误的是( D )。
A) C语言中的函数只具有static和extern两种类型
B) C语言中允许函数的递归调用
C) 调用函数时,C语言要求实参与形参的个数,类型完全一致
D) C语言函数的缺省数据类型是空类型(void型)
5.若有以下说明和语句,请选出那个是对a数组元素的正确引用( B )。
int a[4][5],(*p)[5]; p=a;
A) p+1 B) *(p+3) C) *(p+1)+3 D) *(*p+2)
6.下面各语句行中,能正确进行赋字符串操作的语句行是( C )。
A) char st[4][5]={"ABCDE"}; B) char s[5]={ˊAˊ,ˊBˊ,ˊCˊ,ˊDˊ,ˊEˊ};
C) char *s;s=" ABCDE"; D) char *s; scanf("%s",s);
7.下面有关for语句的说法中,正确的是( B)。
A) 任何情况下,for语句中的三个表达式一个都不能少
B) for语句中的循环体至少会被执行一次
C) for语句只能用于循环次数已经确定的情况下
D) for语句中的循环体可以是复合语句
8. 一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是( B )
A)有零个或多个输入 B)有零个或多个输出
C)有穷性 D)可行性
9. 以下叙述中正确的是(B)
A)C语言的源程序不必通过编译就可以直接运行
B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令
C)C源程序经编译形成的二进制代码可以直接运行
D)C语言中的函数不可以单独进行编译
10. 若以下选项中的变量已正确定义,则正确的赋值语句是(A )
A)x1=26.8%3 B)1+2=x2 C)x3=0x12 D)x4=1+2=3;
三、判断题:每小题1分,共10分。
1.( 1)一个int型与一个double型数据进行混合运算时,其结果是double型。
2.( 2 )语句int pt中的*pt是指针变量名。
3.( 2 )putchar()函数可以输出一个字符串。
4.( 2 )主函数和其它函数可以相互调用。
5.( 2 )C程序的执行总是从第一个定义的函数开始。
6.( 1 )puts和gets函数只能输入或输出一个字符串。
7.( 1 )for(;;)语句相当于while(1)语句。
8.( 1 )C程序中各函数之间既允许直接递归调用也允许间接递归调用。
9.( 2 )函数必须有返回值,否则不能使用函数。
10.( 1 )静态外部变量既可以在文本文件中引用,也可以在其它文件引用。
四、程序分析题:每小题5分,共20分。
1.请写出以下程序的输出结果:
#include
main()
{
int i,sum=0;
i=1;
while (i<=10)
{
sum=sum+i;
i++;
}
printf("%d",sum);
}
55
2.请写出以下程序的功能:
#include
void main()
{ int a;
float b,sum;
for(a=1,sum=0.0;a<6;a++)
{ printf("please input number:\n"); scanf("%f",&b);
sum+=b; }
printf("average=%f\n",sum/5);
}
求五个数的平均值并输出
3. 请写出以下程序的输出结果:
#include
main()
{
int i,sum=0;
for(i=1;i<=20;i++)
sum=sum+i;
printf("%d",sum);
}
210
4. 请写出以下程序的功能:
#include
main()