




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
09土木一班2009447001劉毅c語言實(shí)驗(yàn)指導(dǎo)一、 課程性質(zhì)和任務(wù)課程是高職高專計(jì)算機(jī)類各專業(yè)的必修專業(yè)基礎(chǔ)課,是程序設(shè)計(jì)入門課程。本課程的主要任務(wù):通過對(duì)該課程的學(xué)習(xí),使學(xué)生掌握C語言程序設(shè)計(jì)的基本知識(shí),程序結(jié)構(gòu),基本算法及程序設(shè)計(jì)思想,并培養(yǎng)使用C語言進(jìn)行程序設(shè)計(jì)基本能力。本課程的目的:使學(xué)生掌握程序設(shè)計(jì)的基本方法及逐步形成正確的程序設(shè)計(jì)思想,能夠熟練地使用C語言進(jìn)行程序設(shè)計(jì)并具備調(diào)試程序的能力,為后繼課程及其他程序設(shè)計(jì)課程的學(xué)習(xí)和應(yīng)用打下基礎(chǔ)。二、 課程教學(xué)目標(biāo)1、 掌握C語言的基本詞法,熟練掌握C語言程序的基本結(jié)構(gòu)。2、 掌握常量和變量的存儲(chǔ)類型及應(yīng)用;運(yùn)算符和表達(dá)式的應(yīng)用3、 掌握C語言的五種基本語句;形成正確的程序設(shè)計(jì)思想,對(duì)順序結(jié)構(gòu)程序要重點(diǎn)掌握,熟練掌握輸入輸出函數(shù)。4、 掌握關(guān)系、邏輯表達(dá)式的形式和應(yīng)用;熟練掌握選擇結(jié)構(gòu)的思想;掌握IF語句的各種形式和應(yīng)用;掌握SWITCH語句和BREAK語句的使用,選擇結(jié)構(gòu)的嵌套語句。5、 掌握循環(huán)結(jié)構(gòu)的思想、流程和執(zhí)行過程;掌握While循環(huán)、Do...While、FOR循環(huán)及其應(yīng)用;掌握循環(huán)嵌套的使用;掌握BREAK、CONTINUE及使用。6、 掌握一維數(shù)組的定義、引用和應(yīng)用;掌握二維數(shù)組的定義、引用和應(yīng)用;掌握字符數(shù)組及其應(yīng)用。7、 掌握函數(shù)的定義、參數(shù)、類型、返回值及參數(shù)傳遞;掌握變量的作用域(局部變量和全局變量)、存儲(chǔ)類型;了解內(nèi)部函數(shù)和外部函數(shù)及主函數(shù)和命令行參數(shù)。8、 掌握宏定義的形式(帶參數(shù)的宏定義、不帶參數(shù)的宏定義)掌握文件包含的形式和應(yīng)用;了解條件編譯的定義形式和應(yīng)用。9、 掌握直接存取和間接存?。徽莆罩羔樧兞康母拍詈蛻?yīng)用;掌握數(shù)組與指針、函數(shù)與指針之間的關(guān)系;了解指向指針的指針。10、 掌握結(jié)構(gòu)體、共用體的概念、存儲(chǔ)特點(diǎn),及應(yīng)用;了解結(jié)構(gòu)體數(shù)組的使用;掌握結(jié)構(gòu)體與數(shù)組、指針、函數(shù)之間的操作;掌握鏈表的概念和基本操作。了解共用體、自定義類型、枚舉類型的概念和應(yīng)用。11、 掌握位運(yùn)算的基本概念;掌握簡單的位運(yùn)算符及應(yīng)用12、 掌握文件的基本操作;掌握有關(guān)文件操作的函數(shù)及其它讀寫函數(shù)。三、教學(xué)內(nèi)容和要求第一章C語言概述實(shí)踐教學(xué):屬性:實(shí)訓(xùn)時(shí)間:1學(xué)時(shí)。實(shí)踐教學(xué)內(nèi)容:實(shí)驗(yàn)?zāi)康模菏煜urboC運(yùn)行環(huán)境、創(chuàng)建c程序文件的過程。實(shí)驗(yàn)內(nèi)容和步驟:找到TC進(jìn)入TC集成環(huán)境熟悉TC集成環(huán)境及其菜單的使用練習(xí)掌握TC目錄環(huán)境的設(shè)置在TC環(huán)境中編輯如下程序:#include<stdio.h>main()(printf(“歡迎使用TruboC!”);/*輸出字符串*/}gw:t \DeDug\ex1_1.exeCfPressanykeytocontinue將文件保存到Ex1_1.c在TC集成環(huán)境中打開Ex1_1.c,試編譯、運(yùn)行,并用F5查看運(yùn)行結(jié)果設(shè)備及生均耗材要求:計(jì)算機(jī)機(jī)房實(shí)踐考核辦法:檢查學(xué)生程序結(jié)構(gòu)和執(zhí)行情況,并給出評(píng)分。代碼:第二章數(shù)據(jù)類型、運(yùn)算符與表達(dá)式實(shí)踐教學(xué):屬性:實(shí)訓(xùn)時(shí)間:1學(xué)時(shí)。實(shí)踐教學(xué)內(nèi)容:實(shí)驗(yàn)?zāi)康模赫莆誄語言各種基本數(shù)據(jù)類型的定義方法;掌握C語言中常用的運(yùn)算符的功能和使用方法;初步了解運(yùn)算符的優(yōu)先級(jí)別和結(jié)合性實(shí)驗(yàn)內(nèi)容和步驟:編程,利用sizeof()函數(shù),了解C語言各種數(shù)據(jù)類型所占的存儲(chǔ)空間大小,將編寫的源程序以文件名ex2_1.c存儲(chǔ),并編譯、調(diào)試、執(zhí)行。代碼:#include<stdio.h>main()(printf("intis%d/n",sizeof(int));printf("floatis%d/n",sizeof(float));}編程,利用函數(shù)sqrt(),求出從鍵盤輸入的任意正整數(shù)的平方根。將編寫的源程序以文件名ex2_2.c存儲(chǔ),并編譯、調(diào)試、執(zhí)行。代碼:#include<stdio.h>#include<math.h>main()(doublea,b;scanf("%lf”,&a);b=sqrt(a);printf("%lf",b);輸入下列源代碼,改正其中存在的錯(cuò)誤,使其調(diào)試通過,記錄正常運(yùn)行結(jié)果。將編寫的源程序以文件名ex2_3.c存儲(chǔ)#include“sdtio.h”main();(intyy,mm,dd,yy=2006;mm=03;dd=12printf(“你好,今天是%^年%^月%d日”,yy,mm,dd);代碼:#include<stdio.h>main()(intyy,mm,dd;yy=2006,mm=03,dd=12;printf("你好,今天是%^年%^月%d日”,yy,mm,dd);}設(shè)備及生均耗材要求:計(jì)算機(jī)機(jī)房實(shí)踐考核辦法:檢查學(xué)生程序結(jié)構(gòu)和執(zhí)行情況,并給出評(píng)分。第三章最簡單的c程序設(shè)計(jì)實(shí)踐教學(xué):屬性:實(shí)訓(xùn)時(shí)間:學(xué)時(shí)。實(shí)踐教學(xué)內(nèi)容:實(shí)驗(yàn)?zāi)康模菏煜み\(yùn)算符、表達(dá)式,掌握標(biāo)準(zhǔn)輸入輸出函數(shù)的適用方法和順序結(jié)構(gòu)程序設(shè)計(jì)的一般方法。實(shí)驗(yàn)內(nèi)容和步驟:編程,要求從鍵盤按規(guī)定的格式輸入時(shí)間(時(shí):分:秒),并將輸入的時(shí)間在屏幕上顯示出來,存入ex3_1.c文件,并編譯、調(diào)試、運(yùn)行。代碼:#include<stdio.h>voidmain()inta,b,c;scanf("%d:%d:%d”,&a,&b,&c);printf("%02d:%02d:%02d”,a,b,c);}編程,要求從鍵盤輸入數(shù)據(jù),使整型變量a=10,b=8;字符型c1=’A’,c2=’a’;實(shí)型變量x=3.1,y=64.54。并按規(guī)定格式輸出變量的值。格式如下。存入ex3-2.c文件,并編譯、調(diào)試、運(yùn)行。__int a=__10 b= 8char_c1=__A,—c2= afloat—x=_3.1,—y=64.54g■C: 建文件夾\Debug\ez3_2.ezeFeTs",A,aPressanijkeytocontinue代碼:#include<stdio.h>main()inta,b;charc1,c2;doublex,y;a=10,b=8;c1='A',c2='a';x=3.1,y=64.54;printf("%d,%d\n,%c,%c\n,%f,%f\n”,a,b,c1,c2,x,y);}c語言編程求ax2+bx+c=0并分析其結(jié)果。存入ex3_2.c文件,并編譯、調(diào)試、運(yùn)行。代碼:#include<stdio.h>#include<math.h>main()(floata,b,c,x1,x2,m,n;scanf("%f,%f,%f”,&a,&b,&c);m=(-b)/(2*a);n=sqrt(b*b-4*a*c)/(2*a);x1=m+n;x2=m-n;printf("%f,%f\n”,x1,x2);}設(shè)備及生均耗材要求:計(jì)算機(jī)機(jī)房實(shí)踐考核辦法:檢查學(xué)生程序結(jié)構(gòu)和執(zhí)行情況,并給出評(píng)分。第四章邏輯運(yùn)算和判斷選取控制實(shí)踐教學(xué):屬性:實(shí)訓(xùn)時(shí)間:學(xué)時(shí)。實(shí)踐教學(xué)內(nèi)容:實(shí)驗(yàn)?zāi)康模赫莆読f語句的格式與應(yīng)用,if語句的嵌套格式與應(yīng)用,條件運(yùn)算符的作用,Switch語句的格式與應(yīng)用,Break,continue語句的格式與應(yīng)用。實(shí)驗(yàn)內(nèi)容和步驟:完成下面的程序,在空白處填入a,b,c,取a,b,c中最大者賦給max。存入ex4_1.c文件,并編譯、調(diào)試、運(yùn)行。A.if(a>b&&a>c) B.if(a>b)max= else max= p;max= if(b>c) elsemax= max= max= else elsemax= if(b>c)max= elseA: max= 代碼:#include<stdio.h>#include<math.h>main()(inta,b,c,max;scanf("%d,%d,%d”,&a,&b,&c);if(a>b&&a>c)(max=a;}elsemax=b;}elsemax=c;printf("%d”,max);}B:輸入a,b,c三個(gè)整數(shù),要求將絕對(duì)值最大者打印輸出。存入ex4_2.c文件,并編譯、調(diào)試、運(yùn)行。#include<stdio.h>main()(inta,b,c,max;scanf("%d,%d,%d”,&a,&b,&c);09土木一班2009447001劉毅if(fabs(a)>fabs(b)&&fabs(a)>fabs(c))(max=a;}elseif(fabs(b)>fabs(c))(max=b;}elsemax=c;printf("%d",max);}intm;fabs(intm)(if(m>=0)(m=m;}elsem=-m;return(m);}輸入一個(gè)整數(shù),判斷該數(shù)的奇偶性。(輸出相應(yīng)的標(biāo)志even-偶數(shù)odd-奇數(shù),請(qǐng)記住這兩個(gè)單詞)自已寫出程序代碼。存入ex4_3.c文件,并編譯、調(diào)試、運(yùn)行。代碼:#include<stdio.h>#include<math.h>main()(intx;scanf("%d”,&x);if(0==x%2)(printf("even-偶數(shù)\n");}elseprintf("odd-奇數(shù)\n");}給定一個(gè)正整數(shù),判斷它是否能同時(shí)被3、5、7整除。存入ex4_4.c文件,并編譯、調(diào)試、運(yùn)行。代碼:#include<stdio.h>main()intx;scanf("%d”,&x);if(x%3==0&&x%5==0&&x%7==0)(printf("可以同時(shí)被3,5,7整除");}elseprintf("不可以同時(shí)被3,5,7整除");}設(shè)備及生均耗材要求:計(jì)算機(jī)機(jī)房實(shí)踐考核辦法:檢查學(xué)生程序結(jié)構(gòu)和執(zhí)行情況,并給出評(píng)分。第五章循環(huán)控制實(shí)踐教學(xué):屬性:實(shí)訓(xùn)時(shí)間:學(xué)時(shí)。實(shí)踐教學(xué)內(nèi)容:實(shí)驗(yàn)?zāi)康模赫莆昭h(huán)結(jié)構(gòu)的三種形式:當(dāng)型循環(huán)結(jié)構(gòu)(while)、直到型循環(huán)結(jié)構(gòu)(do_while)、次數(shù)型結(jié)構(gòu)(for),以及三種形式的相互轉(zhuǎn)換,掌握break語句、continue語句的格式、功能、作用。實(shí)驗(yàn)內(nèi)容和步驟:編程,鍵盤上輸入10個(gè)數(shù),求其平均值。存入ex5_1.c文件,并編譯、調(diào)試、運(yùn)行。09土木一班2009447001劉毅代碼:#include<stdio.h>main()(inta[10],i,sum=0;floatm;for(i=0;i<10;i++)(scanf("%d”,&a[i]);sum+=a[i];}m=sum/10;printf("%f",m);}編程,輸出1—100之間,其數(shù)的平方在150—200之間的第一個(gè)數(shù),如找到,退出循環(huán),輸出該數(shù)的平方。反之,繼續(xù)查找。存入ex5_2.c文件,并編譯、調(diào)試、運(yùn)行。代碼:#include<stdio.h>main()(inti;for(i=1;i<=100;i++)(if(i*i<=200&&i*i>=150)(printf("%d",i*i);break;}3.編程,輸入一正整數(shù),按從低到高的順序依次輸出其各位數(shù)字的值,例如:輸入8546輸出8546。存入ex5_3.c文件,并編譯、調(diào)試、運(yùn)行。#include<stdio.h>voidmain()(inti=0,j,a[20],n;scanf("%d",&n);while(n>0)(a[i]=n%10;n=n/10;i++;}for(j=i-1;j>=0;j--)09土木一班2009447001劉毅printf("%d",a[j]);printf("\n");}編程,從鍵盤上輸入若干正整數(shù),求其中最大數(shù)和最小數(shù)。輸入的數(shù)以0為中止標(biāo)志。存入ex5_4.c文件,并編譯、調(diào)試、運(yùn)行。#include<stdio.h>voidmain()(intmax,min,n;scanf("%d”,&n);max=n;min=n;while(n!=0)(if(max<n)max=n;if(min>n)min=n;scanf("%d",&n);}printf("最大值是:%d最小值是:%d\n",max,min);}設(shè)備及生均耗材要求:計(jì)算機(jī)機(jī)房實(shí)踐考核辦法:檢查學(xué)生程序結(jié)構(gòu)和執(zhí)行情況,并給出評(píng)分。第六章數(shù)組實(shí)踐教學(xué):屬性:實(shí)訓(xùn)時(shí)間:學(xué)時(shí)。實(shí)踐教學(xué)內(nèi)容:實(shí)驗(yàn)?zāi)康模赫莆找痪S數(shù)組和二位數(shù)組的定義、初始化、輸入、輸出方法;掌握字符數(shù)組的定義、初始化,存放字符串的字符數(shù)組的定義、初始化、輸入、輸出方法,掌握常用字符串處理函數(shù)的格式、功能和使用方法。實(shí)驗(yàn)內(nèi)容和步驟:1、 編程,求2個(gè)3x3矩陣對(duì)應(yīng)元素之和,并存入矩陣C中,然后輸出矩陣。存入ex6_1.c文件,并編譯、調(diào)試、運(yùn)行。#include<stdio.h>main()(inta[3][3]={{1,1,1},{1,1,1},{1,1,1}},b[3][3]={{2,2,2},{2,2,2},{2,2,2}};intc[3][3],i,j;for(i=0;i<3;i++){for(j=0;j<3;j++){c[i][j]=a[i][j]+b[i][j];printf("%3d",c[i][j]);}printf("\n");}2、編一個(gè)程序,輸入單精度型一維數(shù)組a[10],計(jì)算并輸出a數(shù)組中所有元素的平均值。存入ex6_2.c文件,并編譯、調(diào)試、運(yùn)行。代碼:#include<stdio.h>main()(floata[10],sum=0;inti;floatm;for(i=0;i<10;i++)(scanf("%f”,&a[i]);sum+=a[i];}m=sum/10;printf("%f",m);}3、編一個(gè)程序,輸入一個(gè)字符串,將其中所有大寫字母改為小寫字母,而所有小寫字母全部改為大寫字母,然后輸出。存入ex6_3.c文件,并09土木一班2009447001劉毅編譯、調(diào)試、運(yùn)行。代碼:#include<stdio.h>main()chara[10];inti;for(i=0;i<10;i++)scanf("%c”,&a[i]);for(i=0;i<10;i++)(if(a[i]>64&&a[i]<91)a[i]=a[i]+32;elseif(a[i]>96&&a[i]<123)a[i]=a[i]-32;}for(i=0;i<10;i++)printf("%c",a[i]);printf("\n");}4、編一個(gè)程序,輸入這50個(gè)學(xué)生的二科成績,計(jì)算并輸出每科成績的平均分。存入ex6_4.c文件,并編譯、調(diào)試、運(yùn)行。代碼:#include<stdio.h>main()(intm,n;floata[6][2]={0};m=0,n=0;for(m=0;m<5;m++)for(n=0;n<2;n++)scanf("%f”,&a[m][n]);for(n=0;n<2;n++){for(m=0;m<5;m++)a[5][n]+=a[m][n];a[5][n]/=5;}for(m=0;m<6;m++){for(n=0;n<2;n++)printf("%5.1f”,a[m][n]);printf("\n");}設(shè)備及生均耗材要求:計(jì)算機(jī)機(jī)房實(shí)踐考核辦法:檢查學(xué)生程序結(jié)構(gòu)和執(zhí)行情況,并給出評(píng)分。第七章函數(shù)實(shí)踐教學(xué):屬性:實(shí)訓(xùn)時(shí)間:學(xué)時(shí)。實(shí)踐教學(xué)內(nèi)容:實(shí)驗(yàn)?zāi)康模赫莆兆远x函數(shù)的概念、定義格式、調(diào)用方法;掌握函數(shù)的形式參數(shù)、實(shí)際參數(shù)和函數(shù)的返回值;掌握函數(shù)程序設(shè)計(jì)的一般方法和應(yīng)用。掌握函數(shù)與數(shù)組之間的關(guān)系和操作,熟悉數(shù)組作為參數(shù)傳遞應(yīng)該注意的問題;函數(shù)的嵌套、遞歸調(diào)用方法和應(yīng)用;局部變量、全局變量的定義和使用;常用系統(tǒng)函數(shù)的使用。實(shí)驗(yàn)內(nèi)容和步驟:1、編程,計(jì)算10名學(xué)生1門課成績的平均分。(程序設(shè)計(jì)要求:用自定義函數(shù)來實(shí)現(xiàn),注意自定義函數(shù)的形式及參數(shù)之間的傳遞,用主函數(shù)來調(diào)用自定義函數(shù)實(shí)現(xiàn)功能。),存入ex7_1.c文件,并編譯、調(diào)試、運(yùn)行。""C:\Docu*ent£andSettings\siu\Iyf?.tPressanykeytocantinue.H代碼:#include"stdio.h”floatfun(floata[])(inti;floatsum=0;for(i=0;a[i]!=,\0,;i++)(sum+=a[i];}returnsum/i;}voidmain()(floata[11]={67,45,98,87,88,85,65,54,45,42};printf("%g",fun(a));2、編程,利用自定義函數(shù)編寫程序,實(shí)現(xiàn)將一個(gè)十進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù)。存入ex7_2.c文件,并編譯、調(diào)試、運(yùn)行。7111anvtocont代碼:#include"stdio.h”main()(inta,i,n=1,m=0;scanf("%d”,&a);for(i=0;;i++)(if(a%2==0)m+=0*n;elsem+=1*n;n*=10;if(a/2==0)break;a=a/2;}printf("%d\n",m);}3、編程,輸入一個(gè)數(shù)組,利用自定義函數(shù)求數(shù)組的平均數(shù)(用數(shù)組做參數(shù))。存入ex7_3.c文件,并編譯、調(diào)試、運(yùn)行。St94726?956784918279any卜/孕每0cantxnue代碼:#include<stdio.h>main()(floatave(floatx[10]);inti;floata[10],av;av=ave(a);printf("%f",av);}floatave(floatx[10])(floatsum=0,a[10];inti=0;for(i=0;i<10;i++)scanf("%f”,&a[i]);for(i=0;i<10;i++)sum+=a[i];return(sum/10);}4、編程,自定義函數(shù)countc的功能是統(tǒng)計(jì)array數(shù)組中大寫字母的個(gè)數(shù),并返回大寫字母的數(shù)目。存入ex7_4.c文件,并編譯、調(diào)試、運(yùn)行。代碼:#include<stdio.h>main()charcountc(chararray[]);chara[10];intm;m=countc(a);printf(”數(shù)組中大寫字母的個(gè)數(shù)為%d\n",m);}charcountc(chararray[])(inti,n=0;chara[10];for(i=0;i<10;i++)scanf("%c”,&a[i]);for(i=0;i<10;i++)if(a[i]>64&&a[i]<91)n++;return(n);}5、編程,以下函數(shù)p的功能是用遞歸方法計(jì)算xX的n階勒讓德多項(xiàng)式的值。已有調(diào)用語句p(n,x);請(qǐng)編寫p函數(shù)。存入ex7_5.c文件,并編譯、調(diào)試、運(yùn)行。遞歸公式如下:\is=0)胃3)=卞伽=1)以—(工)—伽—1):F_」工))是(MA1)336亂俄10齡四Press尊tiykeytacont±nu&代碼:#include"stdio.h”main()(floatp(intn,floatx);floatb,c;inta;scanf("%d%f”,&a,&c);b=p(a,c);printf("%f\n",b);}floatp(intn,floatx)(floatd;if(n==0)d=1;elseif(n==1)d=x;elsed=((2*n-1)*x*p((n-1),x)-(n-1)*p((n-2),x))/n;return(d);}設(shè)備及生均耗材要求:計(jì)算機(jī)機(jī)房實(shí)踐考核辦法:檢查學(xué)生程序結(jié)構(gòu)和執(zhí)行情況,并給出評(píng)分。第八章編譯預(yù)處理實(shí)踐教學(xué):
屬性:實(shí)訓(xùn)時(shí)間:學(xué)時(shí)。實(shí)踐教學(xué)內(nèi)容:實(shí)驗(yàn)?zāi)康模赫莆蘸甓x的形式(帶參數(shù)的宏定義、不帶參數(shù)的宏定義);掌握文件包含的形式和應(yīng)用;了解條件編譯的定義形式和應(yīng)用。實(shí)驗(yàn)內(nèi)容和步驟:732532導(dǎo)nyk尊導(dǎo)tocont1、編程,通過用帶參的宏定義從3732532導(dǎo)nyk尊導(dǎo)tocont.OLi代碼:#include<stdio.h>main()#definemax(a,b)(a>b)?a:b(inta,b,c,d;scanf("%d%d%d”,&a,&b,&c);d=max(a,b);d=max(c,d);printf("%d\n",d);}2、 編一個(gè)頭文件,將經(jīng)常使用的數(shù)學(xué)函數(shù)、字符處理函數(shù)及圓周率等符號(hào)常量事先定義好。以便以后調(diào)用。存入headfile.h文件,存盤。3、 編一個(gè)程序,接收一行字符,根據(jù)具體需要設(shè)置編譯條件,使之能將所有的字母全改為大寫字母。存入ex8_2.c文件,并編譯、調(diào)試、運(yùn)行。~*C:\DocuMentsandSe±± u\KyDocentba. *f 90JvGUIOJFJWJOYOJVGUianykeytocontinue代碼:#include"stdio.h”voidmain()(chara[100];inti;printf("enteastring:");scanf("%s",a);for(i=0;a[i]!='\0';i++)(if(a[i]>=97&&a[i]<=129)a[i]-=32;}printf("%s",a);}設(shè)備及生均耗材要求:計(jì)算機(jī)機(jī)房實(shí)踐考核辦法:檢查學(xué)生程序結(jié)構(gòu)和執(zhí)行情況,并給出評(píng)分。第九章指針實(shí)踐教學(xué):屬性:實(shí)訓(xùn)時(shí)間:學(xué)時(shí)。實(shí)踐教學(xué)內(nèi)容:實(shí)驗(yàn)?zāi)康模赫莆罩羔樅椭羔樧兞浚瑑?nèi)存單元和地址、變量與地址、數(shù)組與地址的關(guān)系;掌握指針變量的定義和初始化,指針變量的引用方式;掌握取地址運(yùn)算符與指針運(yùn)算符;掌握指向變量的指針變量的使用;掌握指向數(shù)組的指針變量的使用;掌握指向二維數(shù)組和字符數(shù)組指針變量的使用方法;掌握指針數(shù)組的定義、指針數(shù)組元素的引用;掌握多級(jí)指針的定義和應(yīng)用。實(shí)驗(yàn)內(nèi)容和步驟:1、編程,已知P,q指向兩個(gè)int型變量,寫兩個(gè)復(fù)合語句,分別交換P,q的值和p,q所指變量的值,每個(gè)復(fù)合語句中只可以定義一個(gè)變量。存入ex9_1.c文件,并編譯、調(diào)試、運(yùn)行。\Docu&ent£andSettingf\AdBinistratar\3^ifi^\Debug\e3t9-l.exeA5kS1245^40A5kS1245^4012450401245044Pi'essAnykeytocontinue代碼:#include"stdio.hmain()int*p,*q,a,b,t,m;scanf("%d%d”,&a,&b);p=&a,q=&b;printf("%d%d\n",*p,*q);t=*p;*p=*q;q=t;printf("%d%d\n",*p,*q);printf("%d%d\n”,p,q);m=p;p=q;q=m;printf("%d%d\n”,p,q);}2、編程,已知p,q指向數(shù)組的兩個(gè)元素,寫賦值語句,使r指向p和q的中點(diǎn)。例如,若p,q分別指向a[0]和a[2],則r指向a[1]。存入ex9_2.c文件,并編譯、調(diào)試、運(yùn)行。al23^S67fl9?al23^S67fl9??P:-■.:4Pi*essanilkeytocontintie代碼:#include<stdio.h>main()(inta[10],*p,*q,i,*x;for(i=0;i<10;i++)scanf("%d”,&a[i]);p=&a[2];q=&a[4];printf("*p=%d,*q=%d\n",*p,*q);x=&a[3];printf("%d\n",*x);}3、編程實(shí)現(xiàn)findmax函數(shù)將計(jì)算數(shù)組中的最大元素及其下標(biāo)值和地址值,存入ex9_3.c文件,并編譯、調(diào)試、運(yùn)行。*C:\DoEUAentsaruiSett 1. 』凰12J^b6789iaPressanykeyftocontinuem代碼:#include<stdio.h>main()(intfindmax(intarray[]);inti,a[10],b,*p;for(i=0;i<10;i++)scanf("%d",&a[i]);p=&a[0];b=findmax(a);09土木一班2009447001劉毅
printf("%d%d\n”,*(p+b),b);}intfindmax(intarray[])(inti,m=0,n=array[0];for(i=1;i<10;i++)if(n<array[i])(n=array[i];m=i;}returnm;}4、編寫一個(gè)函數(shù)s(a,n),其中a是一個(gè)一維整型數(shù)組,n是數(shù)組長度,通過指針求數(shù)組中的平均數(shù)。存入ex9_4.c文件,并編譯、調(diào)試、運(yùn)行。2456?83^563Presskeytocontinu?代碼:#include<stdio.h>main()(floats(intarray[],intn);inta[10],i;floatb;b=s(a,10);printf("%f\n",b);}floats(intarray[],intn)(inta[10],i,*p=a,sum=0;floatave;for(i=0;i<10;i++)scanf("%d”,&a[i]);for(i=0;i<10;i++)sum+=*(p+i);ave=sum/10.0;return(ave);}5、利用指針編寫程序,求字符串的長度。存入ex9_5.c文件,并編譯、調(diào)試、運(yùn)行。代碼:#include<stdio.h>main()(charstring[20],*p,c;inti,m=0;gets(string);p=&string[0];for(i=0;c=*(p+i)!='\0/;i++)m+=1;printf("%d\n",m);}編程,輸入100個(gè)實(shí)數(shù),利用指針求其中的最大值和平均值,存入ex9_6.c文件,并編譯、調(diào)試、運(yùn)行。FhenaxisIC^TJieaueis5.S00000Jfc*essanykeytocontinue代碼:#include<stdio.h>main()(inta[10],*p,max,i,sum=0;floatave;for(i=0;i<10;i++)scanf("%d”,&a[i]);p=&a[0];max=0;for(i=0;i<10;i++)(max=*(p+i);sum+=(*p+i);}ave=sum/10.0;printf("Themaxis%d,Theaveis%4f\n”,max,ave);}輸入10個(gè)數(shù),利用指針編寫將其排序的程序。存入ex9_7.c文件,并編譯、調(diào)試、運(yùn)行。代碼:#include<stdio.h>main()09土木一班2009447001劉毅inti,*p,a[10],m,j,t;for(i=0;i<10;i++)scanf("%d”,&a[i]);p=&a[0];for(i=10;i>0;i--)for(j=0;j<i;j++)if(a[j]>a[i])(t=a[i];a[i]=a[j];a[j]=t;}for(i=0;i<10;i++)printf("%4d",*(p+i));printf("\n");}設(shè)備及生均耗材要求:計(jì)算機(jī)機(jī)房實(shí)踐考核辦法:檢查學(xué)生程序結(jié)構(gòu)和執(zhí)行情況,并給出評(píng)分。第十章結(jié)構(gòu)體與共同體實(shí)踐教學(xué):屬性:實(shí)訓(xùn)時(shí)間:學(xué)時(shí)。實(shí)踐教學(xué)內(nèi)容:實(shí)驗(yàn)?zāi)康模赫莆战Y(jié)構(gòu)體類型及其變量的定義和初始化,結(jié)構(gòu)體變量的應(yīng)用;掌握結(jié)構(gòu)體數(shù)組的定義和初始化,結(jié)構(gòu)體變量和數(shù)組的應(yīng)用。掌握指向結(jié)構(gòu)體類型的指針,共用體類型變量的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 日租房名宿合同范本
- 雙方簽供貨合同范本
- 方林裝修合同范本
- lng貿(mào)易合同范本
- 文化禮堂設(shè)計(jì)合同范本
- 蘭州市房屋中介合同范例
- 合同解除物業(yè)服務(wù)合同范例
- 合作抽合同范例
- 路燈亮化合同范本
- 制式合同范本
- 全套教學(xué)課件《工程倫理學(xué)》
- 熱導(dǎo)檢測器(TCD)原理與操作注意事項(xiàng)
- DB33_T 2352-2021鄉(xiāng)鎮(zhèn)運(yùn)輸服務(wù)站設(shè)置規(guī)范(可復(fù)制)
- 專升本高等數(shù)學(xué)的講義80頁P(yáng)PT課件
- 血?dú)夥治雠R床基礎(chǔ)(課堂PPT)
- 特種設(shè)備停用報(bào)廢注銷申請(qǐng)表
- 第三章 文獻(xiàn)的版本
- 糖尿病酮癥酸中毒ppt課件
- 五年級(jí)下冊(cè)英語課件--Lesson--7《Arriving-in-Beijing-》|冀教版-(三起)-(共21張PPT)
- 武發(fā)[2004]13關(guān)于積極推進(jìn)“ 城中村”綜合改造工作的意見
- 體溫單(三測單)
評(píng)論
0/150
提交評(píng)論