c语言函数期末考题 c语言的期末考试题

C语言函数题,请大佬帮忙#include stdio.h
#define N 40
void input(float *score, int size)
{
int i;
printf("Enter %d scores:\n", size);
for(i = 0; isize; i)
scanf("%f", score[i]);
}
void output(float *score, int size)
{
int i;
printf("Scores:\n");
for(i = 0; isize; i)
printf("%.2f ", score[i]);
}
float average(float *score, int size)
{
int i;
float ave = 0.0;
for(i = 0; isize; i)
ave= score[i];
return ave/size;
}
int main(void)
{
float score[N];
input(score, N);
output(score, N);
printf("\nAverage: %.2f\n", average(score,N));
return 0;
}
求一份C语言程序设计的期末考试试题?。。⌒恍涣?/h2>一.
选择题
(共15题,
每题2分,共30分)
1.
定义结构体的关键字是(

A.
union
B.
enum
C.struct
D.typedef
2.
设整型变量a为5,使b不为2的表达式是(

A.
b=a/2
B.
b=6-(--a)
C.
b=a%2
D.
b=a3?2:1
3.
下面哪一项是不正确的字符串赋值或赋初值的方法(

A.
char
*str;
str=
“china”;
B.
char
str[7]=
{‘c’,
‘h’,
‘i’,
‘n’,
‘a’};
C.
char
str1[]=
“china”,str2[]=“123”;
D.
char
str1[10];
str1=
“china”;
4.
以下对二维数组a进行正确初始化的是(

A.
int
a[2][3]={{1,2},{3,4},{5,6}};
B.
int
a[
][3]={1,2,3,4,5,6};
C.
int
a[2][
]={1,2,3,4,5,6};
D.
int
a[2][
]={{1,2},{3,4}};
5.
选出下列标识符中不是合法的标识符的是(

A.
hot_do
B.
cat1
C.
_pri
D.
2ab
6.
以下说法中正确的是(

A.
C语言程序总是从第一个的函数开始执行
B.
在C语言程序中,要调用的函数必须在main()函数中定义
C.
C语言程序总是从main()函数开始执行
D.
C语言程序中的main()函数必须放在程序的开始部分
7.
若已定义:int
a[9],
*p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式为(

A.
p 1
B.
a 1
C.
a
D.
p
8.
若有说明:
int
i,j=7,
*p=i;,
则与i=j;
等价的语句是(

A.
i=
*p;
B.
*p=*j;
C.
i=j;
D.
i=*
*p;
9.
若变量c为char类型 , 能正确判断出c为小写字母的表达式是(

A.
‘a’=c=
‘z’
B.
(c=
‘a’)
||
(c=
‘z’)
C.
(‘a’=c)
and
(‘z’=c)
D.
(c=
‘a’)
(c=
‘z’)
10.
以下程序的输出结果是(

main()
{
int
a[]={1,2,3,4,5,6,7,8,9},
*p;
p=a;
*(p 3) =2;
printf(
“%d,%d\n”,*p,*(p 3)
);
}
A.
0,
5
B.
1,
6
C.
1,
5
D.
0,
6
11.
以下程序的输出结果是(

main()
{
int
a=5;
float
x=3.14;
a*=x*(‘E’-
‘A’);
printf(“%f\n”,(float)a);
}
A.
62.000000
B.
62.800000
C.
63.000000
D.
62
12.
以下程序的输出结果是(

#define
f(x)
x*x
main()
{
int
a=6,b=2,c;
c=f(a)/f(b);
printf(“%d\n”,c);
}
A.
9
B.
6
C.
36
D.
18
13.
定义如下变量和数组:int
i;
int
x[3][3]={1,2,3,4,5,6,7,8,9};
则语句for(i=0;i3;i)
printf("%d
",x[i][2-i]);
的输出结果是(

A.
1
5
9
B.
1
4
7
C.
3
5
7
D.
3
6
9
14.
下列程序段的输出结果是


void
main(
)
{
int
k;
for
(k=1;k5;k)
{
if(k%2!=0)
printf(
“#”
);
else
printf(“*”)
;
}
}
A.
#*#*
B
.
*#*#
C.
##
D.
**
15.
下列程序执行后输出的结果是(

int
d=1;
fun
(int
p)
{
int
d=5;
d
=p
;
printf("%d,",d);
}
main(
)
{
int
a=3;
fun(a);
d
=
a
;
printf("%d\n",d);
}
A.
8,
4
B.
9,
6
C.
9,
4
D.
8,
5
二.
填空题(共7题,每空2分,共30分)
1.
数组
int
a[3][5];
共定义了_______________个元素 。
2.
有float
f=3.1415927;

printf(“%5.4f”,
f
);输出的结果是_______________ 。
3.
下面程序的功能是:输出
100以内(不包含100)能被
3整除且个位数为
6的所有整数,请填空 。
main(
)
{
int
i;
for(i=1;
_______________;
i)
if
(_______________)
printf("%d",
i);
}
4.
设有“int
x=2,
y”说明 , 则逗号表达式“y=x 5,x y”的值是
_______________
5.
以下是使用指针,进行字符串复制的程序,请填空 。
main()
{
char
a[]=
“Tsinghua
University”,
b[30],
*p1,*p2;
p1=a;
p2=b;
for(;
*p1!=
‘_______________’;
p1,
p2)
_______________=_______________;
*p2=
‘_______________’;
printf(“string
a
is:%s\n”,a);
printf(“string
b
is:%s\n”,b);
}
6.
下面程序用冒泡法对数组a进行降序排序,请填空 。
main()
{
int
a[5]={4,7,2,5,1};
int
i,j,m;
for(i=0;i4;i)
for(j=0;j_______________;j)
if(
_______________
_______________
)
{
m=a[
j];
a[
j]=a[
j 1];
a[
j 1]=
m;
}
for(i=0;i5;i)
printf("%d
",a[i]);
}
7.
函数fun的功能是:使一个字符串按逆序存放,请填空 。
void
fun
(char
str[])
{
char
m;
int
i,j;
for(i=0,j=strlen(str);i_______________;i,j--)
{
m=str[i];
str[i]=
_______________;
str[j-1]=m;
}
printf("the
rotated
string
is
%s\n",_______________);
}
大一c语言考试题(急)1、C源程序文件的扩展名是( .C);编译后生成的文件名后缀是( .OBJ );经过连接后生成文件
名后缀是( .exe); 在VC6.0中用Run命令运行当前程序时,运行的程序扩展名是( .exe) 。
2、结构化程序的三种基本结构是( 顺序、选择、循环 ) 。
3、整型常量有三种表示方法,它们是( 十进制整数)、( 八制整数 )、(十六整数 ) 。
4、表达式3.5 1/2 56 的值是( 9.5 );10/10和10的值各是(1和0) 。
5、表达式3%3*3的值是( 0 );5/3*3的值是( 3 );3*6%4的值是( 2 ) 。
6、设int x=12;执行x =x-=x*x后,x 的值是( -264 ) 。
7、表达式k=7,k =k-=k 1的值是(-2) 。
8、语句"printf("%x,%o",16,12);"的输出结果是( 10,14) 。
9、设short x,y; y=(x=3,x 2,x,x*2);则x,y的值各是( 5 , 8) 。
10、设int x,y,z,t; x=y=z=1; t=x||yz;则y的值是(1 ) 。
11、条件10=x20 或x=0的C语言表达式是(x=10x20||x=0)
12、设a=1,b=2,c=3,d=4;表达式ab?a:cd?a:d的值是( 1 ) 。
13、在 C 程序中 , 用( 1)表示逻辑值“真” 。
14、表示“x≥y≥z”的C表达式是 (x=yy=z) 。
15、设x为int型变量,请写出一个关系表达式((x!==0)),用以判断x同时为3和7的倍数时
, 关系表达式的值为真 。
16、 设ch是字符型变量,判断ch为英文字母的表达式是: (
ch='z'ch='a'||ch='A'ch='Z' ) 。
17、在C语言中参数的传递总是采用( 单向)传递 。
18、如果return 表达式;中”表达式”的类型与函数类型不一致,则以( 函数类型 )的类型为准
自动转换;如果实际参数的类型与形式参数的类型不一致, 则以( 形式参数 )的类型为准自动转
换 。
19、函数形式参数在( 调用 )时分配内存,( 调用结束 )时释放内存 。
20、系统总是为数组分配( 连续 )的一块内存 。
21、字符串的结束标志是(ASCII码的0) 。
22、TC系统为任何指针变量分配的内存是(4 )字节 。
23、若有定义:double x[3][5];则x数组中行下标的下限为( 2 ),列下标的上限为(4) 。
24、若有定义int x=3,*p;则使p指向变量x的赋值语句为( p=x) 。
25、在C 语言程序中,在函数内部定义的变量称为(局部变量) 。
26、char a[2][10]={“123”,”123456789”}, *p[2]={“123”,”123456789”}; 则(前者 )
占用内存多 。
27、struct st {char num[5];int a[4];float ave; } a,*p;则变量a和p在内存各
占( 25和4)字节 。
28、unionun{ int i;char c;} ;
struct st { int v[4];doublet;union un k; }w, *pw;pw=w;
变量w占用( 28 )字节; 通过w 访问v[0]的形式是( w.v[0] );通过w访问成员c的形式是(w.k.c
);通过pw访问v[0]的全部形式有(pw-v[0],*(pw-v) );通过pw访问成员c的全部形式有(
(pw-k.c)) 。(实验验证,pw-k-c这种书写有错误直接用.也是错误)
29、设fp是文件指针,要把字符变量ch的内容写入文件,可用的语句有(
fputc(ch,fp);fwrite(ch,1,1,fp);) 。
30、fputs(str, fp)函数的功能是( 将数据str写入fp文件流中 ) 。
{29题不能用 fputs(ch,fp);由于ch只有一个字符,如果用这句的话,会因为没有字符串结束标
志而写入很长的数据 。从实验中得出 。}
涉及到穷举的题目,像28、29可能没有列举完全其他题目都是经过vc6.0验证过的 。
C语言期末考试编程代码函数题?按照题目要求编写的完整程序如下(见图,图中重复的地方只需写一次)
【c语言函数期末考题 c语言的期末考试题】c语言函数期末考题的介绍就聊到这里吧 , 感谢你花时间阅读本站内容,更多关于c语言的期末考试题、c语言函数期末考题的信息别忘了在本站进行查找喔 。

    推荐阅读