www.日本精品,久久中文视频,中文字幕第一页在线播放,香蕉视频免费网站,老湿机一区午夜精品免费福利,91久久综合精品国产丝袜长腿,欧美日韩视频精品一区二区

C語(yǔ)言實(shí)習(xí)報(bào)告

發(fā)布時(shí)間:2020-07-18 來(lái)源: 工作計(jì)劃 點(diǎn)擊:

 設(shè)計(jì)報(bào)告

 一,

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

 通過上機(jī)實(shí)習(xí), , 熟練掌握循環(huán)語(yǔ)句、選擇語(yǔ)句、指針以及結(jié)構(gòu)體得運(yùn)用技巧。在實(shí)習(xí)中通過實(shí)際操作, , 編寫程序, , 發(fā)現(xiàn)問題,最后解決問題, ,對(duì) 提升對(duì) c c 語(yǔ)言實(shí)用性得理解, , 在實(shí)踐中鞏固各知識(shí)點(diǎn)。

 C C 語(yǔ)言就是一種計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言。它既具有高級(jí)語(yǔ)言得特點(diǎn), , 又具有匯編語(yǔ)言得特點(diǎn), ,上機(jī)實(shí)習(xí)可以幫助我們更好地理解這種結(jié)構(gòu)式得中級(jí)語(yǔ)言以及其各式各樣得數(shù)據(jù)類型與高效率得運(yùn)算程序,為我們進(jìn)一步學(xué)習(xí)C ++ 打下堅(jiān)實(shí)基礎(chǔ)。

 同時(shí), , 在實(shí)習(xí)過程中,通過互相發(fā)現(xiàn)問題,共同解決問題, , 不僅鍛煉了我們得合作能力 ,而且也讓我們發(fā)現(xiàn)了一些自己得個(gè)人誤區(qū)以及其她人容易犯得錯(cuò)誤, , 從而在今后得學(xué)習(xí)中更加謹(jǐn)慎, , 達(dá)到事半功倍得效果; ; 通過詢問老師, , 也讓我們養(yǎng)成了不恥下問得好習(xí)慣,這將很有利于以后得學(xué)習(xí)。

 閑樂-一個(gè)人閑。不如大家一塊兒樂 二,總體設(shè)計(jì):

  1,學(xué)生成績(jī)排名

 1 1 ,流程圖: :

 ?假?

  真?

  假?

  真?

 <通過冒泡法對(duì)數(shù)組進(jìn)行排序> 〈測(cè)試時(shí)由于循環(huán)語(yǔ)句循環(huán)次數(shù)得錯(cuò)誤導(dǎo)致部分?jǐn)?shù)據(jù)沒有排序,修改FOR語(yǔ)言中得條件即可調(diào)試成功> 2, 程序:

。#閚clude〈stdio、h> int main()

。 ,]11[a 組數(shù)個(gè)一義定//

  ;3pmet,2pmet,1pmet,c,b,t,j,i,]11[a tni?用以存放學(xué)生得成績(jī)

 printf("從鍵盤輸入10 個(gè)學(xué)生成績(jī):\n");

 )++i;01<i;0=i(rof? ? scanf("%d”,&a[i]);

  //輸入10 個(gè)學(xué)生成績(jī)

。鎜r(i=0;i<9;i++)

 ? for(j=0;j〈9—i;j++)

 ?)]1+j[a<]j[a(fi?

 ? {t=a[j];a[j]=a[j+1];a[j+1]=t;}

  //采用冒泡法,將學(xué)生成績(jī)按照從高到低進(jìn)行排序

  printf("10 個(gè)學(xué)生成績(jī)數(shù)組:\n");

。鎜r(i=0;i〈10;i++)

  printf("%5d”,a[i]);

  printf(”\n");

 ;)"n\績(jī)成得生學(xué)個(gè)一入輸再"(ftnirp?

 scanf("%d",&b);

 //再輸入一個(gè)學(xué)生得成績(jī)

  ;]9[a=c? if(b<c)

 //將此成績(jī)按照排序規(guī)律插入原學(xué)生成績(jī)數(shù)組

。籦=]01[a?? else

 {for(i=0;i<10;i++)

 I=0 I<11?賦值 I 由 0 變到 8 執(zhí)行 9 次循環(huán)

  進(jìn)行 9-I 次比較

  真

 a[j]>a[I+I]假

  a[j]

  a[j+1] 輸出 a[0]到 a[9] 再輸入一個(gè)學(xué)生得成績(jī) 冒泡法排序 輸出 a[0]到 a[10] I 由 0 變到 4 進(jìn)行 5 次循環(huán) a[i]

 a[10-i] I=0 I<10?輸出 結(jié)束

 {if(a[i]〈b)

 {

。籦=]i[a;]i[a=1pmet?

 )++j;11〈j;1+i=j(luò)(rof?

  {temp2=a[j];a[j]=temp1;temp1=temp2;

 }break;

 }? }? }

  printf(”11 個(gè)學(xué)生成績(jī)數(shù)組:\n”);

  //輸入 11 個(gè)學(xué)生成績(jī)

  for(i=0;i<11;i++)

 ;)]i[a,"d5%"(ftnirp?

。餽intf("\n”);

  for(i=0;i〈5;i++)

。藕眯虻贸煽(jī)單進(jìn)行反序存放

。

 ;]i[a=3pmet??

 ;]i—01[a=]i[a? ;3pmet=]i—01[a?? }

  printf(”排好序得成績(jī)單進(jìn)行反序存放為:\n");

  for(i=0;i<11;i++)

  //輸出反序存放后得學(xué)生成績(jī)數(shù)組

 ;)]i[a,"d5%"(ftnirp?

 printf(”\n");

  return 0; } 3, 運(yùn)行結(jié)果:

  2,根據(jù)條件進(jìn)行學(xué)生成績(jī)排名 1, 流程圖: Sort1

  sort2

  ?假?

  真?

  賦值 I 由 0 變到 8 執(zhí)行 9 次循環(huán)

  進(jìn)行 9-I 次比較

  真

 a[j]>a[I+I]假

  a[j]

  a[j+1] 輸出 a[0]到 a[9] I<10?I=0,i++ 輸入 n I=0,i++ 賦值 I 由 0 變到 n-1 執(zhí)行 n 次循環(huán)

  進(jìn)行 n-1-I 次比較

  真

 a[j]>a[I+I]假

  a[j]

  a[j+1] 輸出 a[0]到 a[n-1] I<n

  Sort3

 假? ?

 假? 真?

  ?真?

  2 ,程序:

 #include〈stdio、h〉 void sort1(int a[10])

  //定義函數(shù) {

  int i,j,t;

 ;)"n\:績(jī)成生學(xué)個(gè)01入輸"(ftnirp?

 for(i=0;i<10;i++)

  scanf(”%d”,&a[i]);

  //輸入 n 個(gè)學(xué)生成績(jī)

  for(i=0;i 〈10;i++)

  //冒泡法對(duì)n個(gè)數(shù)字排序

  for(j=0;j<9-i;j++)

 ?? if(a[j]〈a[j+1])

 ?? {t=a[j];a[j]=a[j+1];a[j+1]=t;}

 printf("10 個(gè)學(xué)生成績(jī)從高到低排名就是:\n");

  for(i=0;i〈10;i++)

 //輸出結(jié)果

  ;)]i[a,”d5%"(ftnirp? ;)”n\”(ftnirp? } void sort2(int a[],int n)

  //定義函數(shù) {

 int i,j,t;

  printf(”請(qǐng)輸入學(xué)生個(gè)數(shù) n:\n");

  scanf("%d",&n);

 printf("輸入 n 個(gè)學(xué)生成績(jī):\n");

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

;)]i[a&,"d%"(fnacs??

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

  //冒泡法對(duì) n 個(gè)數(shù)字排序 I<n 輸入 n I=0,i++ 賦值 輸入 a or d I 由 0 變到 n-1 執(zhí)行 n 次循環(huán)

  進(jìn)行 n-1-I 次比較

  真

 a[j]>a[I+I]假

  a[j]

  a[j+1] Style=97 Style=100 I 由 0 變到 n-1 執(zhí)行 n 次循環(huán)

  進(jìn)行 n-1-I 次比較

  真

 a[j]<a[I+I]假

  a[j]

  a[j+1] 輸出 a[0]到 a[n-1]

 )++j;1-i-n〈j;0=j(rof?

 )]1+j[a<]j[a(fi??

 ? {t=a[j];a[j]=a[j+1];a[j+1]=t;}

  printf("n 個(gè)學(xué)生成績(jī)從高到低排名就是:\n”);

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

 //輸出結(jié)果

  printf(”%5d",a[i]);

 printf(”\n"); } void sort3(int a[],int n, char style) {

  char c; getchar(c);

  printf(”請(qǐng)輸入 style 類型:a or d\n");

 ;)(rahcteg=elyts? printf("請(qǐng)輸入學(xué)生個(gè)數(shù)n:\n");

 scanf("%d”,&n);

;)"n\:績(jī)成生學(xué)個(gè) n 入輸"(ftnirp?

 int i,j,t;

  for(i=0;i〈n;i++)

 ? scanf("%d",&a[i]);

 )79==elyts(fi? {

  printf("對(duì) n 個(gè)數(shù)字升序排列為:\n”);

 數(shù)個(gè)n對(duì)法泡冒//

  )++i;n〈i;0=i(rof?字升序排列

。++j;1—i-n〈j;0=j(luò)(rof?? ?

 if(a[j]〉a[j+1])

 {? };t=]1+j[a;]1+j[a=]j[a;]j[a=t? }?

。錶se if(style==100)

。

  printf(”對(duì) n 個(gè)數(shù)字降序排列為:\n”); 數(shù)個(gè) n 對(duì)法泡冒//

  )++i;n<i;0=i(rof??字降序排列

  for(j=0;j〈n-i-1;j++)

 )]1+j[a<]j[a(fi?

  {t=a[j];a[j]=a[j+1];a[j+1]=t;}

  }? printf("n 個(gè)學(xué)生成績(jī)排名就是:\n”);

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

 //輸出結(jié)果

  printf("%5d”,a[i]);

;)"n\”(ftnirp?} int main()

 //主函數(shù) {

。鹥rintf(”sort1:\n”);

 //調(diào)用sort1 函數(shù)

  int a[10];

 };)a(1tros?{函 2tros 用調(diào)//

。唬\:2tros"(ftnirp?數(shù)

。椋睿 a[30000],n;

。;)n,a(2tros?{

 數(shù)函 3tros 用調(diào)//

 ;)”n\:3tros"(ftnirp? int a[30000],n;

 ;elyts rahc? sort3(a,n,style);}

 ;0 nruter?} <這個(gè)程序中輸入字符時(shí)由于前面得程序得干擾,第一個(gè)輸入字符語(yǔ)句會(huì)直接跳過,所以要另加一個(gè)空白得輸入字符得語(yǔ)言,從而使程序中輸入字符得語(yǔ)句能夠正常運(yùn)行〉 <由于數(shù)組得長(zhǎng)度必須要定義,而且不能用變量定義,鑒于要進(jìn)行比較得數(shù)據(jù)量n就是一個(gè)整形得數(shù),定義數(shù)組為一個(gè)較長(zhǎng)數(shù)組即可> 3 ,運(yùn)行結(jié)果:

 3,用指針優(yōu)化學(xué)生成績(jī)排名 1 , 流程圖:

 So rt

  copy

  main

  2, 程序:

。nclude<stdio、h> #include<string、h> v o id s o r t ( i n t

。 p )

 //定義函數(shù) sort {

 //將成績(jī)數(shù)組按照從高到低進(jìn)行排序,要求用函數(shù)實(shí)現(xiàn)

 int i,j,t;

 for(i=0;i<9;i++)

。++j;i-9<j;0=j(rof?? ?

 ))1+j+p(*〈)j+p(*(fi?

 { };t=)1+j+p(*;)1+j+p(*=)j+p(*;)j+p(*=t?} v o i d

。 opy(c h ar

。 a,cha r

 *b )

  //定義函數(shù)copy

  {

。鎜r(;*a!=’\0’;a++,b++)

  // 復(fù)制該字符串,用函數(shù)實(shí)現(xiàn)

。 *b=*a;} * ;’0\’=b?} int main()

。 義定 //

;p*,]01[uts,t,j,i tni?一個(gè)數(shù)組 stu[10]存放 10 個(gè)學(xué)生得成績(jī)

  p=stu;

;)”n\:據(jù)數(shù)個(gè) 01 入輸請(qǐng)”(ftnirp?鍵從//

。+i;01<i;0=i(rof?盤輸入數(shù)據(jù),用指針實(shí)現(xiàn)

 ? scanf("%d",p+i);

 printf("數(shù)組stu[10]得內(nèi)容為:\n"); 將//

。玦;01<i;0=i(rof?數(shù)組stu[10]得內(nèi)容輸出到屏幕上,用指針實(shí)現(xiàn)

 ? printf("%5d",*(p+i));

 printf(”\n”); 成將//

  )++i;9<i;0=i(rof?績(jī)數(shù)組按照從高到低進(jìn)行排序,用指針實(shí)現(xiàn)

  for(j=0;j<9—i;j++)

 if(*(p+j)<*(p+j+1))

。?};t=)1+j+p(*;)1+j+p(*=)j+p(*;)j+p(*=t? printf(”成績(jī)數(shù)組按照從高到低進(jìn)行排序?yàn)椋篭n");

  p=stu;

  for(i=0;i〈10;i++)

  printf("%5d",*(p+i));

;)”n\"(ftnirp? ;uts=p? sort(p);

  //調(diào)用函數(shù) sort

  ;)”n\:為現(xiàn)實(shí)中數(shù)函在放容內(nèi)步三第"(ftnirp?

。鎜r(i=0;i〈10;i++)

  printf(”%5d",*(p+i));

 ;)"n\”(ftnirp? printf(”采用指針方法,輸入字符串 student score: \n");

 char *a=”student score”;

 char b[14]; 調(diào)//

  ;)b,a(ypoc?用函數(shù) copy

;)b,”n\s%”(ftnirp? return 0; } <指針得傳遞就是雙向得,在賦值中有多種方法,比如說(shuō)對(duì)數(shù)組直接賦值,或者直接對(duì)指針變量進(jìn)行賦值> 〈復(fù)制該字符串,用函數(shù)實(shí)現(xiàn)時(shí)就是用循環(huán)語(yǔ)句把一個(gè)字符串得每一個(gè)字符賦值給另一個(gè)字符串〉 3 , 運(yùn)行結(jié)果:

 4,學(xué)生成績(jī)單制作 1 , 流程圖:

  〈結(jié)構(gòu)體語(yǔ)言具有簡(jiǎn)潔,方便,模塊化得特點(diǎn),在初始化及輸出過程中要注意輸入輸出方式> 〈在輸入字符串得時(shí)候,輸入語(yǔ)句中不應(yīng)有&〉 2 , 程序: #include<stdio、h> St r uctS t u d ent

。/定義結(jié)構(gòu)體

。 Return 0

;]01[rebmun rahc?

 ;]01[eman rahc? 3[erocs tni??

 ? ];

  ;egareva taolf? }student[10]; int main()

 {

 ;t,j,i tni?f? o r(i=0;i<10;i + + )

 //初始化結(jié)構(gòu)體

。鹥rintf(”\n 輸入student%d 成績(jī):\n",i+1);

 ;)":rebmun"(ftnirp? ;)rebmun、]i[tneduts,"s%”(fnacs?? p ri n tf ( "name:") ;

 //存放 10 個(gè)學(xué)生得學(xué)號(hào),姓名,三門課得成績(jī)

;)eman、]i[tneduts,"s%"(fnacs? )++j;3<j;0=j(rof? {printf("score %d:",j+1);

。唬輏[erocs、]i[tneduts&,"d%”(fnacs? }

 student[i]、average=(student[i]、score[0]+student[i]、score[1]+student[i]、score[2])/3、0;

 printf("average:%f",student[i]、average);

  }

 printf("\n");

;)"n\:績(jī)成得程課門該及以、名姓、號(hào)學(xué)得生學(xué)得高最績(jī)成學(xué)數(shù)出輸"(ftnirp?//輸出單門課成績(jī)最高得學(xué)生得學(xué)號(hào)、姓名、以及該門課程得成績(jī) gareva_xam,0=hsilgne_xam,0=esenihc_xam,0=htam_xam,0=xam tni?e=0,max_i=0;

。妫铮(i=0;i<10;i++)

。? )]0[erocs、]i[tneduts<htam_xam(fi?? { ;]0[erocs、]i[tneduts=htam_xam?? };i=i_xam?? }

  printf(”number=%s,name=%s,max_math=%d\n",student[max_i]、number,student[max_i]、name,student[max_i]、score[0]);

  printf(”輸出中文成績(jī)最高得學(xué)生得學(xué)號(hào)、姓名、以及該門課程得成績(jī):\n");

 for(i=0;i<10;i++)

 {

  if(max_chinese〈student[i]、score[1])

 ?{ ;]1[erocs、]i[tneduts=esenihc_xam? };i=i_xam??

  }

  printf(”number=%s,name=%s,max_chinese=%d\n",student[max_i]、number,student[max_i]、name,student[max_i]、score[1]);

  printf("輸出中文成績(jī)最高得學(xué)生得學(xué)號(hào)、姓名、以及該門課程得成績(jī):\n");

 for(i=0;i<10;i++)

 {

  )]2[erocs、]i[tneduts〈hsilgne_xam(fi? { ;]0[erocs、]i[tneduts=hsilgne_xam?

。韆x_i=i;}

 }?

 printf("number=%s,name=%s,max_english=%d\n”,student[max_i]、number,student[max_i]、name,student[max_i]、score[2]);

  printf("輸出三門課程得平均分?jǐn)?shù)最高得學(xué)生得學(xué)號(hào)、姓名及其平均分:\n");

  //輸出三門課程得平均分?jǐn)?shù)最高得學(xué)生得學(xué)號(hào)、姓名及其平均分

  for(i=0;i〈10;i++)

。

  if(max_average〈student[i]、average)

 ?{ ;egareva、]i[tneduts=egareva_xam?

 };i=i_xam? }

  printf(”number=%s,name=%s,max_average=%f\n",student[max_i]、number,student[max_i]、name,student[max_i]、average);

 for ( i=0 ; i<9; i ++)

  //將 10 個(gè)學(xué)生按照平均分?jǐn)?shù)從高到低進(jìn)行排序

。++j;i-9<j;0=j(rof?? ?? if(student[j]、average<student[j+1]、average)

。鹴=student[j]、average;student[j]、average=student[j+1]、average;student[j+1]、average=t;}

  printf("

  number

  name

  math

  Chinese

  English

 average\n");

  for( i =0;i 〈 10;i+ + )

 //輸出排序后得結(jié)果

  printf("%8s%8s%9d%9d%9d

。ィ、2f\n",student[i]、number,student[i]、name,student[i]、score[0],student[i]、score[1],student[i]、score[2],student[i]、average);

  return 0; 3, 運(yùn)行結(jié)果:

相關(guān)熱詞搜索:實(shí)習(xí)報(bào)告 語(yǔ)言

版權(quán)所有 蒲公英文摘 www.newchangjing.com