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

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

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

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

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

      C語(yǔ)言程序設(shè)計(jì)(1,2)實(shí)驗(yàn)報(bào)告

      時(shí)間:2019-05-12 11:25:17下載本文作者:會(huì)員上傳
      簡(jiǎn)介:寫(xiě)寫(xiě)幫文庫(kù)小編為你整理了多篇相關(guān)的《C語(yǔ)言程序設(shè)計(jì)(1,2)實(shí)驗(yàn)報(bào)告》,但愿對(duì)你工作學(xué)習(xí)有幫助,當(dāng)然你在寫(xiě)寫(xiě)幫文庫(kù)還可以找到更多《C語(yǔ)言程序設(shè)計(jì)(1,2)實(shí)驗(yàn)報(bào)告》。

      第一篇:C語(yǔ)言程序設(shè)計(jì)(1,2)實(shí)驗(yàn)報(bào)告

      實(shí)驗(yàn)一 C程序的運(yùn)行環(huán)境和方法

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

      1.了解所用的計(jì)算機(jī)系統(tǒng)。

      2.了解在該系統(tǒng)上如何進(jìn)行編輯、編譯、連接和運(yùn)行一個(gè)C程序。3.通過(guò)運(yùn)行簡(jiǎn)單的C程序了解C程序的特點(diǎn)。

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

      1.熟悉所用的系統(tǒng)。了解Windows資源管理器的使用方法:文件的查看、復(fù)制、運(yùn)行等方法,Visual C++所在目錄,文本文件的建立方法。2.進(jìn)入Visual C++,并新建一個(gè)C++源程序文件。

      3.熟悉Visual C++的集成環(huán)境,了解各菜單項(xiàng)有哪些子菜單。4.輸入下面的程序(教材中的例1.1),注意區(qū)分大小寫(xiě)。

      #include void main(){ printf(“This is a C program.n”);} 編譯并運(yùn)行程序。結(jié)果為:

      5.關(guān)閉工作區(qū),新建一個(gè)程序,然后對(duì)教材中的例1.2重復(fù)4中的操作(即只將程序改為例1.2中的程序,其它操作步驟相同)。其程序?yàn)椋?/p>

      #include int main(){ int a,b,sum;a=123;b=456;sum=a+b;printf(“sum is %dn”,sum);return 0;} 運(yùn)行結(jié)果為:

      6.關(guān)閉工作區(qū),新建一個(gè)程序,然后輸入并運(yùn)行一個(gè)需要在運(yùn)行時(shí)輸入數(shù)據(jù)的程序

      #include void main(){int a,b,c;int max(int x,int y);printf(“input a and b:n”);scanf(“%d,%d”,&a,&b);c=max(a,b);printf(“nmax=%dn”,c);} int max(int x,int y){int z;if(x>y)z=x;else z=y;return(z);}(1)運(yùn)行程序,若程序有錯(cuò),則修改錯(cuò)誤后繼續(xù)運(yùn)行程序,當(dāng)沒(méi)有錯(cuò)誤信息時(shí)輸入:2,5并按Enter鍵,查看運(yùn)行結(jié)果。

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

      (2)將程序的第三行改為:int a;b;c;然后按F9看結(jié)果如何,將其修改為int a,b,c;將子程序max的第3,4行合并為一行,運(yùn)行程序,看結(jié)果是否相同。將程序的第三行改為:int a;b;c;運(yùn)行結(jié)果為:

      將子程序max的第3,4行合并為一行,運(yùn)行程序,其結(jié)果相同,結(jié)果為:

      7.運(yùn)行一個(gè)自己編寫(xiě)的程序,程序的功能是輸出兩行文字。其程序?yàn)椋?/p>

      #include void main(){ printf(“我是中國(guó)人!n”);printf(“我深深的愛(ài)著我的祖國(guó)!n”);} 運(yùn)行結(jié)果為:

      實(shí)驗(yàn)二 數(shù)據(jù)類型、運(yùn)算符和表達(dá)式

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

      1.掌握C語(yǔ)言數(shù)據(jù)類型,熟悉如何定義一個(gè)整型、字符型和實(shí)型的變量,以及對(duì)它們賦值的方法。

      2.掌握不同數(shù)據(jù)類型之間賦值的規(guī)律。

      3.學(xué)會(huì)使用C的有關(guān)算術(shù)運(yùn)算符,以及包含這些運(yùn)算符的表達(dá)式,特別是自加(++)和自減(――)運(yùn)算符的使用。

      4.進(jìn)一步熟悉C程序的編輯、編譯、連接和運(yùn)行的過(guò)程。

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

      1.輸入并運(yùn)行下面的程序 #include void main(){char c1,c2;c1='a';c2='b';printf(“%c %c”,c1,c2);}(1)運(yùn)行此程序 其結(jié)果為:

      (2)加入下面的一個(gè)語(yǔ)句作為“}”前的最后一個(gè)語(yǔ)句:

      printf(“%d,%dn”,c1,c2);其結(jié)果為:

      (3)將第3行改為:

      int c1,c2;然后再運(yùn)行程序,并觀察結(jié)果是否相同。相同,其結(jié)果為:

      (4)將第3行改為int c1,c2;將第4,5行依次改為:

      c1=a;c2=b;c1=“a”;c2=“b” c1=300;c2=400;每改為一次后運(yùn)行程序,觀察結(jié)果。其程序?yàn)椋?#include void main(){int c1,c2;c1='a',c2='b';c1=300;c2=400;printf(“%c %cn”,c1,c2);printf(“%d %dn”,c1,c2);} 其結(jié)果為:

      2.分析教材第3章習(xí)題3.5中的程序的運(yùn)行結(jié)果,然后輸入該程序并運(yùn)行,將運(yùn)行結(jié)果與前面分析的結(jié)果對(duì)比。其程序?yàn)椋?/p>

      #include int 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);printf(“a=%d,b=%d,x=%f,y=%f,c1=%c,c2=%cn”,a,b,x,y,c1,c2);return 0;} 其運(yùn)行結(jié)果為:

      3.輸入并運(yùn)行下面的程序

      #include void main(){int a,b;unsigned c,d;long e,f;a=100;b=-100;e=50000;f=32767;c=a;d=b;printf(“%d,%dn”,a,b);printf(“%u,%un”,a,b);printf(“%u,%un”,c,d);c=a=e;d=b=f;printf(“%d,%dn”,a,b);printf(“%u,%un”,c,d);} 請(qǐng)對(duì)照程序和運(yùn)行結(jié)果分析: 運(yùn)行結(jié)果為:

      (1)將一個(gè)負(fù)整數(shù)賦給一個(gè)無(wú)符號(hào)的變量,會(huì)得到什么結(jié)果。畫(huà)出它們?cè)趦?nèi)存中的表示形式。

      (2)將一個(gè)大于32767的長(zhǎng)整數(shù)賦給一個(gè)整型變量,會(huì)得到什么結(jié)果。畫(huà)出它們?cè)趦?nèi)存中的表示形式。

      (3)將一個(gè)長(zhǎng)整數(shù)賦給無(wú)符號(hào)的變量,會(huì)得到什么結(jié)果。畫(huà)出它們?cè)趦?nèi)存中的表示形式。4.輸入習(xí)題3.10(1)運(yùn)行程序,注意i,j,m,n的值。(2)將第4,5行改為:

      m=i++;n=++j;再運(yùn)行。(3)將程序改為:

      #include void main(){int i,j;i=8;j=10;printf(“%d,%dn”,++i,++j);i=8;j=10;printf(“%d,%dn”,i++,j++);i=8;j=10;printf(“%d,%dn”,++i,i);i=8;j=10;printf(“%d,%dn”,i++,i);} 運(yùn)行程序并分析運(yùn)行結(jié)果。其結(jié)果為:

      5.按習(xí)題3.6的要求編程并上機(jī)運(yùn)行:

      要將“China”譯成密碼,密碼規(guī)律是:用原來(lái)的字母后面第4個(gè)字母代替原來(lái)的字母。例如,字母“A”后面第4個(gè)字母是“E”,用“E”代替“A”,因此,“China”應(yīng)譯為“Glmre”。請(qǐng)編一程序,用賦初值的方法使c1、c2、c3、c4、c5這5個(gè)變量的值分別為’C’,'h', 'i','n', 'a',經(jīng)過(guò)計(jì)算,使c1、c2、c3、c4、c5分別變?yōu)椋?G','l','m',r','e',并輸出.程序提示:

      main函數(shù)算法如下:

      定義char型變量 c1,c2,c3,c4,c5;給字符型變量賦值 c1=c1+4;c2=c2+4;c3=c3+4;c4=c4+4;c5=c5+4;輸出c1,c2,c3,c4,c5 其程序?yàn)椋?#include int main(){char c1='C',c2='h',c3='i',c4='n',c5='a';c1=c1+4;c2=c2+4;c3=c3+4;c4=c4+4;c5=c5+4;printf(“password is %c%c%c%c%cn”,c1,c2,c3,c4,c5);return 0;} 其運(yùn)行結(jié)果為:

      第二篇:《C語(yǔ)言程序設(shè)計(jì)》實(shí)驗(yàn)報(bào)告

      指導(dǎo)教師學(xué)院專業(yè)班級(jí)學(xué)號(hào)姓名實(shí)驗(yàn)室

      實(shí)驗(yàn)題目:

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

      實(shí)驗(yàn)內(nèi)容及步驟:

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

      心得體會(huì):

      第三篇:Java語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告1

      《Java語(yǔ)言程序設(shè)計(jì)》實(shí)驗(yàn)報(bào)告一

      學(xué)生姓名: 孫文琳

      班級(jí): 信息111

      學(xué)號(hào):201152275119 實(shí)驗(yàn)地點(diǎn): 經(jīng)管中心證券實(shí)驗(yàn)室

      指導(dǎo)教師:趙利平實(shí)驗(yàn)日期:

      2012.3.6

      實(shí)驗(yàn)環(huán)境:Windows 2000+JDK1.6

      1.實(shí)驗(yàn)?zāi)康模?)養(yǎng)成良好的編程風(fēng)格;(2)掌握字符數(shù)據(jù)類型及其運(yùn)算;

      (3)熟悉從輸入對(duì)話框獲取輸入和從控制臺(tái)獲取輸入兩種方法;(4)掌握布爾運(yùn)算符;(5)掌握分支語(yǔ)句if和switch。

      2.實(shí)驗(yàn)內(nèi)容(1)在控制臺(tái)下求兩個(gè)實(shí)數(shù)的最大值:完成實(shí)驗(yàn)教材P22程序清單2-2;(2)

      3.實(shí)驗(yàn)過(guò)程

      報(bào)告撰寫(xiě)具體要求:上述實(shí)驗(yàn)內(nèi)容要求寫(xiě)出源代碼及運(yùn)行結(jié)果。實(shí)驗(yàn)內(nèi)容(1)://CompareTwoNumbersl.java

      import java.util.Scanner;

      public class CompareTwoNumbers1{

      double number1,number2;

      Scanner scanner;

      public CompareTwoNumbers1(){

      System.out.println(“請(qǐng)輸入兩個(gè)數(shù)字:”);

      scanner=new Scanner(System.in);

      number1=scanner.nextDouble();

      number2=scanner.nextDouble();

      System.out.println(“較大的數(shù)是:”+(number1>number2?number1:number2));

      }

      public static void main(String args[]){ CompareTwoNumbers1 ct=new CompareTwoNumbers1();System.exit(0);}

      }

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

      //DollarConvertor.java import java.util.Scanner;public class DollarConvertor{ public static void main(String args[]){ System.out.println(“請(qǐng)輸入美元數(shù):”);Scanner scanner=new Scanner(System.in);double i=scanner.nextDouble();double result=i*6.2875;System.out.println(“對(duì)應(yīng)的人民幣數(shù):”+result);} }

      實(shí)驗(yàn)內(nèi)容(3): public class MultiplyList1{ public static void main(String args[]){ String output=“";for(int row=1;row<=9;row++){ for(int col=1;col<=row;col++)output+=col+”*“+row+”=“+(row*col)+” “;output+=”n";} System.out.println(output);System.exit(0);}}

      4.實(shí)驗(yàn)總結(jié)

      心得體會(huì):做實(shí)驗(yàn)要小心翼翼,注意Java大小區(qū)分

      第四篇:C語(yǔ)言程序設(shè)計(jì) 實(shí)驗(yàn)報(bào)告2.3

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

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

      專業(yè)

      班級(jí)

      日期

      11月26日

      成績(jī)

      實(shí)驗(yàn)組別

      第 2(2.3)次實(shí)驗(yàn)

      指導(dǎo)教師

      李開(kāi)

      學(xué)生姓名

      學(xué)號(hào)

      同組人姓名

      實(shí)驗(yàn)名稱 流程控制實(shí)驗(yàn)

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

      (1)掌握復(fù)合語(yǔ)句、if語(yǔ)句、switch語(yǔ)句的使用,熟練掌握f(shuō)or、while、do-while三種基本的循環(huán)控制語(yǔ)句的使用,掌握重復(fù)循環(huán)技術(shù),了解轉(zhuǎn)移語(yǔ)句與標(biāo)號(hào)語(yǔ)句。

      (2)熟練運(yùn)用for、while、do-while語(yǔ)句來(lái)編寫(xiě)程序。(3)練習(xí)轉(zhuǎn)移語(yǔ)句和標(biāo)號(hào)語(yǔ)句的使用。

      (4)使用集成開(kāi)發(fā)環(huán)境中的調(diào)試功能:?jiǎn)尾綀?zhí)行、設(shè)置斷點(diǎn)、觀察變量值。

      二、實(shí)驗(yàn)任務(wù)

      3.2 實(shí)驗(yàn)內(nèi)容及要求 1.源程序改錯(cuò)

      下面是計(jì)算s=n!的源程序,在這個(gè)源程序中存在若干語(yǔ)法和邏輯錯(cuò)誤。要求在計(jì)算機(jī)上對(duì)這個(gè)例子程序進(jìn)行調(diào)試修改,使之能夠正確完成指定任務(wù)。例如,8!=40320。#include void main(){ int i,n,s=1;printf(“Please enter n:”);scanf(“%d”,n);for(i=1,i<=n,i++)s=s*i;printf(“%d!= %d”,n,s);}

      2.源程序修改替換

      (1)修改第1題,分別用while和do-while語(yǔ)句替換for語(yǔ)句。

      (2)修改第1題,輸入改為“整數(shù)S”,輸出改為“滿足n!≥S的最小整數(shù)n”。例如輸入整數(shù)40310,輸出結(jié)果為n=8。

      3.程序設(shè)計(jì)

      (1)假設(shè)工資稅金按以下方法計(jì)算:x < 1000元,不收取稅金;1000 ≤ x < 2000,收取5%的稅金;2000 ≤ x < 3000,收取10%的稅金;3000 ≤ x < 4000,收取15%的稅金;4000 ≤ x < 5000,收取20%的稅金;x>5000,收取25%的稅金。輸入工資金額,輸出應(yīng)收取稅金額度,要求分別用if語(yǔ)句和switch語(yǔ)句來(lái)實(shí)現(xiàn)。

      (2)將輸入的一行字符復(fù)制到輸出,復(fù)制過(guò)程中將一個(gè)以上的空格字符用一個(gè)空格代替。

      (3)打印如下楊輝三角形。

      /*第0行 */ 1 1 /*第1行 */ 1 2 1 /*第2行 */ 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1 1 7 21 35 35 21 7 1 1 8 28 56 70 56 28 8 1 1 9 36 84 126 126 84 36 9 1

      jjCCii每個(gè)數(shù)據(jù)值可以由組合計(jì)算(表示第i行第j列位置的值),而的計(jì)算如下:

      Ci0?(i=0,1,2,?)Cij?Cij?1*(i-j?1)/ j(j=0,1,2,3,?,i)本程序中為了打印出金字塔效果,要注意空格的數(shù)目。一位數(shù)之間是3個(gè)空格,兩位數(shù)之間有2個(gè)空格,3位數(shù)之間只有一個(gè)空格,程序編制過(guò)程中要注意區(qū)分。

      (4)編寫(xiě)一個(gè)程序,將用戶輸入的任意正整數(shù)逆轉(zhuǎn),例如,輸入1234,輸出4321。

      4.選做題

      32f(x)?3x?4x?5x?13?0滿足精度e=10-6 編寫(xiě)一個(gè)程序,用牛頓迭代法求方程的一個(gè)近似根,并在屏幕上輸出所求近似根。

      ?x0?a?x?xk?f(xk)/f'(xk),其中f'(x)是牛頓迭代法:求方程近似根的迭代公式為?k?1函數(shù)f(x)的導(dǎo)函數(shù)。牛頓迭代法首先任意設(shè)定的一個(gè)實(shí)數(shù)a來(lái)作為近似根的迭代初值x0,然后用迭代公式計(jì)算下一個(gè)近似根x1。如此繼續(xù)迭代計(jì)算x2, x3, ?, xn, 直到xn?xn?1?精度e

      ,此時(shí)值xn即為所求的近似根。

      2.3:

      1.源程序改錯(cuò):(源程序)

      #include void main(){ int i,n,s=1;printf(“Please enter n:”);scanf(“%d”,n);for(i=1,i<=n,i++)s=s*i;printf(“%d!= %d”,n,s);} 運(yùn)行結(jié)果:

      (修改后程序)#include int main(void){

      int i,n,s=1;

      printf(“Please enter n:”);

      scanf(“%d”,&n);

      for(i=1;i<=n;i++)

      s=s*i;

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

      return 0;}

      2.源程序修改替換

      (1)修改第1題,分別用while和do-while語(yǔ)句替換for語(yǔ)句。(while)

      #include int main(void){ int i=1,n,s=1;printf(“Please enter n:”);scanf(“%d”,&n);while(i<=n){ s=s*i;i++;} printf(“%d!= %d”,n,s);return 0;}

      (do-while)#include int main(void){ int i=1,n,s=1;printf(“Please enter n:”);scanf(“%d”,&n);do {s=s*i;i++;} while(i<=n);printf(“%d!= %d”,n,s);return 0;}

      (2)修改第1題,輸入改為“整數(shù)S”,輸出改為“滿足n!≥S的最小整數(shù)n”。例如輸入整數(shù)40310,輸出結(jié)果為n=8。

      #include int main(void){ int i,n=1,s;printf(“Please enter s:”);scanf(“%d”,&s);for(i=1;n= %d”,i-1,s);return 0;}

      3.程序設(shè)計(jì)

      (1)假設(shè)工資稅金按以下方法計(jì)算:x < 1000元,不收取稅金;1000 ≤ x < 2000,收取5%的稅金;2000 ≤ x < 3000,收取10%的稅金;3000 ≤ x < 4000,收取15%的稅金;4000 ≤ x < 5000,收取20%的稅金;x>5000,收取25%的稅金。輸入工資金額,輸出應(yīng)收取稅金額度,要求分別用if語(yǔ)句和switch語(yǔ)句來(lái)實(shí)現(xiàn)。

      (switch語(yǔ)句)#include void main(){

      printf(“輸入你的工資 ”);

      int t;

      float x;

      scanf(“%f”,&x);

      t =(int)(x/1000.0);

      switch(t){

      case 0:

      printf(“no tax!n”);

      break;

      case 1:

      printf(“%fn”,0.05*x);

      break;

      case 2:

      printf(“%fn”,0.10*x);

      break;

      case 3:

      printf(“%fn”,0.15*x);

      break;

      case 4:

      printf(“%fn”,0.20*x);

      break;

      case 5:

      printf(“%fn”,0.25*x);

      break;

      default:

      printf(“%fn”,0.25*x);

      break;

      }

      return 0;}

      (if語(yǔ)句)

      #include “stdio.h” int main(int argc, char *argv[]){

      float x, tax;

      scanf(“%f”, &x);

      if(x<0)

      {

      printf(“Wrong input.n”);

      return 1;

      }

      if(x<1000)

      {

      tax = 0.00;

      }

      else if(x>=1000&&x<2000)

      {

      tax = 0.05 * x;

      }

      else if(x>=2000&&x<3000)

      {

      tax = 0.10 * x;

      }

      else if(x>=3000&&x<4000)

      {

      tax = 0.15 * x;

      }

      else if(x>=4000&&x<5000)

      {

      tax = 0.20 * x;

      }

      else

      {

      tax = 0.25 * x;

      } printf(“Tax of salary %.2f YUAN is %.2f YUAN.n”, x, tax);}

      (2)將輸入的一行字符復(fù)制到輸出,復(fù)制過(guò)程中將一個(gè)以上的空格字符用一個(gè)空格代替。

      #include int main(){ char c,flag;for(flag=0;(c=getchar())!='n';){

      if(c==' '){

      if(flag==0){

      putchar(c);

      flag=1;

      }

      }

      else{

      putchar(c);

      flag=0;

      }

      }

      return 0;}

      (3)打印如下楊輝三角形。

      /*第0行 */ 1 1 /*第1行 */ 1 2 1 /*第2行 */ 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1 1 7 21 35 35 21 7 1 1 8 28 56 70 56 28 8 1 1 9 36 84 126 126 84 36 9 1

      jjCCii每個(gè)數(shù)據(jù)值可以由組合計(jì)算(表示第i行第j列位置的值),而的計(jì)算如下:

      Ci0?1

      (i=0,1,2,?)Cij?Cij?1*(i-j?1)/ j(j=0,1,2,3,?,i)本程序中為了打印出金字塔效果,要注意空格的數(shù)目。一位數(shù)之間是3個(gè)空格,兩位數(shù)之間有2個(gè)空格,3位數(shù)之間只有一個(gè)空格,程序編制過(guò)程中要注意區(qū)分。

      #include int Combination(int a,int b);int Triangle(int n);int main(void){ printf(“input the number for triangle of Yanghuin”);Triangle(9);} int Combination(int a,int b){ int t,p,s=1,q=1;if(a==0||b==0){ printf(“%4d”,q);} else{ for(t=b-a+1;t<=b;t++){ s=s*t;} for(p=1;p<=a;p++){ q=q*p;} printf(“%4d”,s/q);} } int Triangle(int n){ int i,o,u;for(i=0;i<=n;i++){ for(u=1;u<41-i*2;u++){ printf(“ ”);} for(o=0;o<=i;o++){ Combination(o,i);} printf(“n”);} }

      (4)編寫(xiě)一個(gè)程序,將用戶輸入的任意正整數(shù)逆轉(zhuǎn),例如,輸入1234,輸出4321。#include #include int main(void){ int a,i,c,n=0;char m;for(a=0;m=getchar(),m!='n';a++){ c=m-'0';n=n+c*pow(10,a);} printf(“%dn”,n);}

      4.選做題

      -6 編寫(xiě)一個(gè)程序,用牛頓迭代法求方程f(x)?3x?4x?5x?13?0滿足精度e=10的一個(gè)近似根,并在屏幕上輸出所求近似根。

      32?x0?a?x?xk?f(xk)/f'(xk),其中f'(x)是牛頓迭代法:求方程近似根的迭代公式為?k?1函數(shù)f(x)的導(dǎo)函數(shù)。牛頓迭代法首先任意設(shè)定的一個(gè)實(shí)數(shù)a來(lái)作為近似根的迭代初值x0,然后用迭代公式計(jì)算下一個(gè)近似根x1。如此繼續(xù)迭代計(jì)算x2, x3, ?, xn, 直到xn?xn?1?精度e,此時(shí)值xn即為所求的近似根。

      #include #include double f(double x);double f_(double x);double root(double m);int main(){ double m=1;printf(“%lfn”,root(m));return 0;}

      double f(double x){ return(3*x*x*x-4*x*x-5*x+13);} double f_(double x){ return(9*x*x-8*x-5);} double root(double m){ double n;n=m-f(m)/f_(m);if(fabs(m-n)<=0.000001){ return n;} else{ return root(n);} }

      四、實(shí)驗(yàn)體會(huì)

      了解更多有關(guān)C語(yǔ)言的語(yǔ)法知識(shí)和循環(huán)結(jié)構(gòu)以及熟練了調(diào)試過(guò)程。

      第五篇:C語(yǔ)言程序設(shè)計(jì)—函數(shù)—實(shí)驗(yàn)報(bào)告

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

      專業(yè)

      軟 件 工 程

      班級(jí)

      X

      學(xué)號(hào)_ XXXXXXXXXXX_

      姓名

      實(shí)驗(yàn)日期:201X年X月X日

      報(bào)告退發(fā)(訂正、重做)

      課程

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

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

      數(shù)

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

      ① 熟練掌握C程序中函數(shù)的定義; ② 掌握函數(shù)的調(diào)用,函數(shù)參數(shù)的傳遞; ③ 熟練掌握函數(shù)的嵌套調(diào)用和遞歸調(diào)用;

      二、實(shí)驗(yàn)環(huán)境(描述實(shí)驗(yàn)的軟件、硬件環(huán)境)

      ① 軟件環(huán)境:windows xp/win7等操作系統(tǒng),Microsoft Visual C++ 6.0編譯器; ② 硬件環(huán)境:PC機(jī)一臺(tái)

      三、實(shí)驗(yàn)內(nèi)容、步驟和結(jié)果分析

      題目一:編寫(xiě)一個(gè)用來(lái)判斷質(zhì)數(shù)(素?cái)?shù))的函數(shù)。

      要求:

      (1)在main函數(shù)中調(diào)用該函數(shù)對(duì)輸入的數(shù)值進(jìn)行判斷,并輸出判斷結(jié)果;(2)當(dāng)輸入數(shù)值<=1時(shí),停止輸入和判斷。

      #include #include /*=======判斷質(zhì)數(shù)(素?cái)?shù))的函數(shù)=======*/ int judgePrime(int n){

      } /*=======判斷質(zhì)數(shù)(素?cái)?shù))的函數(shù)=======*/ int main(){

      printf(“n提示:輸入一個(gè)數(shù)字來(lái)判斷是否是質(zhì)數(shù)(素?cái)?shù)),當(dāng)輸入數(shù)值<=1時(shí),停止輸入和判斷。nn”);for(int num=2,temp;num>1;){ printf(“Please enter a number:”);for(int i=2;i<=sqrt(n);i++)//一個(gè)數(shù)n如果是合數(shù),那么它的所有的因子不超過(guò)n的開(kāi)方 {

      } return 1;if(n%i==0)return 0;else continue;

      }

      } scanf(“%d”,&num);if(num<=1)break;//當(dāng)輸入數(shù)值<=1時(shí),停止輸入和判斷 temp=judgePrime(num);if(temp==0)printf(“%d is not a prime numner!nn”,num);else printf(“%d is a prime numner!nn”,num);return 0;

      題目二:使用習(xí)題1中所編寫(xiě)的判斷質(zhì)數(shù)的函數(shù)驗(yàn)證哥德巴赫(Goldbach)的1+1猜想-----任何一個(gè)>=6的偶數(shù)都可以表示成兩個(gè)素?cái)?shù)之和

      要求:

      ① 屏幕提示用戶一個(gè)>=6的偶數(shù);

      ② 輸出這個(gè)偶數(shù)等于2個(gè)素?cái)?shù)之和的表達(dá)式; ③ 當(dāng)輸入數(shù)據(jù)<6或者不是偶數(shù)時(shí),停止輸入和驗(yàn)證。

      #include #include /*=======判斷質(zhì)數(shù)(素?cái)?shù))的函數(shù)=======*/ int judgePrime(int n){

      for(int i=2;i<=sqrt(n);i++)//一個(gè)數(shù)n如果是合數(shù),那么它的所有的因子不超過(guò)n的開(kāi)方 {

      if(n%i==0)return 0;else continue;

      } } return 1;//true-->1,false-->0 /*=======驗(yàn)證哥德巴赫猜想的函數(shù)(調(diào)用judgePrime)=======*/ int proveGoldbach(int m){

      } int main(){

      }

      printf(“n提示:輸入一個(gè)偶數(shù)來(lái)驗(yàn)證哥德巴赫猜想,當(dāng)輸入數(shù)值<6時(shí),停止輸入和判斷。nn”);for(int num=6;num>=6;){

      } int temp;printf(“Please enter a number:”);scanf(“%d”,&num);temp=proveGoldbach(num);if(temp==0)//當(dāng)輸入小于6或者不是偶數(shù)時(shí)結(jié)束 return 0;printf(“==================================”);if(m<6||m%2!=0){

      } if(judgePrime(j)==1&&judgePrime(m-j)==1)//判斷兩數(shù)是否都等于質(zhì)數(shù) { } printf(“t%d = %d + %dn”,m,j,m-j);return 0;//判斷是否大于等于6或者不是偶數(shù) for(int j=2;j<(m/2);j++)

      題目三:編寫(xiě)一個(gè)求階乘的函數(shù),接著調(diào)用該函數(shù)實(shí)現(xiàn)組合的求解要求:

      ① 提示用戶輸入n和m的數(shù)值; ② 輸出的 結(jié)果

      #include /*=======階乘函數(shù)=======*/ int fac(int n){

      } /*=======組合函數(shù)=======*/ int combine(int m,int n){ } /*=======main函數(shù)=======*/ void main(){

      int m,n;int res;printf(“n提示:這是求組合求和公式的函數(shù),輸入兩個(gè)整數(shù)(分別為上標(biāo)和下標(biāo))nn”);scanf(“%d%d”,&m,&n);if(m>n)//判斷上標(biāo)大于小標(biāo)重新輸入 goto loop;return fac(n)/(fac(n-m)*fac(m));int f;if(n<0)printf(“n<0,data error!”);f=1;else if(n==0||n==1)else f=fac(n-1)*n;return f;loop:printf(“Please enter two numbers:”);

      }res=combine(m,n);printf(“tResult is %dn”,res);

      題目四:編寫(xiě)一個(gè)求矩陣中最大元素以及最小元素的函數(shù)selectMaxAndMin(),在main函數(shù)中調(diào)用該函數(shù)

      要求:

      最大值和最小值的輸出操作,可以放在selectMaxAndMin()函數(shù)中

      #include #define ROW 4//矩陣的行 #define COLUMN 4//矩陣的列

      /*=======在矩陣中選擇最大最小數(shù)的函數(shù)=======*/ void selectMaxAndMin(int arry[ROW][COLUMN])//用指針更方便 {

      int tempMax,tempMin;if(arry[0][0]>arry[0][1])//賦初始值 {

      } else {

      } for(int i=0;i

      }

      } for(int j=0;j

      } if(arry[i][j]>tempMax){ } if(arry[i][j]

      } int mat[ROW][COLUMN];printf(“Please enter a %d X %d matrix:n”,ROW,COLUMN);for(int i=0;i

      } selectMaxAndMin(mat);return 0;for(int j=0;j

      題目五:編寫(xiě)一個(gè)編碼原文的函數(shù),對(duì)于給定的內(nèi)容,按照敵方的規(guī)律對(duì)其進(jìn)行編碼

      要求:

      某日,我軍某部截獲了一份敵方電報(bào),經(jīng)過(guò)仔細(xì)分析后發(fā)現(xiàn):該電文中所有的字母字符都是經(jīng)過(guò)某種運(yùn)算后得到的,然那些非字母字符則沒(méi)有經(jīng)過(guò)任何處理。例如,原文中的字符A對(duì)應(yīng)電文中的字符E,原文中的字符b對(duì)應(yīng)電文中的字符f,原文中的字符W對(duì)應(yīng)電文中的字符A,原文中的字符!在電文中仍為!

      #include #define SIZE 20

      //定義大小 /*=======密碼翻譯的函數(shù)=======*/ char trans(char a){

      } //主函數(shù) int main(void){

      printf(“請(qǐng)輸入原文:nnn”);char str[SIZE];gets(str);printf(“nnn”);if((a>='a'&&a<='v')||(a>='A'&&a<='V')){ } else {

      } if(a>='w'||a>='W'){ } else { return a;} return a-22;return a+4;

      }printf(“正在破解……nnn”);printf(“破譯的原文是:”);for(int i=0;i<20;i++){

      } printf(“n”);str[i]=trans(str[i]);if(str[i]=='