欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      C語言-實(shí)驗(yàn)四

      時(shí)間:2019-05-12 08:18:47下載本文作者:會(huì)員上傳
      簡(jiǎn)介:寫寫幫文庫(kù)小編為你整理了多篇相關(guān)的《C語言-實(shí)驗(yàn)四》,但愿對(duì)你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫(kù)還可以找到更多《C語言-實(shí)驗(yàn)四》。

      第一篇:C語言-實(shí)驗(yàn)四

      實(shí)

      驗(yàn)

      報(bào)

      課程名稱實(shí)驗(yàn)項(xiàng)目

      學(xué)院 系別 班級(jí)/學(xué)號(hào) 學(xué)生姓名 實(shí)驗(yàn)日期 成績(jī) 指導(dǎo)教師

      程序設(shè)計(jì)基礎(chǔ)(C語言)實(shí)驗(yàn)四 數(shù)組

      (二)

      一、實(shí)驗(yàn)?zāi)康?/p>

      1.掌握二維數(shù)組的定義和初始化。2.掌握二維數(shù)組元素的引用及其應(yīng)用。

      二、實(shí)驗(yàn)內(nèi)容

      注:本次實(shí)驗(yàn)完成前三個(gè)題目或者僅完成第四個(gè)題目最高分為90分,完成全部四個(gè)題目最高分100分。

      題目1:輸入十個(gè)人的姓名,并按升序輸出。(用選擇法或者冒泡法排序)

      流程圖:

      代碼:

      #include #include int main(){

      { int i,j;char a[10][5],t[2];printf(“請(qǐng)輸入十個(gè)人的名字:n”);for(i=0;i<10;i++){ } for(j=0;j<10;j++){

      } printf(“排序輸出:n”);for(i=0;i<10;i++)for(i=0;i<10-j;i++){

      } if(strcmp(a[i],a[i+1])>0){

      } strcpy(t,a[i]);strcpy(a[i],a[i+1]);strcpy(a[i+1],t);gets(a[i]);} puts(a[i]);return 0;}

      題目2:求兩個(gè)矩陣的積。如:

      運(yùn)算規(guī)則為:

      第i行第j列相乘得到結(jié)果矩陣中r[i][j]的值。比如:

      r[0][0] = 1*1+2*5+3*8=35;r[0][1] = 1*5+2*3+3*1=14;r[1][0] = 4*1+5*5+6*8=77;r[1][1] = 4*5+5*3+6*1=41;要求:

      1.數(shù)組的行數(shù)和列數(shù)不超過100。

      2.輸入第一行中,第一個(gè)正整數(shù)m,表示第一個(gè)矩陣的行數(shù),輸入第二個(gè)正整數(shù)n,表示第一個(gè)矩陣的列數(shù),也即是第二個(gè)矩陣的行數(shù),輸入第三個(gè)正整數(shù)p,表示第二個(gè)矩陣的列數(shù)。

      3.接下來的m*n個(gè)數(shù)是第一個(gè)矩陣中的數(shù)。4.再接下來的n*p個(gè)數(shù)是第二個(gè)矩陣中的數(shù)。5.輸出計(jì)算結(jié)果,為一個(gè)m行,p列的矩陣。流程圖:

      #include int main(){

      int a[100][100]={0},b[100][100]={0},c[100][100]={0},i,j,k,n,m,p;printf(“請(qǐng)輸入第一個(gè)矩陣的行數(shù)m:n”);scanf(“%d”,&m);printf(“請(qǐng)輸入正整數(shù)n(第一個(gè)矩陣的列數(shù),也是第二個(gè)矩陣的行數(shù)):n”);

      for(i=0;i

      for(j=0;j

      printf(“這兩個(gè)矩陣的和為:n”);for(i=0;i

      } for(j=0;j

      題目3:求矩陣的鞍點(diǎn)。鞍點(diǎn)位置上的元素在該行中值最大,在該列中值最小。如下面矩陣的鞍點(diǎn)為35。

      【輸入】前兩個(gè)數(shù)為行數(shù)和列數(shù),其后是矩陣中的元素

      【輸出】如果沒有鞍點(diǎn),輸出NO;如果有輸出格式為:[值1,行下標(biāo)1,列下標(biāo)1],[值2,行下標(biāo)2,列下標(biāo)2]…… 流程圖:

      #include int main(){

      int a[100][100];int m,n,i,j,t,k;printf(“請(qǐng)輸入行數(shù)m和列數(shù)n:n”);scanf(“%d%d”,&m,&n);printf(“請(qǐng)輸入這個(gè)%d*%d矩陣:n”,m,n);for(i=0;i

      for(j=0;j

      for(t=0,j=1;ja[j][t])break;if(j>=m){

      } k=1;printf(“鞍點(diǎn)[%d]是%d:行下標(biāo)%d,列下標(biāo)%dn”,k,a[i][t],i,t);k++;} return 0;} 運(yùn)行結(jié)果:

      題目4:學(xué)生成績(jī)統(tǒng)計(jì)

      ? 一個(gè)班共有6名學(xué)生,已知每個(gè)學(xué)生有5門課程的成績(jī) ? 請(qǐng)輸出每個(gè)學(xué)生的平均成績(jī) ? 請(qǐng)輸出每門課程的平均成績(jī) ? 請(qǐng)輸出學(xué)生的最高平均成績(jī)和序號(hào) ? 請(qǐng)輸出課程的最高平均成績(jī)和序號(hào) 流程圖:

      #include int main(){

      float a[7][6],b[7],c[6];int m,n,i;printf(“請(qǐng)輸入6名學(xué)生的5門課程的成績(jī):n”);for(m=1;m<7;m++){

      } for(m=1;m<7;m++){

      } for(n=1;n<6;n++){

      } for(m=1;m<7;m++)c[n]=0;for(m=1;m<7;m++)c[n]+=a[m][n];b[m]=0;for(n=1;n<6;n++)b[m]+=a[m][n];for(n=1;n<6;n++)scanf(“%f”,&a[m][n]);b[m]=b[m]/5;printf(“第%d名學(xué)生的平均成績(jī)?yōu)?.1fn”,m,b[m]);c[n]=c[n]/6;printf(“第%d門課的平均成績(jī)?yōu)?.1fn”,n,c[n]);

      } {

      } for(m=1;m<6;m++){

      } return 0;i=0;for(n=1;n<6;n++){

      } if(i==5)printf(“第%d門課成績(jī)最高為%.1fn”,m,c[m]);if(c[m]>=c[n])i++;i=0;for(n=1;n<7;n++){

      } if(i==6)printf(“第%d名學(xué)生成績(jī)最高為%.1fn”,m,b[m]);if(b[m]>=b[n])i++;運(yùn)行結(jié)果:

      題目5:井字格游戲

      程序大致的執(zhí)行過程如圖所示: 功能包括:

      1.允許兩個(gè)玩家下棋 2.允許玩家輸入下棋的坐標(biāo) 3.顯示當(dāng)前棋盤狀態(tài)

      4.判斷玩家是否下錯(cuò)位置,即在已經(jīng)下過棋的位置再次下棋 5.判斷玩家下棋后,輸贏狀態(tài) 6.在屏幕提示中指導(dǎo)玩家交替下棋

      流程圖: 省列。代碼:

      #include #include int c,i,j,kongzhi=1,i=1;int basic[3][3]={0,0,0,0,0,0,0,0,0};int tasic[3][3]={0,0,0,0,0,0,0,0,0};char T[3][3];int printerA(int site1,int site2){ if(tasic[site1][site2]==0&&basic[site1][site2]==0){basic[site1][site2]=1;

      T[site1][site2]='X';for(i=0;i<3;i++){

      printf(“-------n”);for(j=0;j<3;j++){ printf(“|”);printf(“%c”,T[i][j]);} printf(“|n”);if(i==2)

      } else return 99;} printf(“-------n”);} return 0;int printerB(int site1,int site2){

      if(tasic[site1][site2]==0&&basic[site1][site2]==0){ tasic[site1][site2]=-1;T[site1][site2]='O';for(i=0;i<3;i++){ printf(“-------n”);for(j=0;j<3;j++)

      { printf(“|”);printf(“%c”,T[i][j]);} printf(“|n”);if(i==2){ printf(“-------n”);} } return 0;} else return-99;} int main(){ int m,n,a,b;while(kongzhi==1){

      if((basic[0][0]+basic[0][1]+basic[0][2]==3)||(basic[1][0]+basic[1][1] do { a=0;printf(“請(qǐng)A下子:”);scanf(“%d%d”,&m,&n);

      a=printerA(m,n);if(a==99)printf(“對(duì)不起,您下錯(cuò)位置了!n”);} while(a==99);+basic[1][2]==3)||(basic[2][0]+basic[2][1]+basic[2][2]==3)||(basic[0][0]+basic[1][1]+basic[2][2]==3)||(basic[0][2]+basic[1][1]+basic[2][0]==3)){ printf(“A贏了!n”);return 0;} do { b=0;printf(“請(qǐng)B下子:”);scanf(“%d%d”,&m,&n);

      b=printerB(m,n);if(b==-99)

      printf(“對(duì)不起,您下錯(cuò)位置了!n”);} while(b==-99);if((tasic[0][0]+tasic[0][1]+tasic[0][2]==-3)||(tasic[1][0]+tasic[1][1]+tasic[1][2]==-3)||(tasic[2][0]+tasic[2][1]+tasic[2][2]==-3)||(tasic[0][0]+tasic[1][1]+tasic[2][2]==-3)||(tasic[0][2]+tasic[1][1]+tasic[2][0]==-3))

      { printf(“B贏了!n”);return 0;} i++;if(i==9){ printf(“平局!”);return 0;} } } 運(yùn)行結(jié)果:

      心得體會(huì):這幾道題加深了我對(duì)數(shù)組的理解,及其相關(guān)應(yīng)用。

      第二篇:實(shí)驗(yàn)四SQL語言

      實(shí)驗(yàn)四 SQL語言——數(shù)據(jù)更新操作

      2007-06-16 01:12:44|分類: 課程作業(yè) |標(biāo)簽:數(shù)據(jù)更新操作sql語言|字號(hào)大中小 訂閱

      實(shí)驗(yàn)四 SQL語言——數(shù)據(jù)更新操作

      三、實(shí)驗(yàn)條件與環(huán)境

      1.通用PC機(jī)

      2.PC機(jī)必須安裝Windows 2000系列、Windows XP系列或Windows NT操作系統(tǒng)平臺(tái) 3.PC機(jī)還須安裝Microsoft SQL Server 2000 任意一版本(個(gè)人版、標(biāo)準(zhǔn)版、企業(yè)版)

      4.最好有一臺(tái)公用的SQL Server 2000 服務(wù)器

      四、實(shí)驗(yàn)?zāi)康?.通過上機(jī)實(shí)驗(yàn)進(jìn)一步加深對(duì)SQL數(shù)據(jù)更新(插入、修改及刪除)語句的基本語法格式的掌

      2.通過上機(jī)實(shí)驗(yàn)掌握單個(gè)元組插入操作的實(shí)現(xiàn)過程

      3.通過上機(jī)實(shí)驗(yàn)掌握多個(gè)元組插入操作的實(shí)現(xiàn)過程

      4.通過上機(jī)實(shí)驗(yàn)掌握單個(gè)元組修改操作的實(shí)現(xiàn)過程

      5.通過上機(jī)實(shí)驗(yàn)掌握多個(gè)元組修改操作的實(shí)現(xiàn)過程

      6.通過上機(jī)實(shí)驗(yàn)掌握單個(gè)元組刪除操作的實(shí)現(xiàn)過程

      7.通過上機(jī)實(shí)驗(yàn)掌握多個(gè)元組刪除操作的實(shí)現(xiàn)過程

      8.通過上機(jī)實(shí)驗(yàn)加深對(duì)更新操作時(shí)數(shù)據(jù)庫(kù)中數(shù)據(jù)一致性問題的了解

      9.通過上機(jī)實(shí)驗(yàn)加深對(duì)約束條件在數(shù)據(jù)更新操作執(zhí)行中的作用問題的了解

      五、實(shí)驗(yàn)要求

      1.本實(shí)驗(yàn)所有實(shí)驗(yàn)內(nèi)容要求在規(guī)定時(shí)間(2課時(shí))內(nèi)完成2.實(shí)驗(yàn)內(nèi)容中涉及到的各更新操作均通過SQL語言來實(shí)現(xiàn)

      3.本實(shí)驗(yàn)中各操作內(nèi)容的執(zhí)行均會(huì)更新當(dāng)前數(shù)據(jù)庫(kù),為便于下一實(shí)驗(yàn)內(nèi)容的順利執(zhí)行,請(qǐng)?jiān)诿砍晒ν瓿梢粋€(gè)實(shí)驗(yàn)內(nèi)容后重新導(dǎo)入初始狀態(tài)下的實(shí)驗(yàn)數(shù)據(jù)庫(kù)

      4.實(shí)驗(yàn)完成后需要書寫實(shí)驗(yàn)報(bào)告,本次實(shí)驗(yàn)報(bào)告需在下次實(shí)驗(yàn)課堂上上交

      六、實(shí)驗(yàn)內(nèi)容:

      1.在S表中插入元組“s6,華譽(yù),40,廣州,02085268888”

      2.在J表中插入元組“j8,傳感器廠”

      3.對(duì)每一個(gè)供應(yīng)商,求他為各種工程供應(yīng)零件的總數(shù)量,并將此結(jié)果存入數(shù)據(jù)庫(kù)

      4.將P表中PNO值為p6的元組的color屬性值改為綠,weight屬性值改為60

      5.將SPJ表中前4個(gè)元組的qty屬性值統(tǒng)一修改為300

      6.將S表中city屬性名含有“京”或“津”的相應(yīng)status屬性值增加100

      7.將供應(yīng)商s2為“一汽”工程項(xiàng)目所供應(yīng)的零件數(shù)量修改為2000

      8.將全部紅色零件的顏色修改為淺紅色

      9.由s5供給j4的零件p6改為由s3供應(yīng),請(qǐng)?jiān)跀?shù)據(jù)庫(kù)中作必要的數(shù)據(jù)修改

      10.在SPJ表中新增一列屬性名為SDATE的屬性列,對(duì)該表中的每一元組在SDATE屬性列

      上填上實(shí)驗(yàn)當(dāng)時(shí)的日期和時(shí)間

      11.刪除所在城市為“廣州”的供應(yīng)商記錄

      12.刪除所有零件名稱中第一個(gè)字為“螺”字的零件記錄,并在供應(yīng)情況表中刪除相應(yīng)的記錄

      13.刪除s3和s4兩供應(yīng)商為“三建”工程供應(yīng)“螺母”或“螺絲刀”零件的相應(yīng)供應(yīng)情況數(shù)

      據(jù)信息

      七、實(shí)驗(yàn)總結(jié):

      數(shù)據(jù)更新操作(插入操作[INSERT]、修改操作[UPDATE]、刪除操作[DELETE])是關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)中一種極為重要、數(shù)據(jù)更新能力強(qiáng)、使用靈活的數(shù)據(jù)操縱方式,此數(shù)據(jù)操作的使用不是完全獨(dú)立的,而是和數(shù)據(jù)定義操作、數(shù)據(jù)查詢操作有著緊密聯(lián)系的。實(shí)驗(yàn)完成后,請(qǐng)同學(xué)們總結(jié)一下SQL語言在實(shí)現(xiàn)各種數(shù)據(jù)更新操作時(shí)與數(shù)據(jù)定義操作和數(shù)據(jù)查詢操作兩類操作之間的相互聯(lián)系,通過深入總結(jié),從而學(xué)會(huì)利用SQL語言實(shí)現(xiàn)較為復(fù)雜的數(shù)據(jù)更新任務(wù)。

      實(shí)驗(yàn)四 SQL語言——數(shù)據(jù)更新操作

      實(shí)驗(yàn)內(nèi)容參考答案

      六、實(shí)驗(yàn)內(nèi)容

      1.在S表中插入元組“s6,華譽(yù),40,廣州,02085268888”

      use shiyan

      go

      insert

      into s

      values('s6','華譽(yù)',40,'廣州','02085268888')

      2.在J表中插入元組“j8,傳感器廠”

      use shiyan

      go

      insert

      into j(jno,jname)

      values('j8','傳感器廠')

      3.對(duì)每一個(gè)供應(yīng)商,求他為各種工程供應(yīng)零件的總數(shù)量,并將此結(jié)果存入數(shù)據(jù)庫(kù)

      use shiyan

      go

      create table TotalQTYofS(SNO char(4)not null unique,TotalQTY int);

      insert

      into TotalQTYofS

      select sno,sum(qty)

      from spj

      group by sno;

      4.將P表中PNO值為p6的元組的color屬性值改為綠,weight屬性值改為60

      use shiyan

      go

      update p

      set color='綠',weight=60

      where pno='p6'

      5.將SPJ表中前4個(gè)元組的qty屬性值統(tǒng)一修改為300

      use shiyan

      go

      update spj

      set qty=300

      from(select top 4 * from spj order by sno)as table1

      where spj.sno=table1.sno

      6.將S表中city屬性名含有“京”或“津”的相應(yīng)status屬性值增加100

      use shiyan

      go

      update s

      set status=status+100

      where city like '%京%' or city like '%津%

      7.將供應(yīng)商s2為“一汽”工程項(xiàng)目所供應(yīng)的零件數(shù)量修改為2000

      use shiyan

      go

      update spj

      set qty=2000

      where sno='s2' and jno=(select jno

      from j

      where jname='一汽')

      8.將全部紅色零件的顏色修改為淺紅色

      use shiyan

      go

      update p

      set color='淺紅'

      where color='紅'

      9.由s5供給j4的零件p6改為由s3供應(yīng),請(qǐng)?jiān)跀?shù)據(jù)庫(kù)中作必要的數(shù)據(jù)修改

      use shiyan

      go

      update spj

      set sno='s3'

      where sno='s5' and jno='j4' and pno='p6'

      10.在SPJ表中新增一列屬性名為SDATE的屬性列,對(duì)該表中的每一元組在SDATE屬性列

      上填上實(shí)驗(yàn)當(dāng)時(shí)的日期和時(shí)間

      use shiyan

      go

      alter table spj

      add SDATE datetime

      update spj

      set SDATE=getdate()

      11.刪除所在城市為“廣州”的供應(yīng)商記錄

      use shiyan

      go

      delete

      from s

      where city='廣州'

      12.刪除所有零件名稱中第一個(gè)字為“螺”字的零件記錄,并在供應(yīng)情況表中刪除相應(yīng)的記錄

      use shiyan

      go

      delete

      from p

      where pname like '螺%'

      delete

      from spj

      where pno in(select pno

      from p

      where pname like '螺%')

      13.刪除s3和s4兩供應(yīng)商為“三建”工程供應(yīng)“螺母”或“螺絲刀”零件的相應(yīng)供應(yīng)情況數(shù)據(jù)信息

      use shiyan

      go

      delete

      from spj

      where(sno='s3' or sno='s4')and jno in(select jno

      from j

      where jname='三建')and pno in(select pno

      from p

      where pname='螺母' or pname='螺絲刀')

      第三篇:《Matlab語言》實(shí)驗(yàn)四

      實(shí)驗(yàn)

      四、Matlab的程序設(shè)計(jì)

      (一)實(shí)驗(yàn)?zāi)康?/p>

      1.掌握利用if語句實(shí)現(xiàn)選擇結(jié)構(gòu)的方法。

      2.掌握利用switch語句實(shí)現(xiàn)多分支選擇結(jié)構(gòu)的方法。3.掌握利用for語句實(shí)現(xiàn)循環(huán)結(jié)構(gòu)的方法。4.掌握利用while語句實(shí)現(xiàn)循環(huán)結(jié)構(gòu)的方法。5.掌握Matlab函數(shù)的編寫及調(diào)試方法。

      (二)實(shí)驗(yàn)環(huán)境

      1.計(jì)算機(jī)

      2.MATLAB7.0集成環(huán)境

      (三)實(shí)驗(yàn)內(nèi)容

      1、編寫一個(gè)函數(shù),計(jì)算下面函數(shù)的值,給出標(biāo)量x的值,調(diào)用該函數(shù)后,返回y的值。function y=myfun1(x)?sinx,?y(x)??x,??x?6,?x?00?x?3x?3

      選擇一些數(shù)據(jù)測(cè)試你編寫的函數(shù)。function [y]=myfun1(x)if x<=0

      y=sin(x);elseif x>0&x<=3 y=x;elseif x>3 y=-x+6;End 結(jié)果: >> x=5;>> [y]=myfun1(x)y = 1

      2、編寫一個(gè)函數(shù)求向量x中元素的平均值、最大值、最小值、均方根值。

      function [m_x,max_x,min_x,rms_x]=myfun2(x)方均根值(Root Mean Square)的計(jì)算公式為:

      rms?1NN?i?1xi2

      用下面數(shù)據(jù)測(cè)試你寫的函數(shù):

      function [m_x,max_x,min_x,rms_x]=myfun2(x)%求平均值

      sum_x=sum(x);%向量元素求和

      [m,n]=size(x);%最好用n=length(x);m_x=sum_x/n;

      %求最大值 采用逐個(gè)比較方式 if x(1)>x(2)max_x=x(1);else

      max_x=x(2);end for k=3:n

      if max_x

      else

      max_x=max_x;%可省略

      end end

      %求最小值

      if x(1)

      min_x=x(2);end

      for k=3:n

      if min_x>x(k)

      min_x=x(k);

      else

      min_x=min_x;%可省略

      end end

      %求均方根值 sum_x2=0;for k=1:n

      sum_x2=sum_x2+x(k).^2;rms_x=sqrt(sum_x2/n);end m_x;max_x;

      min_x;

      rms_x;%按照函數(shù)值行(1)x=sin(0:0.01:6*pi)運(yùn)行結(jié)果:>> x=sin(0:0.01:6*pi);>> [m_x,max_x,min_x,rms_x]=myfun2(x)m_x =-1.1256e-007 max_x = 1.0000 min_x =-1.0000 rms_x = 0.7071(2)x=rand(1,200),得到的x為200個(gè)(0,1)之間均勻分布的隨機(jī)數(shù)。>> x=rand(1,200);>> [m_x,max_x,min_x,rms_x]=myfun2(x)m_x = 0.5231 max_x = 0.9994 min_x = 0.0056 rms_x = 0.5869

      3、編寫求解方程ax?bx?c?0的根的函數(shù)(這個(gè)方程不一定為一元二次方程,因a、b、c的不同取值而定),這里應(yīng)根據(jù)a、b、c的不同取值分別處理,有輸入?yún)?shù)提示,當(dāng)a?0,b?0,c~?0時(shí)應(yīng)提示“為恒不等式!”。并輸入幾組典型值加以檢驗(yàn)。2M文件: disp('關(guān)于方程ax^2+bx+c=0')a=input('請(qǐng)輸入系數(shù)a=');b=input(' b=');c=input(' c=');if a==0&&b==0

      if c==0

      disp('解為全體實(shí)數(shù)');

      else

      disp('為恒不等式!');

      end else P=[a,b,c];

      x=roots(P)end

      disp('關(guān)于方程ax^2+bx+c=0')a=input('請(qǐng)輸入系數(shù)a=');b=input(' b=');c=input(' c=');if a==0&&b==0

      if c==0

      disp('解為全體實(shí)數(shù)');

      else

      disp('為恒不等式!');

      end else P=[a,b,c];x=roots(P)end

      工作空間測(cè)試: 關(guān)于方程ax^2+bx+c=0 請(qǐng)輸入系數(shù)a=2 b=4 c=6 x =-1.0000 + 1.4142i-1.0000-1.4142i

      4、輸入一個(gè)百分制成績(jī),要求輸出成績(jī)等級(jí)A+、A、B、C、D、E。其中100分為A+,90分~99分為A,80分~89分為B,70分~79分為C,60分~69分為D,60分以下為E。要求:(1)用switch語句實(shí)現(xiàn)。

      (2)輸入百分制成績(jī)后要判斷該成績(jī)的合理性,對(duì)不合理的成績(jī)應(yīng)輸出出錯(cuò)信息。

      g=input('請(qǐng)輸入成績(jī)');

      if g<0||g>100

      disp('錯(cuò)誤,輸入的成績(jī)應(yīng)為0~100間的數(shù)')

      else

      g=fix(g/10);

      switch g

      case {10}

      disp('A+');

      case {9} disp('A');

      case {8} disp('B');

      case {7}

      disp('C');

      case {6}

      disp('D')

      otherwise

      disp('E');

      end5、利用for循環(huán)語句編寫計(jì)算n!的函數(shù)程序,取n分別為-89、0、3、5、10驗(yàn)證其正確性(輸入n為負(fù)數(shù)時(shí)輸出出錯(cuò)信息)。n=input('請(qǐng)輸入n=');

      if n<0

      disp('錯(cuò)誤,n取值必須為正數(shù)');

      else y=1;

      for i=1:n y=y*i;

      end

      disp('n!=');disp(y)

      測(cè)試: 請(qǐng)輸入n=6 n!= 720

      6、Fibonacci數(shù)組的元素滿足Fibonacci規(guī)則:現(xiàn)要求該數(shù)組中第一個(gè)大于10000的元素。

      a(1)=1;a(2)=1;

      k=3;

      a(k)=a(k-1)+a(k-2);

      while a(k)<10000 k=k+1;

      a(k)=a(k-1)+a(k-2);

      測(cè)試: >> ak=a(k)ak =

      ak?2?ak?ak?1,(k?1,2,?);且a1?a2?1。10946 ?

      27、根據(jù)6?112?122?132?......?1n,求?的近似值。

      2要求:(1)分別采用for循環(huán)結(jié)構(gòu)以及向量法來編程實(shí)現(xiàn),比較兩種方法程序運(yùn)行時(shí)間;(2)當(dāng)n分別取100、1000、10000時(shí),結(jié)果是多少? n=[100 1000 10000];

      for j=1:3 y=0;k=n(j);

      for i=1:k y=y+1/i/i;

      end

      pai=sqrt(6*y);disp('n=');

      disp(n(j));

      disp('π的近似值為');

      disp(pai);結(jié)果: n= 100 π的近似值為 3.1321 n= 1000 π的近似值為 3.1406 n= 10000 π的近似值為 3.1415

      (四)實(shí)驗(yàn)要求

      1、熟練操作MATLAB7.0運(yùn)行環(huán)境;

      2、自主編寫程序,必要時(shí)參考相關(guān)資料;

      3、實(shí)驗(yàn)前應(yīng)寫出程序大致框架或完整的程序代碼;

      4、完成實(shí)驗(yàn)報(bào)告。

      (五)實(shí)驗(yàn)報(bào)告要求

      見實(shí)驗(yàn)一。

      思考題

      1、M文件分為哪兩類?這兩類M文件的區(qū)別是什么? 答:分為命令文件和函數(shù)文件

      1)函數(shù)文件一般都要帶參數(shù) , 都要有返回結(jié)果 , 而命令文件沒有參數(shù)與返回結(jié)果 2)函數(shù)文件的變量是局部變量 , 運(yùn)行期間有效 , 運(yùn)行完畢就自動(dòng)被清除 , 而命令文件的變量是全局變量 , 執(zhí)

      行完畢后仍被保存在內(nèi)存中

      3)函數(shù)文件要定義函數(shù)名 , 且保存該函數(shù)文件的文件名必須是函數(shù)名.m。M 函數(shù)文件可以有多個(gè)因變量和多

      個(gè)自變量 , 當(dāng)有多個(gè)因變量時(shí)用[ ] 括起來。

      2、有一分?jǐn)?shù)序列:

      1, 3, 5, 8, 1321

      22358, 13, 編寫一段程序,求前16項(xiàng)的和。

      a=2.0;b=1.0;c=a/b;

      for 1:16 {b=a;a=a+b;

      d=(a+b)/a;c=c+d;}

      ?? ?

      第四篇:C語言程序設(shè)計(jì)實(shí)驗(yàn)四(本站推薦)

      C語言程序設(shè)計(jì)實(shí)驗(yàn)

      (四)[實(shí)驗(yàn)1] scanf()、printf()函數(shù)的使用。

      1.實(shí)驗(yàn)題目

      輸入1個(gè)學(xué)生學(xué)號(hào)和4門課程成績(jī),輸出這個(gè)學(xué)生的學(xué)號(hào)、4門課程成績(jī)和平均成績(jī)。

      2.實(shí)驗(yàn)要求

      (1)按表格的形式輸出,以行內(nèi)輸出一個(gè)學(xué)生的信息。

      (2)學(xué)號(hào)用長(zhǎng)整型,各科成績(jī)用單精度型。

      3.實(shí)驗(yàn)?zāi)繕?biāo)

      (1)掌握實(shí)現(xiàn)人機(jī)對(duì)話形式的方法,scanf()輸入。

      (2)體會(huì)根據(jù)需要控制輸出格式的方法,printf()輸出。

      4.實(shí)驗(yàn)指導(dǎo)

      利用格式的數(shù)據(jù)寬度控制數(shù)據(jù)的對(duì)位輸出。輸出如下格式:

      The number and score of a student is:

      |---|

      |number | score1 | score2 | score3 | sco re4 | average |

      |---|

      |10011| 67.5|88.0 |93.5 |78.0|81.75 |

      |---|

      [實(shí)驗(yàn)2] getchar()、putchar()函數(shù)的使用

      1.實(shí)驗(yàn)題目

      用getchar()函數(shù)讀入a~v之間的一個(gè)字母,用putchar()函數(shù)輸出一個(gè)5行5列的矩陣,該矩陣第一行為讀入的字母,下一行為緊跟該字母后的字母,依此類推。如輸入a,則輸出的矩陣為:

      aaaaa

      bbbbb

      ccccc

      ddddd

      eeeee

      2.實(shí)驗(yàn)要求

      (1)運(yùn)用getchar()進(jìn)行字符輸入。

      (2)運(yùn)用putchar()進(jìn)行字符輸出。

      3.實(shí)驗(yàn)?zāi)繕?biāo)

      (1)體會(huì)根據(jù)需要控制輸出格式的方法。

      [實(shí)驗(yàn)3] 3.6 下面程序運(yùn)行時(shí)在鍵盤上如何輸入?如果a=3,b=4,x=8.5,y=71.82,c1=’A’,c2=’a’,請(qǐng)寫出對(duì)應(yīng)每個(gè)scanf函數(shù)的輸入情況。

      main()

      { int a,b;float x,y;char c1,c2;

      scanf(“a=%d□b=%d”,&a,&b);

      scanf(“□%f %e”,&x,&y);

      scanf(“□%c %c”,&c1,&c2);

      }

      3.7編一程序,從鍵盤輸入一個(gè)圓半徑值,求圓周長(zhǎng)、圓面積、圓球表面積、圓球體積。輸出結(jié)果時(shí),要求有文字說明,保留2位小數(shù)。

      提示:設(shè)圓半徑為r,則圓周長(zhǎng)=2πr,圓面積=πr2,圓球表面積=4πr2,圓球體積= 4πr3/3。

      第五篇:《C語言程序設(shè)計(jì)》實(shí)驗(yàn)四

      電子科技大學(xué) 計(jì)算機(jī) 學(xué)院

      標(biāo) 準(zhǔn) 實(shí) 驗(yàn) 報(bào) 告

      (實(shí)驗(yàn))課程名稱

      C語言程序設(shè)計(jì)

      電子科技大學(xué)教務(wù)處制表

      電 子 科 技 大 學(xué) 實(shí)

      驗(yàn)

      報(bào)

      學(xué)生姓名:

      學(xué) 號(hào):

      指導(dǎo)教師:劉 勇 實(shí)驗(yàn)地點(diǎn): 計(jì)算機(jī)學(xué)院軟件306室

      實(shí)驗(yàn)日期:

      ****年**月**日

      一、實(shí)驗(yàn)室名稱:

      軟件實(shí)驗(yàn)室

      二、實(shí)驗(yàn)項(xiàng)目名稱:函數(shù)的應(yīng)用及預(yù)處理

      三、實(shí)驗(yàn)學(xué)時(shí):2

      四、實(shí)驗(yàn)原理:

      使用Turbo C軟件(簡(jiǎn)稱TC),在微型計(jì)算機(jī)上,對(duì)其程序進(jìn)行編輯、編譯、連接與運(yùn)行。Turbo C是一個(gè)集成環(huán)境,它具有方便、直觀、易用的界面和豐富的庫(kù)函數(shù)。通過上機(jī)練習(xí)掌握在TC環(huán)境下編輯、編譯、連接、和運(yùn)行C程序的方法和過程。

      五、實(shí)驗(yàn)?zāi)康?/p>

      1. 掌握C語言中定義函數(shù)的方法; 2. 掌握函數(shù)傳值調(diào)用的方法; 3. 掌握函數(shù)傳址調(diào)用的方法; 4. 掌握遞歸函數(shù)的設(shè)計(jì)方法; 5. 掌握命令行參數(shù)的使用方法;

      6. 掌握函數(shù)在不同文件中的編譯、鏈接方法。

      六、實(shí)驗(yàn)內(nèi)容

      編程實(shí)驗(yàn),完成以下上機(jī)內(nèi)容,調(diào)試運(yùn)行程序并完成報(bào)告 1)、教材第七章習(xí)題7.4;

      2)、編寫一個(gè)實(shí)現(xiàn)冒泡法排序的函數(shù),并在主函數(shù)中從鍵盤上輸入6個(gè)數(shù)后進(jìn)行排序輸出;

      3)、教材第七章習(xí)題7.11; 4)、教材第七章習(xí)題7.15; 5)、教材第七章習(xí)題7.24; 6)、求解漢渃塔(tower of Hanoi)問題。在一塊平板上立有3根立柱,從左到右分別標(biāo)記為A,B,C。最初在A柱上放有6個(gè)大小不等的圓盤,并且大盤在下面,小盤在上面。要求將這些盤從A移到C(可以借助B柱)。條件是:每次只能移動(dòng)一個(gè)盤,并且不允許把大盤放在小盤的上面。(提示:利用函數(shù)的遞歸調(diào)用);

      七、實(shí)驗(yàn)器材(設(shè)備、元器件):

      pc硬件要求:CPU PII 以上,64M 內(nèi)存,1OOM 硬盤空間即可。

      軟件要求:DOS3.0以上/Windows98/Me/XP/NT/2000。

      八、實(shí)驗(yàn)步驟: 實(shí)驗(yàn)編程與運(yùn)行結(jié)果

      ⑴ 編寫一個(gè)求兩個(gè)整數(shù)的最小公倍數(shù)的函數(shù),兩個(gè)整數(shù)由鍵盤輸入,用主函數(shù)調(diào)用這個(gè)函數(shù),并輸出結(jié)果。

      程序文件名為7_4.c,源程序清單如下:

      #include lcd(int a,int b){ int temp,num1,num2;num1=a;num2=b;while(num2!=0){ temp=num1%num2;num1=num2;num2=temp;} return(a*b/num1);} main(){ int t,x,y;printf(“Please input two integers:”);scanf(“%d,%d”,&x,&y);if(x>y){t=x;x=y;y=t;} printf(“l(fā)cd(%d,%d)=%dn”,x,y,lcd(x,y));}

      運(yùn)行結(jié)果:

      ⑵ 編寫一個(gè)實(shí)現(xiàn)冒泡法排序的函數(shù),并在主函數(shù)中從鍵盤上輸入6個(gè)數(shù)后進(jìn)行排序輸出。

      程序文件名為testf3.c,源程序清單如下:

      main(){ int i,j,a[7];int temp;clrscr();for(i=1;i<7;i++){ printf(“nInput a[%d]=”,i);scanf(“%d”,&a[i]);} for(i=1;i<6;i++)for(j=1;j<7;j++){ if(a[j]

      temp=a[j];a[j]=a[j+1];a[j+1]=temp;} } for(i=1;i<7;i++){ printf(“n%5d”,a[i]);} }_

      運(yùn)行結(jié)果:

      編寫一個(gè)通過函數(shù)調(diào)用把輸入的小寫字符串變?yōu)榇髮懽址某绦颉?/p>

      程序文件名為7_11.c,源程序清單如下:

      #include lowch_to_upch(char *str){ while(*str!='