手機(jī)閱讀

c語言的if語句心得體會(huì)和方法 c語言簡單的if語句(3篇)

格式:DOC 上傳日期:2023-01-06 20:07:10 頁碼:7
c語言的if語句心得體會(huì)和方法 c語言簡單的if語句(3篇)
2023-01-06 20:07:10    小編:ZTFB

在平日里,心中難免會(huì)有一些新的想法,往往會(huì)寫一篇心得體會(huì),從而不斷地豐富我們的思想。好的心得體會(huì)對于我們的幫助很大,所以我們要好好寫一篇心得體會(huì)下面我?guī)痛蠹艺覍げ⒄砹艘恍﹥?yōu)秀的心得體會(huì)范文,我們一起來了解一下吧。

描寫c語言的if語句心得體會(huì)和方法一

1.c語言源程序的基本單位是( )。

a 過程 b 函數(shù) c 子程序 d 標(biāo)識符

2、下列程序的輸出結(jié)果是( )。

main( )

{ int a=7,b=5;

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

}

a 5 b 1 c 0 d不確定值

3、假設(shè)變量a,b均為整型,表達(dá)式(a=5,b=2,ab?a++:b++,a+b)的值是( )。

a 7 b 8 c 9 d 2

4、設(shè)a為int型變量,執(zhí)行下列賦值語句后,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、設(shè)有如下程序段,下面描述中正確的是 ( )。

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

a 循環(huán)執(zhí)行一次 b循環(huán)是無限循環(huán) c循環(huán)體語句一次也不執(zhí)行 d循環(huán)體語句執(zhí)行一次

6、以下程序的輸出結(jié)果為( )。

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函數(shù)的定義可以嵌套,但函數(shù)的調(diào)用不可以嵌套

b函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套

c函數(shù)的定義和函數(shù)的調(diào)用都不可以嵌套

d函數(shù)的定義和函數(shù)的調(diào)用都可以嵌套

8、以下函數(shù)調(diào)用語句中含有( )個(gè)實(shí)參。

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

a 2 b 3 c 5 d 語法錯(cuò)誤

9、以下程序的輸出結(jié)果為( )。

#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中,系統(tǒng)為變量w分配( )字節(jié)的空間。

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、設(shè)有以下定義,值為5的枚舉常量是( )。

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

a tue b sat c fri d thu

12、下面選項(xiàng)中正確的賦值語句是(設(shè) char a[5],*p=a;)( )。

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

13、設(shè)有以下程序段,則值為6的表達(dá)式是( )。

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 二進(jìn)制文件一種 d ascii碼文件和二進(jìn)制文件兩種

二 判斷對錯(cuò),對的劃“√”,錯(cuò)的劃“×”(5分,每小題0.5分)

1、在turbo c中,整型數(shù)據(jù)在內(nèi)存中占2個(gè)字節(jié)。( )

i=20;switch(i/10){case 2:printf("a");case 1:printf("b");}的輸出結(jié)果為a。( )

語句用在循環(huán)體中,可結(jié)束本層循環(huán),continue語句用在循環(huán)體中,可結(jié)束本次循環(huán)。( )

4、函數(shù)的遞歸調(diào)用不過是一個(gè)函數(shù)直接或間接地調(diào)用它自身。( )

5、函數(shù)strlen("asdfg")的值是7。( )

6、通過return語句,函數(shù)可以帶回一個(gè)或一個(gè)以上的返回值。( )

7、結(jié)構(gòu)體類型只有一種。 ( )

*p="girl";的含義是定義字符型指針變量p,p的值是字符串"girl"。( )

9、若有定義:char *p(char a[10]);則p是函數(shù)名。( )

10、用fopen("file","r+");打開的文件"file"可以進(jìn)行修改。 ( )

三 寫出下列程序的運(yùn)行結(jié)果(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(chǎn)’,‘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(chǎn)’; c=49;

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

}

四 閱讀下列程序,在 處填入適當(dāng)內(nèi)容,使程序完整(8分,每個(gè)空1分)

1、有一個(gè)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兩個(gè)整數(shù),按先大后小的順序輸出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個(gè)整數(shù)按照由小到大排序。

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

二 判斷對錯(cuò),對的劃“√”,錯(cuò)的劃“×”(5分,每小題0.5分)

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

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

三 寫出下列程序的運(yùn)行結(jié)果(10分,每小題2分)

1、 2. 3.

4、 5.

四 閱讀下列程序,在 處填入適當(dāng)內(nèi)容,使程序完整(8分,每個(gè)空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、已知函數(shù)fread的調(diào)用形式為fread(buffer,size,count,fp),其中buffer代表的是( )。

a 存放讀入數(shù)據(jù)項(xiàng)的存儲(chǔ)區(qū) b 存放讀入數(shù)據(jù)的地址或指向此地址的指針

c 一個(gè)指向所讀文件的文件指針 d 一個(gè)整形變量,代表要讀入的數(shù)據(jù)項(xiàng)總數(shù)

2、以下程序的輸出結(jié)果為( )。

main( )

{ int i=010,j=10;

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

}

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

3、設(shè)a為int型變量,執(zhí)行下列賦值語句后,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、設(shè)i和k都是int類型,則for循環(huán)語句( )。

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

a 循環(huán)結(jié)束的條件不合法 b 循環(huán)體一次也不執(zhí)行 c 循環(huán)體只執(zhí)行一次 d 是無限循環(huán)

5、以下程序的輸出結(jié)果為( )。

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、函數(shù)調(diào)用語句:fseek(fp,-10l,2);的含義是( )。

a 將文件位置指針從文件末尾處向文件頭的方向移動(dòng)10個(gè)字節(jié)

b 將文件位置指針從當(dāng)前位置向文件頭的方向移動(dòng)10個(gè)字節(jié)

c 將文件位置指針從當(dāng)前位置向文件末尾方向移動(dòng)10個(gè)字節(jié)

d 將文件位置指針移到距離文件頭10個(gè)字節(jié)處

7、以下程序的輸出結(jié)果為( )。

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 主函數(shù)main中定義的變量在整個(gè)文件或程序中有效

b 不同函數(shù)中,可以使用相同名字的變量

c 形式參數(shù)是局部變量

d 在一個(gè)函數(shù)內(nèi)部,可以在復(fù)合語句中定義變量,這些變量只在本復(fù)合語句中有效

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

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

a 1 b 3 c 5 d 6

10、設(shè)有說明 int (*ptr)();其中標(biāo)識符ptr是( )。

a 是一個(gè)指向整形變量的指針 b 是一個(gè)指針,它指向一個(gè)函數(shù)值是int的函數(shù)

c 是一個(gè)函數(shù)名 d定義不合法

11、定義由n個(gè)指向整形數(shù)據(jù)的指針組成的數(shù)組p,其正確的方式為( )。

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

12、具有相同類型的指針類型變量p與數(shù)組a,不能進(jìn)行的操作是( )。

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

二 判斷對錯(cuò),對的劃“√”,錯(cuò)的劃“×”(20分,每小題2分)

1、參加位運(yùn)算的數(shù)據(jù)可以是任何類型的數(shù)據(jù)。( )

2、若有定義和語句:int a;char c;float f;scanf("%d,%c,%f",&a,&c,&f);若通過鍵盤輸入:10,a,12.5,則a=10,c=‘a(chǎn)’,f=12.5。( )

3.c語言把文件看作是一個(gè)字符(字節(jié))的序列。( )

4、若有宏定義:#define s(a,b) t=a;a=b;b=t由于變量t沒定義,所以此宏定義是錯(cuò)誤的。( )

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

6、若有定義:char s[ ]="china";則turbo c系統(tǒng)為數(shù)組s開辟6個(gè)字節(jié)的內(nèi)存單元。( )

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++);輸出結(jié)果是1。( )

9、在程序中定義了一個(gè)結(jié)構(gòu)體類型后,可以多次用它來定義具有該類型的變量。( )

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

三 寫出下列程序的運(yùn)行結(jié)果(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(“l(fā)ow 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);

}

四 閱讀下列程序,在 處填入適當(dāng)內(nèi)容,使程序完整(20分,每個(gè)空2分)

1、 百馬百擔(dān)問題:有100匹馬,馱100擔(dān)貨,大馬馱3擔(dān),中馬馱2擔(dān),兩匹小馬馱1擔(dān),問大、中、小馬各多少匹?

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個(gè)字符排序后按從小到大的次序輸出。

#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、以下程序是一個(gè)函數(shù),功能是求二階矩陣(m行n列矩陣)的所有靠外側(cè)的各元素值之和。(本程序中二階矩陣用一維數(shù)組來表示。)

例如,矩陣為:

3 0 0 3

2 5 7 3

1 0 4 2

則所有靠外側(cè)的各元素值之和為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、用指針作函數(shù)參數(shù),編程序求一維數(shù)組中的最大和最小的元素值。

#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語句心得體會(huì)和方法二

c語言是一門高級程序設(shè)計(jì)語言,使用廣泛,表達(dá)能力強(qiáng),目標(biāo)代碼運(yùn)行效率高,可移植性好,既具有高級語言的優(yōu)點(diǎn),又具有低級語言的許多特點(diǎn),既可以用來編寫系統(tǒng)軟件,又可以用來編寫應(yīng)用軟件。因此《c語言程序設(shè)計(jì)》課程在教學(xué)中占有重要地位。

《c語言程序設(shè)計(jì)》是對口升學(xué)計(jì)算機(jī)專業(yè)的一門核心專業(yè)基礎(chǔ)課程,該課程是一門實(shí)踐性與應(yīng)用性較強(qiáng)的課程,目的是培養(yǎng)學(xué)生算法設(shè)計(jì)的基本思想和程序設(shè)計(jì)的基本技能。課程的內(nèi)容主要涉及c語言的基本概念、基本語法以及c語言程序設(shè)計(jì)的基本方法,在教學(xué)中既要重視嚴(yán)謹(jǐn)?shù)南到y(tǒng)理論教學(xué),又要重視實(shí)踐性環(huán)節(jié)和案例的討論與分析,為以后有關(guān)課程的學(xué)習(xí)和從事軟件開發(fā)奠定基礎(chǔ)。以下是本人在《c語言程序設(shè)計(jì)》課程教學(xué)過程中的一些經(jīng)驗(yàn)和體會(huì),與大家共勉。

教師首先要提高自身的政治素質(zhì)和業(yè)務(wù)水平,及時(shí)了解最新的科技成果并掌握c語言應(yīng)用技術(shù)的發(fā)展方向,要不斷拓寬知識面,具備一定的知識高度,同時(shí)不斷研究與改進(jìn)教學(xué)方法,理論聯(lián)系實(shí)際,提高自身的教學(xué)水平。

高職教育是針對崗位一線培養(yǎng)應(yīng)用型、技能型人才的,而目前高職教育的c語言教材普遍存在的問題是結(jié)合崗位的針對性不強(qiáng),技能訓(xùn)練的實(shí)踐性不夠。教材是提高教學(xué)質(zhì)量的基礎(chǔ)和前提,是學(xué)生系統(tǒng)學(xué)習(xí)知識的依據(jù),一本好的教材應(yīng)能培養(yǎng)學(xué)生的自學(xué)能力和獨(dú)立思考能力,使學(xué)生能夠依據(jù)教材理解課堂教學(xué)內(nèi)容,深入了解本學(xué)科各個(gè)領(lǐng)域的知識。在選擇教材方面應(yīng)注重以下幾個(gè)方面:(1)充分考慮高職高專教學(xué)的特色,理論知識要夠用,注重理論聯(lián)系實(shí)際,突出實(shí)用性。(2)語言表達(dá)要通俗易懂,在內(nèi)容編排上盡量符合初學(xué)者的要求。(3)注意點(diǎn)與面的結(jié)合,注重基礎(chǔ)與新技術(shù)的結(jié)合,使教材不僅是師生教與學(xué)的媒介,還是能夠培養(yǎng)學(xué)生編程能力的工具。(4)在選擇好的教材的同時(shí),教師應(yīng)積極編寫符合實(shí)際教學(xué)需要的高質(zhì)量的教材。

明確c語言課程的教學(xué)目標(biāo),培養(yǎng)學(xué)生模塊化程序設(shè)計(jì)的邏輯思維能力,掌握程序設(shè)計(jì)的基本語法規(guī)則和程序調(diào)試方法,具備初步的分析問題與解決問題的能力。主要的教學(xué)目標(biāo)包括:掌握c語言語法,能夠熟練運(yùn)用基本程序結(jié)構(gòu)解決簡單問題,理解模塊化程序設(shè)計(jì)原則并能針對復(fù)雜問題進(jìn)行合理分解,掌握基本算法分析與設(shè)計(jì)知識。

1.作為計(jì)算機(jī)專業(yè)的基礎(chǔ)課,目的是使學(xué)生掌握程序設(shè)計(jì)的基本方法并逐步形成正確的程序設(shè)計(jì)思想,能夠熟練地使用c語言進(jìn)行程序設(shè)計(jì),具備調(diào)試程序的能力,為

后繼課程及其他程序設(shè)計(jì)課程的學(xué)習(xí)和應(yīng)用打下基礎(chǔ)。學(xué)生要在理解c語言的基礎(chǔ)上更加專注于理解《算法》或者《數(shù)據(jù)結(jié)構(gòu)》等課程,而不至于被語言本身的復(fù)雜語法現(xiàn)象干擾,要強(qiáng)調(diào)c語言的實(shí)用性。另外,在掌握c語言的基礎(chǔ)上,比較容易學(xué)習(xí)其他主流編程語言,學(xué)生通過對c語言的學(xué)習(xí),可以獲得針對基本程序結(jié)構(gòu)的程序編寫與程序調(diào)試知識。

2.學(xué)生對c語言的熟練掌握可以在一定程度上降低后續(xù)計(jì)算機(jī)硬件技術(shù)基礎(chǔ)課程的學(xué)習(xí)難度。計(jì)算機(jī)硬件技術(shù)基礎(chǔ)課程中有很大一部分內(nèi)容是對匯編語言的學(xué)習(xí),同樣作為面向機(jī)器模型的程序設(shè)計(jì)語言,c語言僅僅是抽象程度更高一些,其程序結(jié)構(gòu)與匯編語言具有一定的相似性,c語言的編程經(jīng)驗(yàn)對學(xué)生學(xué)習(xí)匯編語言會(huì)有很大的幫助。

3.對于非計(jì)算機(jī)專業(yè)理工類學(xué)生而言,該課程有比較強(qiáng)的工業(yè)基礎(chǔ)應(yīng)用前景,c語言為用計(jì)算機(jī)解決實(shí)際問題提供了方法,是后續(xù)理論與實(shí)踐教學(xué)的基礎(chǔ)和重要工具,同時(shí)也是計(jì)算機(jī)二級考試所統(tǒng)一要求的課程之一。教學(xué)內(nèi)容的改革應(yīng)本著突出基礎(chǔ)理論知識的應(yīng)用和實(shí)踐能力培養(yǎng)的原則,以應(yīng)用為目的,以“必需、夠用”為度,加強(qiáng)針對性和實(shí)用性。

高職高專c語言課程理論性強(qiáng),概念性強(qiáng),抽象而且復(fù)雜,在教學(xué)過程中要注意的問題主要有:培養(yǎng)學(xué)生對c語言的興趣;教給學(xué)生正確的學(xué)習(xí)方法;加強(qiáng)實(shí)踐教學(xué)環(huán)節(jié);有效地組織課程設(shè)計(jì);培養(yǎng)學(xué)生分析和解決實(shí)際問題的能力。教學(xué)過程是教師和學(xué)生的雙邊活動(dòng),只有既注重教,又注重學(xué),才能真正做到教為學(xué)服務(wù)。教師所要做的就是傳道、授業(yè)、解惑,開闊學(xué)生的思路,激發(fā)學(xué)生學(xué)習(xí)的積極性和主動(dòng)性,激發(fā)反思,調(diào)動(dòng)潛能,引導(dǎo)學(xué)生討論,幫助學(xué)生解決遇到的問題,寓教于學(xué)。只有把握好教與學(xué)的關(guān)系,才能優(yōu)化整個(gè)教學(xué)過程。

1.將案例帶到教學(xué)中來。c語言是應(yīng)用性很強(qiáng)的一門課程,既有理論,又有實(shí)踐,既講方法,又講動(dòng)手能力。采用案例教學(xué)法可以改變“滿堂灌”的做法,將學(xué)生的眼、手、腦全部調(diào)動(dòng)起來,培養(yǎng)學(xué)生的學(xué)習(xí)興趣。本人在上課過程中,將課程內(nèi)容分為若干個(gè)主題,以程序設(shè)計(jì)作為貫穿各主題的主線,每個(gè)主題的教學(xué)過程由“要點(diǎn)講解”、“自學(xué)/上機(jī)實(shí)踐”和“疑難解答”三個(gè)階段組成。通過案例分析,重點(diǎn)講解程序設(shè)計(jì)的思想和方法,輔以語言知識的介紹;然后通過上機(jī)練習(xí),包括基本訓(xùn)練(自測作業(yè)和主題作業(yè))與綜合訓(xùn)練(大型作業(yè)),教師針對學(xué)生暴露出的問題答疑解惑,結(jié)合案例教學(xué),努力將c語言作為解決實(shí)際問題的工具,強(qiáng)化學(xué)生的編程能力,在分析程序與程序設(shè)計(jì)的過程中使學(xué)生逐步熟悉語法,應(yīng)用語句,提高學(xué)生分析問題、解決問題的能力,由淺入深、由易到難、循序漸進(jìn)地使學(xué)生在實(shí)踐中掌握知識,培養(yǎng)程序設(shè)計(jì)能力,逐步理解和掌握程序設(shè)計(jì)的思想和方法。最終在課堂上教師扮演“和方法,運(yùn)主導(dǎo)”角色,而學(xué)生真正地成為“主體”。

2.切合實(shí)際的分組教學(xué)。要真正掌握程序設(shè)計(jì)的思想用語言解決實(shí)際問題,綜合訓(xùn)練勢在必行。整個(gè)過程以學(xué)生獨(dú)立完成為主,教師提供相應(yīng)的理論輔導(dǎo)。經(jīng)過這樣的模擬實(shí)際軟件開發(fā)的演練,不但提高了學(xué)生的學(xué)習(xí)興趣,培養(yǎng)了學(xué)生問題求解和編程能力,還有利于培養(yǎng)他們探索與創(chuàng)新的能力,更加有利于激發(fā)學(xué)生學(xué)習(xí)的積極性。

3.分層次教學(xué)。即標(biāo)準(zhǔn)化教學(xué)與個(gè)性化教學(xué)相結(jié)合,結(jié)合不同專業(yè)、不同班級學(xué)生的具體情況,制定各有特色的教案、講稿和教學(xué)課件。既發(fā)揮群體智力優(yōu)勢,又充分發(fā)揮教師個(gè)體的教學(xué)風(fēng)格特長,有利于提高教學(xué)水平。

4.加強(qiáng)實(shí)驗(yàn)課與理論課的聯(lián)系。在理論課上將上機(jī)實(shí)驗(yàn)任務(wù)題目進(jìn)行講解,也可以將案例算法作為實(shí)驗(yàn)內(nèi)容。實(shí)驗(yàn)課程可以分為兩部分,實(shí)驗(yàn)任務(wù)問題作為理論課的內(nèi)容在課堂上討論、講述,確定實(shí)現(xiàn)算法。對于同樣的題目,可以確定若干不同的算法,比較其優(yōu)劣,分析其原因。上機(jī)實(shí)驗(yàn)的任務(wù)是完成已確定算法的編碼實(shí)現(xiàn)和運(yùn)行。這種做法相當(dāng)于在教師帶領(lǐng)下,對實(shí)驗(yàn)內(nèi)容做了集體預(yù)習(xí),貫徹了“算法重于語法,語法重于編碼”的課程指導(dǎo)原則,綜合運(yùn)用學(xué)過的知識,加強(qiáng)實(shí)踐教學(xué)。學(xué)生只有通過大量的練習(xí),才能真正掌握語言知識,培養(yǎng)程序設(shè)計(jì)能力,逐步理解和掌握程序設(shè)計(jì)的思想和方法,學(xué)會(huì)利用計(jì)算機(jī)解決實(shí)際問題。

5.充分利用多元化、現(xiàn)代化的教學(xué)手段。在教學(xué)過程中應(yīng)多方位應(yīng)用現(xiàn)代教育技術(shù)手段,尤其是多媒體輔助教學(xué)手段與網(wǎng)絡(luò)化輔助教學(xué)手段。在課堂教學(xué)中采用多媒體教學(xué)課件,加強(qiáng)直觀教學(xué),可提高學(xué)生的空間想象力。教師應(yīng)從最簡單的c語言程序的調(diào)試入手,詳細(xì)演示c語言程序的調(diào)試過程與調(diào)試細(xì)節(jié),同時(shí)讓學(xué)生參與進(jìn)來,實(shí)現(xiàn)教師與學(xué)生、學(xué)生與學(xué)生的雙向交流和互動(dòng),提高學(xué)生的學(xué)習(xí)興趣,加深學(xué)生的理解與記憶。使其檢驗(yàn)自己本階段的學(xué)習(xí)成果,加強(qiáng)對所學(xué)知識的吸收和消化。

描寫c語言的if語句心得體會(huì)和方法三

1)。 關(guān)于c語言的變量,以下敘述中錯(cuò)誤的是( )

a.所謂變量是指在程序運(yùn)行過程中其值可以被改變的量

b.變量所占的存儲(chǔ)單元地址可以隨時(shí)改變

c.程序中用到的所有變量都必須先定義后才能使用

d.由三條下劃線構(gòu)成的符號名是合法的變量名

正確答案:b

答案解析:變量是指在程序運(yùn)行過程中其值可以改變的值,一個(gè)變量實(shí)質(zhì)上是代表了內(nèi)存中的某個(gè)存儲(chǔ)單元。在程序中對某個(gè)變量的操作實(shí)際上就是對這個(gè)存儲(chǔ)單元的操作,程序運(yùn)行期間,這個(gè)分配的存儲(chǔ)單元不會(huì)改變,但是其值可以變化。變量命名要符合標(biāo)識符的規(guī)定,其中下劃線是標(biāo)識符的組成字符。程序中所有變量都必須先定義后使用。

2)。 當(dāng)變量c的值不為2、4、6時(shí),值也為″真″的表達(dá)式是( )

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

答案解析:邏輯或運(yùn)算中,只要有一項(xiàng)為真,表達(dá)式的值就為真,故選項(xiàng)d中c的值不為2、4、6時(shí),那么表達(dá)式(c=2&& c=6)以及(c!=3)、(c!=5)必有一個(gè)成立,表達(dá)式的值也為真。

3)。 在c語言中,函數(shù)返回值的類型最終取決于

a.函數(shù)定義時(shí)在函數(shù)首部所說明的函數(shù)類型

語句中表達(dá)式值的類型

c.調(diào)用函數(shù)時(shí)主調(diào)函數(shù)所傳遞的實(shí)參類型

d.函數(shù)定義時(shí)形參的類型

正確答案:a

答案解析:在c語言中,應(yīng)當(dāng)在定義函數(shù)時(shí)指定函數(shù)值的類型,凡不加類型說明的函數(shù),一律按整型處理。在定義函數(shù)時(shí),對函數(shù)值說明的類型一般應(yīng)該和return語句中的表達(dá)式類型一致。如果函數(shù)值的類型和return語句中的表達(dá)式類型不一致,則以函數(shù)類型為主,即函數(shù)類型決定返回值的類型。

4)。 以下敘述中正確的是( )

a.在c語言中,預(yù)處理命令行都以″#″開頭

b.預(yù)處理命令行必須位于c源程序的起始位置

c.#include 必須放在c程序的開頭

d.c語言的預(yù)處理不能實(shí)現(xiàn)宏定義和條件編譯的功能

正確答案:a

答案解析:在c語言中,凡是以″#″號開頭的行,都稱為″編譯預(yù)處理″命令行。預(yù)處理命令可以放在程序中的任何位置,其有效范圍是從定義開始到文件結(jié)束。預(yù)處理命令有宏定義、文件包含和條件編譯三類。#include 命令行表示程序中要引用c標(biāo)準(zhǔn)函數(shù)庫中的標(biāo)準(zhǔn)輸入輸出函數(shù)。

5)。 下列敘述中,不屬于測試的特征的是

a.測試的挑剔性

b.完全測試的不可能性

c.測試的可靠性

d.測試的經(jīng)濟(jì)性

正確答案:c

答案解析:軟件測試的目標(biāo)是在精心控制的環(huán)境下執(zhí)行程序,以發(fā)現(xiàn)程序中的錯(cuò)誤,給出程序可靠性的鑒定。它有3個(gè)方面的重要特征,即測試的挑剔性、完全測試的不可能性及測試的經(jīng)濟(jì)性。其中,沒有測試的可靠性這一說法。

6)。 以下選項(xiàng)中不屬于c語言標(biāo)識符的是( )

a.用戶標(biāo)識符

b.關(guān)鍵字

c.常量

d.預(yù)定義標(biāo)識符

正確答案:c

答案解析:c語言的標(biāo)識符可分為以下3類:①關(guān)鍵字。c語言預(yù)先規(guī)定了一批標(biāo)識符,它們在程序中都代表著固定的含義,不能另作他用。這些字符稱為關(guān)鍵字。例如,int、double、if、else、while、for等。②預(yù)定義標(biāo)識符。即預(yù)先定義并具有特定含義的標(biāo)識符。③用戶標(biāo)識符。由用戶根據(jù)需要定義的標(biāo)識符稱為用戶標(biāo)識符,又稱自定義標(biāo)識符,一般用來給變量、函數(shù)、數(shù)組等命名。

7)。 以下關(guān)于字符串的敘述中正確的是( )

a.兩個(gè)字符串中的字符個(gè)數(shù)相同時(shí)才能進(jìn)行字符串大小的比較

b.可以用關(guān)系運(yùn)算符對字符串的大小進(jìn)行比較

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

d.c語言中有字符串類型的常量和變量

正確答案:c

答案解析:c語言本身并沒有設(shè)置一種類型來定義字符串變量,卻允許使用″字符串常量″。字符串常量是由雙引號括起來的一串字符。任意兩個(gè)字符串的(白話文★)大小比較要調(diào)用字符串比較函數(shù)strcmp(s1,s2 )來進(jìn)行,其比較的方法是依次對s1和s2中對應(yīng)位置上的字符兩兩進(jìn)行比較,當(dāng)出現(xiàn)第一對不相同的字符時(shí),即由這兩個(gè)字符決定所在串的大?。ū容^字符大小的依據(jù)是其ascⅱ碼值)。

8)。 下列敘述中正確的是( )。

a.調(diào)用printf( )函數(shù)時(shí),必須要有輸出項(xiàng)

b.使用put )函數(shù)時(shí),必須在之前包含頭文件stdio.h

c.在c語言中,整數(shù)可以以二進(jìn)制、八進(jìn)制或十六進(jìn)制的形式輸出

d.調(diào)節(jié)get )函數(shù)讀入字符時(shí),可以從鍵盤上輸入字符所對應(yīng)的ascii碼

正確答案:b

答案解析:選項(xiàng)a,若printf函數(shù)沒有輸出項(xiàng),且格式字符串中不含格式信息,則輸出的是格式字符串本身,若格式字符串含有格式信息,運(yùn)行時(shí)則出現(xiàn)錯(cuò)誤提示;選項(xiàng)c,在c語言中,整數(shù)可以十進(jìn)制、八進(jìn)制或十六進(jìn)制的形式輸出;選項(xiàng)d,getchar函數(shù)是從標(biāo)準(zhǔn)輸入設(shè)備讀取一個(gè)字符。

9)。 以下結(jié)構(gòu)體類型說明和變量定義中正確的是( )

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

答案解析:定義結(jié)構(gòu)體類型的一般形式為:struct 結(jié)構(gòu)體名 {成員列表};struct 結(jié)構(gòu)體名后不能加″;″號,所以選項(xiàng)b、c)錯(cuò)誤,選項(xiàng)d中定義無名稱的結(jié)構(gòu)體類型同時(shí)定義結(jié)構(gòu)體變量形式應(yīng)為struct t1,t2;選項(xiàng)a為用戶自定義類型,其為正確的定義形式。

10)。 若實(shí)體a和b是一對多的聯(lián)系,實(shí)體b和c是一對一的聯(lián)系,則實(shí)體a和c的聯(lián)系是( )

a.一對一

b.一對多

c.多對一

d.多對多

正確答案:b

答案解析:由于b和c有一一對應(yīng)的聯(lián)系,而a和b只間有一對多的聯(lián)系,則通過關(guān)系之間的傳遞,則a和c之間也是一對多的聯(lián)系。

11)。 待排序的關(guān)鍵碼序列為(15,20,9,30,67.65,45,90),要按關(guān)鍵碼值遞增的順序排序,采取簡單選擇排序法,第一趟排序后關(guān)鍵碼15被放到第( )個(gè)位置。

a.2

b.3

c.4

d.5

正確答案:b

答案解析:選擇排序的基本思想是掃描整個(gè)線性表,從中選出最小的元素,將它交換到表的最前面,然后對剩下的子表采用同樣的方法,直到子表為空。所以第一趟排序后,將選出最小的元素9放在第一個(gè)位置,元素15則被交換放在第三個(gè)位置。

您可能關(guān)注的文檔