admin 管理员组文章数量: 1184232
2024年3月21日发(作者:css教程官方网站)
让知识带有温度。
C程序设计期末考试习题(含答案)
c语言程序设计期末试题A(含答案)
一、单项挑选题(挑选一个最佳答案,每题2分,共20分)
1.一个C程序的执行是从( )。
A) 本程序的main函数开头,到main函数结束
B) 本程序文件的第一个函数开头,到本程序文件的最后一个函
数结束
C) 本程序的main函数开头,到本程序文件的最后一个函数结束
D) 本程序文件的第一个函数开头,到本程序main函数结束
2.下列选项中,不能用作标识符的是( )。
A) _1234_ B) _1_2 C) int_2_ D) 2_int_
3.以下定义语句中正确的是( )。
A) char a='A'b='B'; B) float a=b=10.0;
C) int a=10,*b= D) float *a,b=
4.设有以下定义:#define d 2
int a=0; double b=1.25; char c=’A’;
则下面语句中错误的是()。
第 1 页/共 39
页
千里之行,始于足下
A) a++; B) b++ C) c++; D) d++;
5.以下4个选项中,不能作为一条C语句的是( )。
A) {;} B) a=0,b=0,c=0; C) if(a>0); D) if(b==0) m=1;n=2;
6.有以下定义语句 double a,b; int w; long c;
若各变量已正确赋值,则下列选项中正确的表达式是( )。
A) a=a+b=b++ B) w%(int)a+b) C) (c+w)%(int)a D) w=a==b;
7.设有定义:int n=0,*p=则以下选项中,正确的赋值语句是( )。
A) p=1; B) *q=2; C) q=p; D) *p=5;
8.设有定义:int a,*pa= 以下scanf语句中能正确为变量a读入数
据的是( )。
A) scanf(“%d”,pa) ; B) scanf(“%d”,a) ;
C) scanf(“%d”, D) scanf(“%d”,*pa);
9.若有说明:char
*language[]={”FORTRAN”,”BASIC”,”PASCAL”,”JAVA”,”C”};则表达
式*language[1]>*language[2]比较的是()。
A)字符B和字符P B) 字符串FORTRAN和字符串BASIC
C)字符F和字符B D) 字符串BASIC和字符串PASCAL
10.执行语句for(i=1;i++
第 2
页 /共 39
页
让知识带有温度。
void main()
{ char str[20]="C Language", c;
int i=0;
while((c=str[i])!='0')
{ i++;
#ifdef LETTER
if(c>='a'
else if(c=='z') c=c-25;
#else
if(c>='B'
else if(c=='A') c=c+25;
#endif
printf("%c",c); } }
执行后输出的结果是。
4.有以下程序
void fun(int *a,int i,int j) { int t;
if(i
第 3 页/共 39
页
千里之行,始于足下
【1】
int sumhw( char **p,int n);
char jughw(char *str);
void main(int argc,char *argv[])
{ int s;
if (argcb)max=a max=b
6、-14
三、读程序写结果(每题6分,共24分)
1、7 8 9
2、x=8,y=4
3、C Lbohvbhf
4、8 6 1 2 8 6 1 2
四、程序填空(每空1分,共8分)【1】#include
【2】argv+1
【3】*(p+i)
【4】flag= =’Y’
【5】str+n-1
第 4
页 /共 39
页
让知识带有温度。
【6】p1 【7】p2--
【8】p1 五、编程题(共30分)
1. (1)数组法(9分)
#include
#include
#define N 20
void inv(char str[],int n);
void main()
{char str[N];
gets(str);
inv(str,strlen(str));
puts(str);
}
void inv(char str[],int n)
{int i,j,temp;
for(i=0,j=n-1;i
#include
第 5 页/共 39
页
千里之行,始于足下
#define N 20
void inv(char *str,int n);
void main()
{char str[N];
gets(str);
inv(str,strlen(str));
puts(str);
}
void inv(char *str,int n)
{char *i,*j,temp;
for(i=str,j=str+n-1;i
int m;
void del_element(int num[],int n); void main()
{int num[10];
int i,n;
m=10;
for(i=0;i
第 6
页 /共 39
页
让知识带有温度。
main( )
{
int a = 1, b = 2, c = 3;
printf(“%d”, c>b>a);
}
A) 2 B) 1 C) 0 D) 3
3.以下正确的讲述是()
A) 在C语言中,main函数必需位于文件的开始
B) C语言每行中只能写一条语句
C) C语言本身没有输入、输出语句
D) 对一个C语言举行编译预处理时,可检查宏定义的语法错误
4.设有定义:int a,*pa= 以下scanf语句中能正确为变量a读入数
据的是()
A)scanf("%d",pa); B)scanf("%d",a);
C)scanf("%d", D)scanf("%d",*pa);
5.若有以下程序段,
int c1=1,c2=2,c3;
c3=1.0/c2*c1;
第 7 页/共 39
页
千里之行,始于足下
则执行后,c3中的值是()
A) 0 B) 0.5 C) 1 D) 2
6.能正确表示规律关系:“a≥=10或a≤0”的C语言表达式是()
A) a>=10 or a=0|a=10
scanf(“%d,%d,%d%d”,
…
}
A)1 2 3 4 B)1 2 3,4 C) 1,2,3,4 D) 1,2,3 4
8.有以下程序段
main( )
{
int k=0;
while(k=1) k++;
}
则while循环执行的次数是()
A) 无限次 B) 有语法错,不能执行C) 一次也不执行 D) 执行1
次
第 8
页 /共 39
页
让知识带有温度。
9.以下程序的输出结果是()
#include
main( )
{
int a = 5, b = 4, c = 6, d;
printf(“%d”,d=a>b?(a>c?a:c): b);
}
A) 5 B) 4 C) 6 D) 不确定
10.下面是对数组a的初始化,其中不正确的是()
A)a[5]={"ABCD"} B)a[5]={'A','B','C','D'}
C)a[5]="" D)a[5]="ABCDE"
二、填空题(每空2分,共32分)
1.结构化程序设计中的三种基本结构是 [1] 、 [2] 、
2.C程序的基本组成单位是 [4] 。
3.标识符的第一个字符必需是 [5] 或 [6] 。
4.实常数123.457的规范化指数表示形式是 [7] 。
5.表达式7/2的结果是[8]。表达式7%2的结果是[9]。
第 9 页/共 39
页
[3] 。
千里之行,始于足下
6.定义一个整型数组a[10],则下标最大的数组元素为 [10] 。
7.在函数的递归调用过程中,要使递归过程不是无限制举行下去,
必需具有 [11] 。
8.C语言提供了 [12] 命令用来实现“文件包含”的操作。
9.已知:char c[ ]={“china”};将字符数组c中囫囵字符串一次输出
的语句书写格式为 [13] 。
10.表达式4>3
printf("%c,%d",ch,ch+3);
}
2. main( )
{
int a = 10;
printf(“%d ”, ++a);
printf(“%d ”, a--);
}
3.main( )
{ int t=1;
for(i=1 ; i1)
第 10
页 /共 39
页
让知识带有温度。
3.编写程序输出下列形式的杨辉三角形的前10行。(10分) 1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
……
C语言模拟试卷二答案及评分标准
一、单项挑选题(每小题1分)
1. A
2. C
3. D
4. A
5. B
6. D
7. D
8. A
9. C 10. D
第 11 页/共 39
页
千里之行,始于足下
二、填空题(每空2分)
1.挨次结构、挑选结构、循环结构。
2.函数
3.字母、下划线
4. 1.23457e2或1.23457E2
5.3、1
6.a[9]
7.使递归结束的条件
8.#include
(“%s”,c)
10.0
11.全局变量、局部变量
三、计算题(要求写出步骤)(每题4分)
1.
a-=a*a a=a-a*a a=12-144= -132
a+=-132 a=a+(-132) a=-132-132= -264
2. 1.0/2+3%2=0.5+1=1.5
第 12
页 /共 39
页
让知识带有温度。
四、读下列程序,写出程序的运行结果(每题3分)
1.1.A,68
2.2.1111
3.3.24
4.4.8,4
五、程序填空:
1.*m
2.*m=*n
3. temp
4. x,y
5. i=i+2
6. m=i*t
7. t=-t
六、编程题
1.
main()
{
(每空2分)
第 13 页/共 39
页
千里之行,始于足下
int i;
float t=1,s=0;
for(i=1;i
main( )
{ int m=7,n=4;
float a=38.4,b=0.4,x;
x=m/2+n*a/b+1/2;
printf(''%fn'',x);
}
A、22
B、387.000000
C、27
D、26
76、下面程序的运行结果是(C )。
main( )
{ int cl=2,c2=0;
while(!c2- -)
第 14
页 /共 39
页
让知识带有温度。
printf(''%d%d'',cl- -,c2);
}
A、陷入死循环
B、不输出任何内容
C、输出2 -1
D、输出20
77、下面程序的运行结果是(B)。
int m=4,n=6;
max(int x,int y)
{ int max;
max=x>y?x:y;
return(max);
}
main( )
{ int m=10;
printf(''%dn'',max(m,n));
}
第 15 页/共 39
页
千里之行,始于足下
A、4
B、10
C、6
D、5
78、下面程序的运行结果是(B )。
fun(int p)
{ int k=1;
static t=2;
k=k+1;
t=t+1;
return(p*k*t);
}
main( )
{ int x=4;
fun(x);
printf(''%dn'',fun(x));
}
第 16
页 /共 39
页
让知识带有温度。
A、4
B、32
C、30
D、16
79、阅读下面的程序:
main( )
{ char ch;
scanf(''%c'',
if(ch>='a'
printf(''%c'',ch);
}
若输入字符为:e,则程序运行结果为( A )。
A、E
B、A
C、e
D、z
80、下面程序的运行结果是(B)。
第 17 页/共 39
页
千里之行,始于足下
main( )
{ static int a[3][3]={{3,2,1},(4,5,6),{-2,9,1}};
int i,j,sum=0;
for(i=0;i
void fun(int x)
{
putchar('0'+(x% 10));
fun(x/10);
}
main( )
{
printf(''n'');
fun(1234);
}
A、4321
B、321
C、21
第 18
页 /共 39
页
让知识带有温度。
D、1
86、设已定义i和k为int类型变量,则以下for循环语句(B)。
for(i=0,k=-1;;i++,k++)
printf(''* * * *n'');
A、推断循环结束的条件不合法
B、是无限循环
C、循环一次也不执行
D、循环只执行一次
87、下列程序段挑选项中,使i的运行结果为4的程序段是(D)。
A、int i=0,j=0;
B、int i=1,j=70;
(i=3,(j++)+i); j=i=((i=3) *2);
C、int i=0,j=1;
D、int i=1,j=1;
(j= =1)?(i=1):(i=3); i+=j+=2;
89、阅读以下程序(最左边是附加的行号)。
1)#include
第 19 页/共 39
页
千里之行,始于足下
2)main( )
3){ float s[5];
4)int i,k=0;
5)for(i=0;i=20)break;
if(b%3= =1)
b+3;
continue;
}
b-=5;
}
A、7
B、8
C、
D、10
93、下面的程序中(
1)#include
2)main( )
C )有错误。
第 20
页 /共 39
页
版权声明:本文标题:C程序设计期末考试习题(含答案) 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1711008688a583884.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论