C语言试卷
姓名:_________________ 分数:_______________
选择题((1)~(0)每题分,共0分)
要调用数学函数时,在#include命令行中应包含______。
A、 ”stdio.h” B、 ”string.h” C、 ”math.h” D、 ”ctype.h”C 语言程序中可以对程序进行注释,注释部分必须用符号______括起来。
A‘{‘ 和’}’ B‘[‘和’]’ C“/*”和”*/” D“*/”和”/*”表达式strcmp(“box”, “boss”) 的值是一个______。
A、 正数 B、 负数 C、 0 D、 不确定的数
判断i和j至少有一个值为非0的表达式是______。
A、 i!=0 && j!=0 B、i*j!=0 C、i=0 || j!=0 D、i&&j若以下选项中的变量已正确定义,则正确的赋值语句是______
A. x1=26.8%3 B. 1+2=x2 C. x3=0x12 D. x4=1+2=3;
switch语句___A___。
A. 都可以用if-else if结构实现 B. 都不可以用if-else if结构实现
C. 有的可以用if-else if结构实现 D. 大部分不可以用if-else if结构实现
设有以下定义int a = 0; double b = 1.25; char c = ’A’; #define d 2 则下面语句中错误的是___ A. a++; B. b++ C. c++; D. d++;
设有定义:int a,*pa=&a;以下scanf语句中能正确为变量a读入数据的是
A. scanf(“%d”,pa); B. scanf(“%d”,a);C. scanf(“%d”,&pa); D. scanf(“%d”,*pa);
10. 若变量已正确定义并且指针p已经指向某个变量x,则(*p)++相当于______。
A、p++ B、x++ C、*(p++) D、&x++
11. 若p1、p2都是整型指针,p1已经指向变量x,要使p2也指向x, ______是正确的。
A、p2=p1; B、p2=**p1; C、p2=&p1; D、p2=*p1;
填空题(每分,共分)
main()
{
char ch1[]=“1234567890”;
char ch2[]=“12345”;
int len1,len2;
strcpy( ch1, ch2 );
len1 = strlen(ch1);
strncpy( ch1, ch2, 3 );
len2 = strlen(ch1);
printf(“%d %d\n”, len1, len2 );
}
执行后输出结果是【】。“d1=%lf\n,d2=%lf\n”, d1, d2 );
6: if( d1==d2 )
7: printf(“d1=d2=%lf\n”,d1 );
8: else
9: printf(“d1=%lf,d2=%lf\n”,d1,d2);
10: return 0;
11: }
请指出错误语句的行数及正确写法__
第五行 scanf( “d1=%lf\n,d2=%lf\n”, &d1, &d2 );
第六行 if( fabs( fabs(d1)-fabs(d2) ) < 0.000001 )
能找到本语句得分,不限此一种写法
6、已知字符A的ACSII码值为65,以下语句的输出结果是char ch=’B’;printf(“%c %d\n”,ch,ch);
7、有以下语句段int n1=10,n2=20;printf(“【】”,n1n2);要求按以下格式输出n1和n2的值,每个输出行从第一列开始,请填空。n1=10n2=20
8、有以下程序main( ){ int t=1,i=10;for(;i>=0;i--)
t*=i;printf(“%d\n”,t);
}
执行后输出结果是【】。
9、有以下程序main( ){ int n=0,m=1,x=