手机阅读

c语言的if语句心得体会和方法 c语言简单的if语句(3篇)

格式:DOC 上传日期:2023-01-06 20:07:10 页码:12
c语言的if语句心得体会和方法 c语言简单的if语句(3篇)
2023-01-06 20:07:10    小编:ZTFB

在平日里,心中难免会有一些新的想法,往往会写一篇心得体会,从而不断地丰富我们的思想。好的心得体会对于我们的帮助很大,所以我们要好好写一篇心得体会下面我帮大家找寻并整理了一些优秀的心得体会范文,我们一起来了解一下吧。

描写c语言的if语句心得体会和方法一

1.c语言源程序的基本单位是( )。

a 过程 b 函数 c 子程序 d 标识符

2、下列程序的输出结果是( )。

main( )

{ int a=7,b=5;

printf("%d",b=b/a);

}

a 5 b 1 c 0 d不确定值

3、假设变量a,b均为整型,表达式(a=5,b=2,ab?a++:b++,a+b)的值是( )。

a 7 b 8 c 9 d 2

4、设a为int型变量,执行下列赋值语句后,a的取值分别是( )。

a=125.534; a=(int)125.521%4; a=52;

a 125,31,1 b 125,1,20 c 125,31,20 d 125.534,2,20

5、设有如下程序段,下面描述中正确的是 ( )。

int k=10; while(k=0) k=k-1;

a 循环执行一次 b循环是无限循环 c循环体语句一次也不执行 d循环体语句执行一次

6、以下程序的输出结果为( )。

int i;

void prt( )

{ for(i=5;i8;i++) printf("%c",*);

printf(" ");

}

main( )

{ for(i=5;i=8;i++) prt( );

}

a *** b *** *** *** *** c *** *** d * * *

7、在c语言程序中,以下说法正确的是()。

a函数的定义可以嵌套,但函数的调用不可以嵌套

b函数的定义不可以嵌套,但函数的调用可以嵌套

c函数的定义和函数的调用都不可以嵌套

d函数的定义和函数的调用都可以嵌套

8、以下函数调用语句中含有( )个实参。

func((e1,e2),(e3,e4,e5));

a 2 b 3 c 5 d 语法错误

9、以下程序的输出结果为( )。

#define add(x) x*x

main( )

{ int a=4,b=6,c=7,d=add(a+b)*c;

printf("d=%d",d);

}

a d=70 b d=80 c d=140 d d=700

10、已知职工记录描述如下,在turbo c中,系统为变量w分配( )字节的空间。

struct worker

{ int no;

char name[20];

char sex;

union

{ int day; int month; int year;}birth;

} w;

a 29 b 20 c 25 d 6

11、设有以下定义,值为5的枚举常量是( )。

enum week{sun,mon=4,tue,wed,thu,fri,sat} w;

a tue b sat c fri d thu

12、下面选项中正确的赋值语句是(设 char a[5],*p=a;)( )。

a p="abcd"; b a="abcd"; c *p="abcd"; d *a="abcd";

13、设有以下程序段,则值为6的表达式是( )。

struct st { int n; struct st *next;};

static struct st a[3]={5,&a[1],7,&a[2],9,0 },*p;

p=&a[0];

a p++-n b ++p-n c p-n++ d (*p)。n++

14.c语言中的文件类型只有( )。

a 索引文件和文本文件两种 b 文本文件一种

c 二进制文件一种 d ascii码文件和二进制文件两种

二 判断对错,对的划“√”,错的划“×”(5分,每小题0.5分)

1、在turbo c中,整型数据在内存中占2个字节。( )

i=20;switch(i/10){case 2:printf("a");case 1:printf("b");}的输出结果为a。( )

语句用在循环体中,可结束本层循环,continue语句用在循环体中,可结束本次循环。( )

4、函数的递归调用不过是一个函数直接或间接地调用它自身。( )

5、函数strlen("asdfg")的值是7。( )

6、通过return语句,函数可以带回一个或一个以上的返回值。( )

7、结构体类型只有一种。 ( )

*p="girl";的含义是定义字符型指针变量p,p的值是字符串"girl"。( )

9、若有定义:char *p(char a[10]);则p是函数名。( )

10、用fopen("file","r+");打开的文件"file"可以进行修改。 ( )

三 写出下列程序的运行结果(10分,每小题2分)

average (float array[10])

{ int i;

float aver,sum=array[0];

for (i=1;i10;i++)

sum=sum+array[i];

aver=sum/10;

return(aver);

}

main( )

{ float score[10]={89,67.5,78,91,56,82.5,65,70,79,88},aver;

int i;

aver=average (score);

printf (“average score is %5.2f”,aver);

}

( )

{ char a[5]={‘a’,‘b’,‘c’,‘d’,‘e’},*p=a,**pa;

for(p=0;pa+5;p++) p=""

printf(“%2c”,*p);

printf(“”);

printf(“%2c”,**(pa=&p));

}

( )

{ int a,b,s=0;

for(a=1,b=1;a=100;a++)

{ if(b=20) break;

if(b%3==1)

{b+=3; continue; }

b-=5;

}

printf(“a=%d b=%d”,a,b);

}

()

{ printf(“main( ) :%d”,fact(5));

fact(-5);

}

fact(int value)

{ int f;

if(value0)

{ printf(“arg error");

return(-1);

}

else if(value==1||value==0) f=1;

else f=value*fact(value-1)+1;

printf(“this called value=%d”,f);

return f;

}

( )

{ int a=012,b=0x12,k=12;

char c=‘102’,d=‘’;

printf(“a=%d b=%d k=%d”,a,b,k);

printf(“c=%c,d=%c%o”,c,d,a);

a=‘a’; c=49;

printf(“a=%d c=%c”,a,c);

}

四 阅读下列程序,在 处填入适当内容,使程序完整(8分,每个空1分)

1、有一个3*4矩阵,求其中的最大元素。

max_value( (1) )

{ int i,j,max;

max=array[0][0];

for(i=0;i3;i++)

for(j=0;j4;j++)

if(array[i][j]max)

max=array[i][j];

(2) ;

}

main( )

{ int a[3][4], i,j;

for(i=0;i3;i++)

for(j=0;j4;j++)

(3) ;

printf(“max value is %d”,max_value(a));

}

2、输入x、y两个整数,按先大后小的顺序输出x、y。

#include “stdio.h”

main( )

{ int x,y, *px,*py, (4) ;

scanf(“%d%d”,&x,&y);

(5) ; (6) ;

if(xy) p=""

{ p=px; px=py; py=p; }

printf(“x=%d,y=%d”,x,y);

printf(“max=%d,min=%d”,*px,*py);

}

3、用选择排序法对任意10个整数按照由小到大排序。

main()

{ int a[11],i,j,k,t;

printf("please input 10 numbers:");

for(i=1;i11;i++) scanf("%d",&a[i]);

printf("");

for(i=1;i=9;i++)

{ (7) ;

for(j=i+1; (8) ;j++)

if(a[j]a[k]) k=j;

if(k!=i)

{ t=a[k]; a[k]=a[i]; a[i]=t;}

}

printf("the sorted numbers:");

for(i=1;i11;i++) printf("%d ",a[i]);

}

答案

1、 b 2. c 3. b 4. b 5. c

6、 a 7. b 8. a 9. a 10. c

11、 a 12. a 13. b 14. d

二 判断对错,对的划“√”,错的划“×”(5分,每小题0.5分)

1、× 2.× 3.√ 4.√ 5.×

6、× 7.× 8.× 9.√ 10.√

三 写出下列程序的运行结果(10分,每小题2分)

1、 2. 3.

4、 5.

四 阅读下列程序,在 处填入适当内容,使程序完整(8分,每个空1分)

1、(1)int array[3][4](int array[][4]) (2)return(max) (3)scanf(“%d”,&a[i][j])

2、(4)*p (5)px=&x(py=&y) (6)py=&y(px=&x)

3、(7) (8)

2003c语言试题3

一 选择题(24分,每小题2分)

1、已知函数fread的调用形式为fread(buffer,size,count,fp),其中buffer代表的是( )。

a 存放读入数据项的存储区 b 存放读入数据的地址或指向此地址的指针

c 一个指向所读文件的文件指针 d 一个整形变量,代表要读入的数据项总数

2、以下程序的输出结果为( )。

main( )

{ int i=010,j=10;

printf("%d,%d",i++,j--);

}

a 11,9 b 9,10 c 8,10 d 9,9

3、设a为int型变量,执行下列赋值语句后,a的取值分别是( )。a=125.534;a=20.0/3;a=(int)125.521%4;a=52;

a 125,6,31,1 b 125,6,1,20 c 125,6.666666,31,20 d 125.534,6.666666,2,20

4、设i和k都是int类型,则for循环语句( )。

for(i=0,k=-1;k=1;i++,k++) printf("****");

a 循环结束的条件不合法 b 循环体一次也不执行 c 循环体只执行一次 d 是无限循环

5、以下程序的输出结果为( )。

main( )

{ char c;

int i;

for(i=65;i68;i++)

{ c=i+32;

switch(c)

{ case a:case b:case c:printf("%c,",c);break; default:printf("end");}

}

}

a a,b,c,end b a,a,a,end c a,a,a, d a,b,c,

6、函数调用语句:fseek(fp,-10l,2);的含义是( )。

a 将文件位置指针从文件末尾处向文件头的方向移动10个字节

b 将文件位置指针从当前位置向文件头的方向移动10个字节

c 将文件位置指针从当前位置向文件末尾方向移动10个字节

d 将文件位置指针移到距离文件头10个字节处

7、以下程序的输出结果为( )。

main( )

{ char s1[40]="country",s2[20]="side";

int i=0,j=0;

while(s1[i]!=\0) i++;

while(s2[j]!=\0) s1[i++]=s2[j++];

s1[i]=0;

printf("%s",s1);

}

a side b country c sidetry d countryside

8、下列说法不正确的是( )。

a 主函数main中定义的变量在整个文件或程序中有效

b 不同函数中,可以使用相同名字的变量

c 形式参数是局部变量

d 在一个函数内部,可以在复合语句中定义变量,这些变量只在本复合语句中有效

9、在下列程序段中,枚举变量 c1的。值是( )。

enum color { red,yellow,blue=4,green,white}c1; c1=yellow; c1=white;

a 1 b 3 c 5 d 6

10、设有说明 int (*ptr)();其中标识符ptr是( )。

a 是一个指向整形变量的指针 b 是一个指针,它指向一个函数值是int的函数

c 是一个函数名 d定义不合法

11、定义由n个指向整形数据的指针组成的数组p,其正确的方式为( )。

a int p; b int (*p)[n]; c int *p[n]; d int (*p)( );

12、具有相同类型的指针类型变量p与数组a,不能进行的操作是( )。

a p=a; b *p=a[0]; c p=&a[0]; d p=&a

二 判断对错,对的划“√”,错的划“×”(20分,每小题2分)

1、参加位运算的数据可以是任何类型的数据。( )

2、若有定义和语句:int a;char c;float f;scanf("%d,%c,%f",&a,&c,&f);若通过键盘输入:10,a,12.5,则a=10,c=‘a’,f=12.5。( )

3.c语言把文件看作是一个字符(字节)的序列。( )

4、若有宏定义:#define s(a,b) t=a;a=b;b=t由于变量t没定义,所以此宏定义是错误的。( )

5、在turbo c中,下面的定义和语句是合法的:file *fp;fp=fopen("","r");( )

6、若有定义:char s[ ]="china";则turbo c系统为数组s开辟6个字节的内存单元。( )

7、若有定义和语句:int a[3][3]={{3,5},{8,9},{12,35}},i,sum=0;for(i=0;i3;i++) sum+=a[i][2-i];则sum=21。( )

8、若有定义和语句:struct student { int num; char name[10]; float score;} s[5]={{1,"lili",98.5},{9,"xiaohua",66}},*p=s;printf("%d",*p++);输出结果是1。( )

9、在程序中定义了一个结构体类型后,可以多次用它来定义具有该类型的变量。( )

10、在turbo c中,此定义和语句是合法的:enum aa{ a=5,b,c}bb;bb=(enum aa)5;( )

三 写出下列程序的运行结果(36分,每小题6分)

( )

{ int i=29,j=6,k=2,s;

s=i+i/j%k-9;

printf(“s=%d”,s);

}

( )

{ int x=31,y=2,s=0;

do

{ s-=x*y;

x+=2;

y-=3;} while( x%3==0);

printf(“x=%d y=%d s=%d”,x,y,s);

}

( )

{ int a[6]={10,20,30,40,50,60},i;

invert(a,0,5);

for(i=0;i6;i++) printf(“%d,”,a[i]);

printf(“”);

}

invert(int s[ ],int i,int j)

{ int t;

if(ij) p=""

{ invert(s,i+1j-1);

t=s[i];s[i]=s[j];s[j]=t;

}

}

4、#include

main()

{ char str[ ]=“the c program”,c;

int i;

for(i=2;(c=str[i])!=‘\0’;i++)

{ switch(c)

{ case ‘g’: ++i; break;

case ‘o’: continue;

default: printf(“%c”,c); continue;

}

printf(“*”);

}

printf(“”);

}

w

{ char low;

char high;

};

union u

{ struct w byte;

short word;

}uw;

main( )

{ int result;

=0x1234;

printf(“word value:%04x”,);

printf(“high byte:%02x”,);

printf(“low byte:%02x”,);

=0x74;

printf(“word value:%04x”,);

result=+0x2a34;

printf(“the result:%04x”,result);

}

()

{ char *s2=“i love china!”,**s1=&s2;

char *s3,c,*s4=“w”;

s3=&c

*s3=‘h’;

s2=s2+2;

printf(“%s %c %s %c”,s2,*s3,s4,**s1);

}

四 阅读下列程序,在 处填入适当内容,使程序完整(20分,每个空2分)

1、 百马百担问题:有100匹马,驮100担货,大马驮3担,中马驮2担,两匹小马驮1担,问大、中、小马各多少匹?

main( )

{ int hb,hm,hl,n=0;

for(hb=0;hb=100;hb+= (1) )

for(hm=0;hm=100-hb;hm+= (2) )

{ hl=100-hb- (3) ;

if(hb/3+hm/2+2* (3) ==100)

{ n++;

printf("hb=%d,hm=%d,hl=%d",hb/3,hm/2,2*hl);

}

}

printf("n=%d",n);

}

2、用“起泡法”对输入的10个字符排序后按从小到大的次序输出。

#define n 10

char str[n];

main()

{ int i,flag;

for(flag=1;flag==1;)

{ scanf("%s",str);

flag=0;

printf("");

}

sort(___(4)___);

for(i=0;in;i++) p=""

printf("%c",str[i]);

printf("");

}

sort(char str[n])

{ int i,j;

char t;

for(j=1;jn;j++) p=""

for(i=0;(in-j)&&(str[i]!=\0);i++) p=""

if(str[i]str[i+1])

{ t=str[i];

____(5)____;

____(6)____;

}

}

3、以下程序是一个函数,功能是求二阶矩阵(m行n列矩阵)的所有靠外侧的各元素值之和。(本程序中二阶矩阵用一维数组来表示。)

例如,矩阵为:

3 0 0 3

2 5 7 3

1 0 4 2

则所有靠外侧的各元素值之和为3+0+0+3+2+3+1+0+4+2=18。

add(int m,int n,int arr[])

{ int i,j,sum=0;

for(i=0;im;i=i+m-1) p=""

for(j=0;jn;j++) p=""

sum=sum+ (7) ;

for(j=0;jn;j=j+n-1) p=""

for(i=1; (8) ;i++)

sum=sum+arr[i*n+j];

return(sum);

}

4、用指针作函数参数,编程序求一维数组中的最大和最小的元素值。

#define n 10

main()

{ void maxmin(int arr[],int *pt1,int *pt2,int n);

int array[n]={10,7,19,29,4,0,7,35,-16,21},*p1,*p2,a,b;

p1=&a p2=&b

maxmin(array,p1,p2,n);

printf("max=%d,min=%d",a,b);

}

void maxmin(int arr[],int *pt1,int *pt2,int n)

{ int i;

*pt1=*pt2=arr[0];

for(i=1;in;i++) p=""

{ if(arr[i]*pt1) (9) ;

if(arr[i]*pt2) (10) ;

}

}

描写c语言的if语句心得体会和方法二

c语言是一门高级程序设计语言,使用广泛,表达能力强,目标代码运行效率高,可移植性好,既具有高级语言的优点,又具有低级语言的许多特点,既可以用来编写系统软件,又可以用来编写应用软件。因此《c语言程序设计》课程在教学中占有重要地位。

《c语言程序设计》是对口升学计算机专业的一门核心专业基础课程,该课程是一门实践性与应用性较强的课程,目的是培养学生算法设计的基本思想和程序设计的基本技能。课程的内容主要涉及c语言的基本概念、基本语法以及c语言程序设计的基本方法,在教学中既要重视严谨的系统理论教学,又要重视实践性环节和案例的讨论与分析,为以后有关课程的学习和从事软件开发奠定基础。以下是本人在《c语言程序设计》课程教学过程中的一些经验和体会,与大家共勉。

教师首先要提高自身的政治素质和业务水平,及时了解最新的科技成果并掌握c语言应用技术的发展方向,要不断拓宽知识面,具备一定的知识高度,同时不断研究与改进教学方法,理论联系实际,提高自身的教学水平。

高职教育是针对岗位一线培养应用型、技能型人才的,而目前高职教育的c语言教材普遍存在的问题是结合岗位的针对性不强,技能训练的实践性不够。教材是提高教学质量的基础和前提,是学生系统学习知识的依据,一本好的教材应能培养学生的自学能力和独立思考能力,使学生能够依据教材理解课堂教学内容,深入了解本学科各个领域的知识。在选择教材方面应注重以下几个方面:(1)充分考虑高职高专教学的特色,理论知识要够用,注重理论联系实际,突出实用性。(2)语言表达要通俗易懂,在内容编排上尽量符合初学者的要求。(3)注意点与面的结合,注重基础与新技术的结合,使教材不仅是师生教与学的媒介,还是能够培养学生编程能力的工具。(4)在选择好的教材的同时,教师应积极编写符合实际教学需要的高质量的教材。

明确c语言课程的教学目标,培养学生模块化程序设计的逻辑思维能力,掌握程序设计的基本语法规则和程序调试方法,具备初步的分析问题与解决问题的能力。主要的教学目标包括:掌握c语言语法,能够熟练运用基本程序结构解决简单问题,理解模块化程序设计原则并能针对复杂问题进行合理分解,掌握基本算法分析与设计知识。

1.作为计算机专业的基础课,目的是使学生掌握程序设计的基本方法并逐步形成正确的程序设计思想,能够熟练地使用c语言进行程序设计,具备调试程序的能力,为

后继课程及其他程序设计课程的学习和应用打下基础。学生要在理解c语言的基础上更加专注于理解《算法》或者《数据结构》等课程,而不至于被语言本身的复杂语法现象干扰,要强调c语言的实用性。另外,在掌握c语言的基础上,比较容易学习其他主流编程语言,学生通过对c语言的学习,可以获得针对基本程序结构的程序编写与程序调试知识。

2.学生对c语言的熟练掌握可以在一定程度上降低后续计算机硬件技术基础课程的学习难度。计算机硬件技术基础课程中有很大一部分内容是对汇编语言的学习,同样作为面向机器模型的程序设计语言,c语言仅仅是抽象程度更高一些,其程序结构与汇编语言具有一定的相似性,c语言的编程经验对学生学习汇编语言会有很大的帮助。

3.对于非计算机专业理工类学生而言,该课程有比较强的工业基础应用前景,c语言为用计算机解决实际问题提供了方法,是后续理论与实践教学的基础和重要工具,同时也是计算机二级考试所统一要求的课程之一。教学内容的改革应本着突出基础理论知识的应用和实践能力培养的原则,以应用为目的,以“必需、够用”为度,加强针对性和实用性。

高职高专c语言课程理论性强,概念性强,抽象而且复杂,在教学过程中要注意的问题主要有:培养学生对c语言的兴趣;教给学生正确的学习方法;加强实践教学环节;有效地组织课程设计;培养学生分析和解决实际问题的能力。教学过程是教师和学生的双边活动,只有既注重教,又注重学,才能真正做到教为学服务。教师所要做的就是传道、授业、解惑,开阔学生的思路,激发学生学习的积极性和主动性,激发反思,调动潜能,引导学生讨论,帮助学生解决遇到的问题,寓教于学。只有把握好教与学的关系,才能优化整个教学过程。

1.将案例带到教学中来。c语言是应用性很强的一门课程,既有理论,又有实践,既讲方法,又讲动手能力。采用案例教学法可以改变“满堂灌”的做法,将学生的眼、手、脑全部调动起来,培养学生的学习兴趣。本人在上课过程中,将课程内容分为若干个主题,以程序设计作为贯穿各主题的主线,每个主题的教学过程由“要点讲解”、“自学/上机实践”和“疑难解答”三个阶段组成。通过案例分析,重点讲解程序设计的思想和方法,辅以语言知识的介绍;然后通过上机练习,包括基本训练(自测作业和主题作业)与综合训练(大型作业),教师针对学生暴露出的问题答疑解惑,结合案例教学,努力将c语言作为解决实际问题的工具,强化学生的编程能力,在分析程序与程序设计的过程中使学生逐步熟悉语法,应用语句,提高学生分析问题、解决问题的能力,由浅入深、由易到难、循序渐进地使学生在实践中掌握知识,培养程序设计能力,逐步理解和掌握程序设计的思想和方法。最终在课堂上教师扮演“和方法,运主导”角色,而学生真正地成为“主体”。

2.切合实际的分组教学。要真正掌握程序设计的思想用语言解决实际问题,综合训练势在必行。整个过程以学生独立完成为主,教师提供相应的理论辅导。经过这样的模拟实际软件开发的演练,不但提高了学生的学习兴趣,培养了学生问题求解和编程能力,还有利于培养他们探索与创新的能力,更加有利于激发学生学习的积极性。

3.分层次教学。即标准化教学与个性化教学相结合,结合不同专业、不同班级学生的具体情况,制定各有特色的教案、讲稿和教学课件。既发挥群体智力优势,又充分发挥教师个体的教学风格特长,有利于提高教学水平。

4.加强实验课与理论课的联系。在理论课上将上机实验任务题目进行讲解,也可以将案例算法作为实验内容。实验课程可以分为两部分,实验任务问题作为理论课的内容在课堂上讨论、讲述,确定实现算法。对于同样的题目,可以确定若干不同的算法,比较其优劣,分析其原因。上机实验的任务是完成已确定算法的编码实现和运行。这种做法相当于在教师带领下,对实验内容做了集体预习,贯彻了“算法重于语法,语法重于编码”的课程指导原则,综合运用学过的知识,加强实践教学。学生只有通过大量的练习,才能真正掌握语言知识,培养程序设计能力,逐步理解和掌握程序设计的思想和方法,学会利用计算机解决实际问题。

5.充分利用多元化、现代化的教学手段。在教学过程中应多方位应用现代教育技术手段,尤其是多媒体辅助教学手段与网络化辅助教学手段。在课堂教学中采用多媒体教学课件,加强直观教学,可提高学生的空间想象力。教师应从最简单的c语言程序的调试入手,详细演示c语言程序的调试过程与调试细节,同时让学生参与进来,实现教师与学生、学生与学生的双向交流和互动,提高学生的学习兴趣,加深学生的理解与记忆。使其检验自己本阶段的学习成果,加强对所学知识的吸收和消化。

描写c语言的if语句心得体会和方法三

1)。 关于c语言的变量,以下叙述中错误的是( )

a.所谓变量是指在程序运行过程中其值可以被改变的量

b.变量所占的存储单元地址可以随时改变

c.程序中用到的所有变量都必须先定义后才能使用

d.由三条下划线构成的符号名是合法的变量名

正确答案:b

答案解析:变量是指在程序运行过程中其值可以改变的值,一个变量实质上是代表了内存中的某个存储单元。在程序中对某个变量的操作实际上就是对这个存储单元的操作,程序运行期间,这个分配的存储单元不会改变,但是其值可以变化。变量命名要符合标识符的规定,其中下划线是标识符的组成字符。程序中所有变量都必须先定义后使用。

2)。 当变量c的值不为2、4、6时,值也为″真″的表达式是( )

a.(c==2)||(c==4)||(c==6)

b.(c=2 && c=6)&&!(c%2)

c.(c=2 &&c=6)&&(c%2!=1)

d.(c=2 && c=6) || (c!=3)|| (c!=5)

正确答案:d

答案解析:逻辑或运算中,只要有一项为真,表达式的值就为真,故选项d中c的值不为2、4、6时,那么表达式(c=2&& c=6)以及(c!=3)、(c!=5)必有一个成立,表达式的值也为真。

3)。 在c语言中,函数返回值的类型最终取决于

a.函数定义时在函数首部所说明的函数类型

语句中表达式值的类型

c.调用函数时主调函数所传递的实参类型

d.函数定义时形参的类型

正确答案:a

答案解析:在c语言中,应当在定义函数时指定函数值的类型,凡不加类型说明的函数,一律按整型处理。在定义函数时,对函数值说明的类型一般应该和return语句中的表达式类型一致。如果函数值的类型和return语句中的表达式类型不一致,则以函数类型为主,即函数类型决定返回值的类型。

4)。 以下叙述中正确的是( )

a.在c语言中,预处理命令行都以″#″开头

b.预处理命令行必须位于c源程序的起始位置

c.#include 必须放在c程序的开头

d.c语言的预处理不能实现宏定义和条件编译的功能

正确答案:a

答案解析:在c语言中,凡是以″#″号开头的行,都称为″编译预处理″命令行。预处理命令可以放在程序中的任何位置,其有效范围是从定义开始到文件结束。预处理命令有宏定义、文件包含和条件编译三类。#include 命令行表示程序中要引用c标准函数库中的标准输入输出函数。

5)。 下列叙述中,不属于测试的特征的是

a.测试的挑剔性

b.完全测试的不可能性

c.测试的可靠性

d.测试的经济性

正确答案:c

答案解析:软件测试的目标是在精心控制的环境下执行程序,以发现程序中的错误,给出程序可靠性的鉴定。它有3个方面的重要特征,即测试的挑剔性、完全测试的不可能性及测试的经济性。其中,没有测试的可靠性这一说法。

6)。 以下选项中不属于c语言标识符的是( )

a.用户标识符

b.关键字

c.常量

d.预定义标识符

正确答案:c

答案解析:c语言的标识符可分为以下3类:①关键字。c语言预先规定了一批标识符,它们在程序中都代表着固定的含义,不能另作他用。这些字符称为关键字。例如,int、double、if、else、while、for等。②预定义标识符。即预先定义并具有特定含义的标识符。③用户标识符。由用户根据需要定义的标识符称为用户标识符,又称自定义标识符,一般用来给变量、函数、数组等命名。

7)。 以下关于字符串的叙述中正确的是( )

a.两个字符串中的字符个数相同时才能进行字符串大小的比较

b.可以用关系运算符对字符串的大小进行比较

c.空串比空格打头的字符串小

d.c语言中有字符串类型的常量和变量

正确答案:c

答案解析:c语言本身并没有设置一种类型来定义字符串变量,却允许使用″字符串常量″。字符串常量是由双引号括起来的一串字符。任意两个字符串的(白话文★)大小比较要调用字符串比较函数strcmp(s1,s2 )来进行,其比较的方法是依次对s1和s2中对应位置上的字符两两进行比较,当出现第一对不相同的字符时,即由这两个字符决定所在串的大小(比较字符大小的依据是其ascⅱ码值)。

8)。 下列叙述中正确的是( )。

a.调用printf( )函数时,必须要有输出项

b.使用put )函数时,必须在之前包含头文件stdio.h

c.在c语言中,整数可以以二进制、八进制或十六进制的形式输出

d.调节get )函数读入字符时,可以从键盘上输入字符所对应的ascii码

正确答案:b

答案解析:选项a,若printf函数没有输出项,且格式字符串中不含格式信息,则输出的是格式字符串本身,若格式字符串含有格式信息,运行时则出现错误提示;选项c,在c语言中,整数可以十进制、八进制或十六进制的形式输出;选项d,getchar函数是从标准输入设备读取一个字符。

9)。 以下结构体类型说明和变量定义中正确的是( )

fstruct { int n; char c; } rec; rec t1,t2;

rec ; { int n; char c; }; rec t1,t2;

fstruct rec; { int n=0; char c=′a′; } t1,t2;

{ int n; char c; } rec; rec t1,t2;

正确答案:a

答案解析:定义结构体类型的一般形式为:struct 结构体名 {成员列表};struct 结构体名后不能加″;″号,所以选项b、c)错误,选项d中定义无名称的结构体类型同时定义结构体变量形式应为struct t1,t2;选项a为用户自定义类型,其为正确的定义形式。

10)。 若实体a和b是一对多的联系,实体b和c是一对一的联系,则实体a和c的联系是( )

a.一对一

b.一对多

c.多对一

d.多对多

正确答案:b

答案解析:由于b和c有一一对应的联系,而a和b只间有一对多的联系,则通过关系之间的传递,则a和c之间也是一对多的联系。

11)。 待排序的关键码序列为(15,20,9,30,67.65,45,90),要按关键码值递增的顺序排序,采取简单选择排序法,第一趟排序后关键码15被放到第( )个位置。

a.2

b.3

c.4

d.5

正确答案:b

答案解析:选择排序的基本思想是扫描整个线性表,从中选出最小的元素,将它交换到表的最前面,然后对剩下的子表采用同样的方法,直到子表为空。所以第一趟排序后,将选出最小的元素9放在第一个位置,元素15则被交换放在第三个位置。

您可能关注的文档