个别选择题(本大题共20分,各小题1分,共20分)。
1 .以下说法正确的是
c程序可以从任何函数运行
可以用其他函数调用main函数
一个c程序只有一个主函数
主函数不能使用有形参数
2 .下一个正确的标记是
a . a B. a=2 C. a.3 D. a_3
3 .以下数据中属于“字符串常量”的是
a.abcb.\” ABC \” c.\” ABC \” d.\” a \”
4.char型常数存储在存储器中是因为
A. ASCII码B. BCD码c .内码d.10进制码
5 .假设字符类型变量a=3,b=6,计算表达式c=(a^b ) 2后,C的二进制值为
a.00011100 b.00000111 c.00000001 d.00010100
char a; int b; float c; 双精度d; 表达式a*b d-c的值类型为
A. float B. int C. char D. double
7 .如果以下程序的输出结果为a=5、b=4,则输入数据的格式应为() )
#include “stdio.h”
main ( ) )
{ int a,b;
scanf(\’%d,b=%d \’,a,b );
printf(a=%d,b=%d ),a,b );
() ) ) ) )。
a54b 5,4c5b=4d 5,b=4
8 .在c语言中,while和do…while循环的主要区别是
A.while的循环控制条件比do…while的循环控制条件更严格
B.do…while的循环体至少无条件执行一次
C.do…while允许从外部向循环体内移动
D. do…while的循环体不能是复合句
9 .循环语句for(x=0,y=0; ( y!=123(|(x4 ); x; 的循环执行
a .无限次b .不确定次数C. 4次D. 3次
10 .在c语言中,数组定义char array []=\’China \’; array所占的空间
A.4字节
B.5字节
6字节
7字节
11 .如果变量被正确解释为int类型,则语句scanf(“%d%d%d”,a,b,c ); 将3、5、8分别代入a、b、c。 不正确的输入格式是
3 enterb.3、5和8 enter
5输入
8输入
C. 3enter D. 3 5enter
58输入8
12.char *p=\’happy new year \’; char *q=p; int k;
for(k=1; k8; k )
{Putchar(*q );
q; () ) ) ) )。
上面的c块的输出结果是
A.happy new year
B.happy new
C.happy n
D.happy
E.appy n
13.double*p[5]; 如果是这样的话
p是指向双精度变量的指针
p是双精度数组
p是指针数组,其元素是指向双精度变量的指针
p是数组指针,指向双精度数组
14 .不能使用两个指针变量(
a .加法b比较c减法d指的是同一地址
15.c语言函数的描述正确的是
用c语言调用函数时,只能将实参的值传递给形参,形参的值不能返回给实参
c函数可以嵌套定义或递归调用
函数需要返回值。 否则,函数将不可用
函数需要返回值,返回值类型不确定
16 .对data a成员的正确引用有以下定义
struct test{int a; 浮动b; }data,*p=data;
a.(p ).data.ab.) p ).a C. p-data.a D. p.data.a
17 .如果有以下步骤(提示:注意宏替换规则)
#define N 2的
#define M N 1的
#define NUM 2*M 1的
#main ( )的
{ int i; 的
for(I=1; i=NUM; I ) printf(「%d(n ),I ); 的
(的
该程序中for循环的执行次数为() ) ) )。
A. 5 B. 6 C. 7 D. 8
18 .如有以下定义,则printf(“%d\\n”,sizeof ) them ); 的输出是
typedef union {long x[2]; int y[4]; char z[8]; } MYTYPE;
我的类型them;
A.32 B.16 C.8 D.24
19 .在以下语句中,将c定义为文件类型指针是
a .文件c; b .文件* c; c .文件c; D. file *c;
20 .在以下对c语言数据文件的描述中,正确的是
51TeA .文件由ASCII代码字符串构成,只能用c语言读写文本文件
51stB .文件由二进制数据系列构成,c语言只能读写二进制文件
51TeC .文件由记录序列构成,能够以数据保存形式分为二进制文件和文本文件
51TtD .文件以数据流形式构成,按照数据的存储形式可以分为二进制文件和文本文件
二、填空题(本大题共10分,各小题2分,共20分) )。
定义变量的同时,请确保为变量提供初始值
2 .下一段的输出结果为: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _下一段
int a=28; a=a21; printf(「%d%o\\n”,a,a );
正确表示3.0a10的逻辑表达式是: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
4 .如有定义int a[3],则*p; 将p指向数组a的赋值语句是_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ p
5.strcmp函数的功能是: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ strcmp函数
6 .写出公式的c语言表达_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _写公式
7 .将下一个程序描述为三目运算符的表达式为: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
if(ab ) max=a; else max=b
8 .定义如下。 对于#definef(n )2) n,等式f )2) 3的值是_ _ _ _ _ _ _ _。
9 .在c语言中,指针运算符是_ _ _ _ _ _ _ _ _ _ _,地址运算符_ _ _ _ _ _ _ _ _ _ _,地址运算符
10 .在c语言中,参数以两种格式传递: _ _ _ _ _ _ _ _ _和_ _ _ _ _ _ _ _和
三、程序分析问题(本题共5题,每题5分,共25分) )。
1 .如果在运行时输入: 2,则以下程序的运行结果为_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _。
#include stdio.h
main ( ) )
{
char class;
printf (“enter1for1stclasspostor2for 2nd post :”);
canf(「%c”,类);
if ( class==’1’)
printf(「1STclasspostageis19p”)
else
printf(「2ndclasspostageis14p”);
() ) ) ) )。
2 .以下程序的运行结果为: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
#includestdio.h
void main ( ) )
{
int num=0
wile(num=2) {
num;
printf(\’%d \’,num );
() ) ) ) )。
() ) ) ) )。
3 .以下程序的输出结果为: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _以下程序
#include stdio.h
main ( ) )
{ int k=4,m=1,p;
p=func(k,m );
printf(\’%d”,p );
() ) ) ) )。
func(inta,int b ) )。
{
int m=0,i=2;
i=i m 1;
m=i a b;
返回m;
() ) ) ) )。
4 .以下程序的执行结果为()。
#include stdio.h
main ( ) )
{
inta [ ]={ 5,6,7,8 },I;
func(a );
for(I=0; i4; I )
printf(\’%d \’,a[i] );
() ) ) ) )。
是func(int*b )
{
int j;
for(j=0; j4; j )
b[j]=2*j;
() ) ) ) )。
5 .有程序myapp.c,代码如下。
#include stdio.h
main(intargc,char *argv[] ) ) ) ) ) ) ) ) ) main ) ) ) main ) ) ) main ) ) main ) ) main ) ) ) chargv ) ) ) ) chargv )
{
wile(–argc0) printf ( % s,argv[argc] ); printf(「\\t \” ); () ) ) ) )。
() ) ) ) )。
如果编译并创建myapp.exe,然后输入以下命令:
myapp aaa 333 bbb 444
输出结果为_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _输出
四、程序填充问题(本大题共5题,每题4分。 共计20分)
1、根据以下嵌套if语句给定的条件,填写switch语句,完成相同的功能。
(假设mark的可取值在1到100之间) if语句如下:
if (标记60 ) k=1;
else if (标记70 ) k=2;
else if (标记80 ) k=3;
else if (标记90 ) k=4;
else if (标记100 ) k=5;
请填写以下转换后的switch语句括号内的内容。
开关( ) )
{
__________: k=1; 黑;
case 6 : k=2; 黑;
case 7 : k=3; 黑;
case 8 : k=4; 黑;
___________: k=5; 黑;
() ) ) ) )。
2 .在数组中输入8个数,找出其中的最大数量和最小数量并输出。
main ( ) )
{
int I,max,min,a[_______];
for(I=0; I8; I ) scanf(“%d”,a[I];
max=a[0]; min=a[0];
for(I=1; I8; I )
{
if(a[I]max ) )。
max=_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _;
if(a[I]min ) )。
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _;
() ) ) ) )。
printf(「max=%d,min=%d\\n”,_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ n”,)
() ) ) ) )。
3 .下一个程序的功能是输入三角形的三条边a、b、c。 求三角形的面积,填一下:
#include math.h
main ( ) )
{
float a、b、c、s、area;
scanf ( \”、a、b和c ); //填孔/
s=1.0/2*(ABC );
area=(s*(s-a ) ) s-b ) ) s-c ); //填孔/
printf(「a=%7.2f,b=%7.2f c=%7.2f,s=%7.2f\\n”,a、b、c、s );
printf(「area=%7.2f\\n”,area );
() ) ) ) )。
4 .以下程序的功能是求出的近似值。 请填写空栏。 ((提示) ) ) ) )。
#include stdio.h
main ( ) )
{
int s;
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _; //填孔/
t=1; pi=0; n=1.0; s=1;
wile(Fabs(t ) 1e-6 ) )。
{
__________________; //填孔/
n=n 2;
s=-s;
t=s/n;
() ) ) ) )。
pi=pi*4;
printf(「pi=.6f\\n”,pi );
() ) ) ) )。
5 .下一个程序的功能是从一个文件中读取三个结构并将其存储在一个结构数组中。 请填写空栏。
#include stdio.h
struct Test {
char a[20];
(;
主( )。
__________________; //填孔/
struct Test x[3];
int i;
FP=fopen(「d:\\cwz\\\\ABC.bat \”、\” rb \” );
for(I=0; i3; I )
__________________; //填孔/
flose(FP );
() ) ) ) )。
五、编程问题(本题共2题,第一题7分,第二题8分,共15分) )。
1 .输入华氏温度编制程序,按下式计算相应的摄氏温度( c )并输出:
c=5(f-32 )/9
2 .编制程序用结构存储下表数据,计算并输出人均姓名和实际工资。 实际工资=基本工资变动工资-支出。
姓名
基本工资
浮动工资
支出
赵
乔安
三星
240.0
360.0
560.0
400.0
120.0
0.0
75.0
50.0
80.0
结构的定义如下:
结构工作器
{
char name[10];
float jbgz;
float fdgz;
浮之知察
(;
请参阅答案:
一.选题
1.C 2.D 3.B 4.A 5.D
6.D 7.D 8.B 9.A 10.C
11.B 12.C 13.C 14.A 15.A
16.B 17.B 18.C 19.B 20.D
二.填补问题
1 .变量初始化
2. 20 24
3. a=10a=0
4. p=a; 或p=a[0];
5 .比较两个字符串的大小
6.x=(-bsqrt ) b*B-4*a*c ) )/( )2*a ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
7. max=(ab )? a:b或max=ab? a:b
8. 7
9. *
10 .传价传址
三.程序分析问题
1.2nd class postage is 14p
2. 1 2 3
3. 8
4. 0246
5. 444 bbb 333 aaa
四.程序填充问题
1 .默认
case 9
2. 8
a[I]。
min=a[I]
最大,最小
3. %f%f%f
Sqrt
4. float t,pi,n
pi=pi t
5. FILE *fp
fread(x[I],sizeof(structtest ),1 fp ) )
五.程序设计问题
1. #includestdio.h
main ( ) )
{float C,f;
printf(「inputf:\” );
scanf(“%f”,f );
c=5*(f-32 )/9;
printf(「c=%.2f”,c );
() ) ) ) )。
2. #include stdio.h
结构工作器
{
char name[10];
float jbgz;
float fdgz;
浮世奇;
(;
main ( ) )
{struct worker w[3]={{\’Zhao \’,240,400,75 }、{\’Qian \’,360,120,50 }、{\’Sun \’,560,0,0,80 };
int i;
打印( names fgz ( n ) );
for(I=0; i3; I )
printf(%4s.2f(n ),w[i].name,w[i].jbgz w[i].fdgz-w[i].zhichu );
() ) ) ) )。
自考资料网:建议开通永久VIP超级会员更划算,除特殊资源外,全站所有资源永久免费下载
1. 本站所有网课课程资料来源于用户上传和网络收集,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,助力考生上岸!
3. 如果你想分享自己的经验或案例,可在后台编辑,经审核后发布在“自考资料网”,有下载币奖励哦!
4. 本站提供的课程资源,可能含有水印,介意者请勿下载!
5. 如有链接无法下载、失效或广告,请联系管理员处理(在线客服)!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 星光不问赶路人,岁月不负有心人,不忘初心,方得始终!