《C语言程序设计》试题五及答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C 、int a[10]={1,6,8,4};
D 、 char p[];
C 语言程序设计》试题五
、填空
1.实型变量的类型说明符有: ____________ 、 __________ 。
2.表达式 7+8>2 && 25 %5 的结果是 _________________________ 。
3.下列程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束循环。
Int n=0, ch; Ch=getchar( );
While( _________________ ) ) ) ) { if ( __________________ ) n++; 4. putchar(c )
函数的功能是是是 __________________________________________
5int *p 的含义是是是是 __________________________________________________ 。
6. C 语言中数组的下标下限为 ______________________________ 。
7.定义 fp 为文件型指针变量的定义方法为 ____________________________ 。
&数组int a[3][4];
共定义了 _____________ 个数组元素。
A . a=a+1
B 、 a= =b
C 、 a+=b
5、下列对数组定义不正确的语句是 __________ ______ 。
A . int m[5];
B 、char b[]={ ‘h '
4、下面不正确的赋值语句是 _______________
D 、 a=1
e '};
单项选择题
1、 下列属于整型常量的是 _________ 。
A 、 12
B 、 12.0
2、 不属于字符型常量的是 __________ 。
A .‘A '
B 、'a'
C 、“A ”
3、
下列表达式为关系表达式的为 ____________ A .3+4*5 B 、 a==10
C 、 -12.0
D 、 10E10
D 、 'b'
( 其中 a 为一整型变量 )
C 、 a>0?a:-a
D 、 a=1
6、若有以下定义,则
和
是对数组元素的正确引用。
B. 在多重循环中,只能退出最靠近的那一层循环语句。
C. 跳出多重循环。
D. 只能修改控制变量。
15.两个指针变量的值相等时,表明两个指针变量是
C. 是两个空指针。
16.字符串指针变量中存入的是
A. 不论在主函数还是自定义函数中,只要说明了变量,就可为其分配存贮单元。
B. 在定义函数时,必须指定形参的类型。
C. 形参和实参之间可以是值传递。
int
a[5],*p=a 7、 8. 9. A . *&a[6]
B 、 *p+8
C 、*(a+2)
D 、*p
执行下列语句后, int a=8; a+=a-=a*a; A . -240
a 的值是
B 、 64
C 、 112
D 、-112
指出下面正确的输入语句(
A. scanf( “ a=b=%d ” ,&a,&b) ; C. scanf( “%c ”,c) ; 面的变量说明中正确的是
A . int : a, b, c C . int a, b, c 10. C 语言用(
)表示逻辑“真” A . True
B. t 或 y
)。
B . 值。
C.
B. scanf(
%d,%d ” ,&a,&b) ; D. scanf(
%f n ”,&f) ;
int a; b; c;
D . int a, b, c;
非零整型值
D. 整型值 0
11.若 x=5,y=4 则 y*=x+5; y 的值为 (
).
A. 40
B. 20
C.
15
D. 30
13. C 语言中以追加方式打开一个文件应选择
参数。
A
.“ r B
.“ w C .“ rb ”
D
.“ a
14. Break 语句的正确的用法是 (
)。
A. 无论在任何情况下, 都中断程序的执行,退出到系统下一层。
A. 占据同一内存单元。
B. 指向同一内存单元地址或者都为空。
D. 都没有指向。
A .字符串的首地址。
B. 字符串
C .第一个字符
D. 字符串变量。
17 .以
个是不正确的描述。
D. 数组名可以作为参数进行传递。
18 表达式“ 1?(0 ?3:2) :(10?1:0)”的值为 __________________________ 。
A . 3
B. 2
C. 1
D. 0
19.为表示关系x >y >z ,应使用C 语言表达式 A .( x>=y )&&(y>=z) B. (x>=y) AND (y>=z)
C . (x>=y>=z)
D. (x>=z)&(y>=z)
20. 以下说法中正确的是 _________________ 。
C 语言程序总是从第一个定义的函数开始执行。
在C 语言程序中,要调用的函数必须有 main()函数中定义。
C 语言程序总是从 main( ) 函数开始执行。
C 语言程序中的 main( ) 函数必须放在程序的开始部分。
21. _______________________________________________________________________ 设有数组定义:char array[]= ” China ”;则数组所占的存贮空间为 _______________________________。
A . 4 个字节 B. 5 个字节
C. 6 个字节
D. 7 个字节
22. __________________________________ 根据C 语言的语法规则,下列 个是不合法标识符。
A . While
B. Name
C. Rern5
D. _exam
三、读出下列程序,写出程序的运行结果。
1. main() { int a=8 , b=1; a=a+b; b=a*b;
printf("a=%d,b=%d",a,b);
}
该程序的运行结果是 _______________________________________ 2. main()
{ int i,num[5]; for(i=0;i<5;i++)
num[i]=i*10 - 2;
printf("%d",num[3]);
}
该程序的运行结果是 _______________________________________ 3. main() { float c,f;
c=30.0; f=(6*c)/5+32;
A .
B .
C .
D .
printf("f=%f",f); }
该程序的运行结果是
4. main()
{ int a=6095 , b ; b=a%1000 ;
printf("%d", b) ; }
该程序的运行结果是_______________________________________
5. # include “ stdio.h ”
main( )
{ int a[]={8,2,9,4,1}, *p;
p=a;
*(p+2)+=2;
printf( “ %d, %d ” , *p, *(p+2));}
该程序的运行结果是_______________________________________
四、将下列程序中不正确的语句改正
1. main( )
{ int k ;
k=35555 ;
printf ( “%d “, k) ; }
2. main ( )
{ int a , b ;
scanf ( “ input a ,b :”, a , b );
printf ( “ a=%d, b=%d” ,a,b); } 3. main( )
{ int sum , k ;
sum=0 ;
k= 1 ;
while (k < =100 ) sum = sum+k ;
k + + ;
printf ( “ sum=%d n” , sum) ; }
4. main( )
{ int k , a( 8 ) ;
for( k=0; k<10 ; k++)
scanf( “ %d” , &a(k));
..... }
5. main( ) scanf( “ %d”, a);
if (a = 1)
printf( “ One n”) ;
五.编程题题
1. 用程序计算下列表达式:s=1!+2!+3!+4!
2、从键盘上输入三个数,求出其中最大的一个数。
3. 输入两个整数,调用函数stu( ) 求两个数差的平方,返回主函数显示结果。
4.从键盘上输入10
个评委的分数,去掉一个最高分,去掉一个最低分,求出其余出平均分,最高分,最低分。
8 个人的平均分,输5. write.txt 中,遇到回车键输入结束。
(用"\n ”表示回车键)
《C语言程序设计》试题五答案一、填空
1.float double 2 .0
3
.ch!= ‘ 0' (ch>= ‘ a' && ch<= ‘z') || (ch>=‘A' && ch<= ‘Z')
4.将字符 c 所包含的值输出到标准的输出设备上。
5.定义一个整型的指针变量
p
6
.
0 7 .FILE *fp 8.12
、单项选择题
1、A
2、C
3、 B
4、 B
5、 D 6 、C D 7 、D
8 、B 9、D 10 、 C 11、
A
.
13 、D 14 、
B
15 、A. 16 、A 17 、A. 18、B 19 、 A 20 、 C 21 、C 22、A
三、读出下列程
序,写出程序的运行结果。
1. a=9,b=9
2. 28
3. f=68
4. 95
5. 8,11
四、将下列程序中不正确的语句改正。
1. long int k ; printf ( “ %ld “ , k) ; }
2. scanf ( “ %d,%d”,a , b );
3. while (k < =100 )
{ sum = sum+k ;
k + + ; }
4. int k , a[8] ; scanf( “ %d”, &a[k]);
5. if (a = = 1)
五.编程题
1. main()
{ long int a,b,sum=0,p; for(a=1;a<=4;a++)
{ p=1; for(b=1;b<=a;b++) p*=b;
sum+=p; } printf( “%ld” ,sum); }
2、main()
int a,b,c,max;
scanf( “ %d,%d,%”d ,&a,&b,&c); if (a>b)
max=a; else
max=b; if (max<c)
max=c;
printf( “ max=%”d ,max); }
3. int stu(int a,int b)
{ int c;
c=a*a+b*b; return c; }
main()
{ int x,y,z;
scanf( “ %d,%d” ,&x,&y); z=stu(x,y);
printf( “%d”,z); }
4.main()
{ float a[10],b,max,min,sum=0,aver; for(b=0;b<10;b++) scanf( “ %f” ,&a[b]); max=min=a[0];
for(b=1;b<10;b++)
{ if(a[b]>max)
max=a[b];
if(a[b]<min) min=a[b];
sum+=a[b]; } sum=sum-max-min;
aver=sum/8;
printf( “%f,%f,%f ” ,aver,max,min); } 5.main()
{ FILE *fp;
Char ch;
fp=fopen( “ write.txt ” , “ w” );
ch=getchar();
while(ch!= ‘ n')
{ fputc(ch,fp);
ch=getchar(); } fclose(fp);
}。