




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
姓 名: 班 級(jí):學(xué) 號(hào):實(shí)驗(yàn)時(shí)間: 2018 年 5 月 10 日實(shí)驗(yàn)題目
1:輸入兩個(gè)整數(shù)數(shù)組,每個(gè)數(shù)組有五個(gè)整數(shù),將兩者和并并排列輸出。設(shè)計(jì)思想:定義三個(gè)數(shù)組,將兩組數(shù)據(jù)存儲(chǔ)到第三個(gè)數(shù)組中
,再用冒泡排序?qū)ζ溆纱蟮叫∨判虿⑤敵觥?shí)驗(yàn)代碼及注釋:#include
<stdio.h>#include
<stdlib.h>#define
N
int
main(){int
a[5],b[5],c[N];//第一組數(shù)據(jù),第二組,合并數(shù)組int
i,j,t;//循環(huán)變量,中間變量printf("輸入第一組數(shù)據(jù):\n");//輸入數(shù)據(jù)for(i=0;i<5;i++)scanf("%d",&a[i]);printf("輸入第二組數(shù)據(jù):\n");for(i=0;i<5;i++)scanf("%d",&b[i]);for(i=0;i<5;i++){c[i]=a[i];//兩組數(shù)據(jù)合并c[i+5]=b[i];}for(i=0;i<N-1;i++)//冒泡排序從大到小{for(j=0;j<N-i-1;j++){if(c[j]<c[j+1]){t=c[j];c[j]=c[j+1];c[j+1]=t;}}}for(i=0;i<10;i++)printf("%d\t",c[i]);//排序:冒泡,選擇,return
0;}驗(yàn)證與結(jié)論:據(jù)是從第
0
須掌握。實(shí)驗(yàn)題目
2:某公司生成5
種產(chǎn)品,每周記錄生產(chǎn)的每種產(chǎn)品數(shù)量和銷售數(shù)量。每個(gè)月月末,公司將對(duì)其生產(chǎn)規(guī)劃進(jìn)行評(píng)估。該評(píng)估需要以下一個(gè)或多個(gè)信息。每周生成和銷售的數(shù)量;所有生產(chǎn)產(chǎn)品的總量;所有銷售產(chǎn)品的總量;每種產(chǎn)品生產(chǎn)和銷售的總量。假設(shè)生產(chǎn)和銷售的產(chǎn)品和銷售分別用二維數(shù)組M和S其中
M[i][j]表示第
i
周生產(chǎn)第
j
種產(chǎn)品的數(shù)量。S[i][j]表示第
i周銷售第
j
C
來表示每種產(chǎn)品的價(jià)格。其中,C[j]表示第
j
種產(chǎn)品的價(jià)格。數(shù)組
M、S
和
C
的值都在程序中輸入。設(shè)計(jì)思想:聲明四個(gè)數(shù)組函數(shù):每周生成和銷售的數(shù)量,所有生產(chǎn)產(chǎn)品的總量,所有銷售產(chǎn)品的總量,每種產(chǎn)品生產(chǎn)和銷售的總量。然后直接調(diào)用使其對(duì)主函數(shù)中數(shù)組值直接改變,最后用循環(huán)輸出。實(shí)驗(yàn)代碼及注釋:#include
<stdio.h>#include
<stdlib.h>void
money(double
mva[5][6],double
m[5][6],double
c[6]);//函數(shù)聲明void
sum1(double
sweek[5],double
m[5][6]);void
sum2(double
mpr[6],double
m[5][6]);double
sum3(double
m[5]);int
main(){int
double
M[5][6],S[5][6],C[6];//
第幾周生產(chǎn)第幾種產(chǎn)品的數(shù)量,第幾周銷售第幾種產(chǎn)品的數(shù)量,每種產(chǎn)品的價(jià)格doubleMvalue[5][6],Svalue[5][6],Mweek[5],Sweek[5],Mproduct[6],Sproduct[6];double
Mtotal,Stotal;for(i=1;i<=4;i++){for(j=1;j<=5;j++){ printf("
請(qǐng)
輸
入
第
%d
周
生
產(chǎn)
第
%d
種
產(chǎn)
品
的
數(shù)量:",i,j);scanf("%lf",&M[i][j]);printf("
請(qǐng)
輸
入
第
%d
周
銷
售
第
%d
種
產(chǎn)
品
的
數(shù)量:",i,j);scanf("%lf",&S[i][j]);}}printf("\n");for(j=1;j<=5;j++){
種產(chǎn)品的價(jià)格:",j);scanf("%lf",&C[j]);}printf("\n");money(Mvalue,M,C);//調(diào)用函數(shù)money(Svalue,S,C);sum1(Mweek,Mvalue);sum1(Sweek,Svalue);sum2(Mproduct,Mvalue);sum2(Sproduct,Svalue);Mtotal=sum3(Mweek);Stotal=sum3(Sweek);for(i=1;i<=4;i++){for(j=1;j<=5;j++){printf("
第
%d 周
生
產(chǎn)
第
%d值%.2lf\n",i,j,Mvalue[i][j]);printf("
第
%d 周
銷
售
第
%d值%.2lf\n",i,j,Svalue[i][j]);printf("
在
本
月
里
生
成
第
%d值%.2lf\n",j,Mproduct[j]);printf("
在
本
月
里
銷
售
第
%d
種
產(chǎn)
品
的
價(jià)種
產(chǎn)
品
的
價(jià)種
產(chǎn)
品
的
價(jià)種
產(chǎn)
品
的
價(jià)值%.2lf\n",j,Sproduct[j]);}printf("在第%d
周生產(chǎn)的產(chǎn)品價(jià)值%.2lf\n",i,Mweek[i]);printf("在第%d
周所有產(chǎn)品的價(jià)值%.2lf\n",i,Sweek[i]);}printf("在本月里生產(chǎn)所有產(chǎn)品總價(jià)值%.2lf\n",Mtotal);printf("在本月里銷售所有產(chǎn)品總價(jià)值%.2lf\n",Stotal);return
0;}void
money(double
mva[5][6],double
m[5][6],double
c[6])//
第i
周生產(chǎn)和銷售第
j
種產(chǎn)品的價(jià)值{int
i,j;for(i=1;i<=4;i++){for(j=1;j<=5;j++){mva[i][j]=m[i][j]*c[j];// printf("
第
%d
周
生
產(chǎn)
第
%d
種
產(chǎn)
品
的
價(jià)值%lf\n",i,j,m[i][j]*c[j]);}}}void
sum1(double
sweek[5],double
i
周生產(chǎn)和銷售的產(chǎn)品的價(jià)值{int
i,j;for(i=1;i<=4;i++){sweek[i]=0;//數(shù)組初始化for(j=1;j<=5;j++){sweek[i]=sweek[i]+m[i][j];}}}void
sum2(double
mpr[6],double
m[5][6])//在本月生產(chǎn)和銷售第j
種產(chǎn)品的價(jià)值{int
i,j;for(j=1;j<=5;j++){mpr[j]=0;//數(shù)組初始化for(i=1;i<=4;i++){mpr[j]=mpr[j]+m[i][j];}}}double
sum3(double
m[5])//在本月里生產(chǎn)和銷售所有產(chǎn)品總價(jià)值{int
i;double
sum3=0;for(i=1;i<=4;i++){sum3=sum3+m[i];}return
sum3;}驗(yàn) 證
結(jié) 論與結(jié) 論否用函數(shù)統(tǒng)一起來,否則在后期維護(hù)上將變得困難許多。實(shí)驗(yàn)題目
3:編程將一個(gè)字符串插入到另一個(gè)字符串的第n
個(gè)位置。設(shè)計(jì)思想:使用
strlen
函數(shù)計(jì)算數(shù)組長度,然后使用循環(huán)用倒序賦值使
a
數(shù)組在第
n
個(gè)位置及以后字符向后挪數(shù)組b
b
賦給
a
的空位。實(shí)驗(yàn)代碼及注釋:#include
<stdio.h>#include
<string.h>int
main(){int
n,count1,count2,i,j;//位置,字符串長度,循環(huán)變量printf("輸入
n
值:\n");scanf("%d",&n);char
a[20];//默認(rèn)長度為
20char
b[20];printf("輸入
a:\n");scanf("%s",a);printf("輸入
b:\n");scanf("%s",b);count1=strlen(a);//計(jì)算字符串
a
與
b
的長度count2=strlen(b);for(i=count1-1;i>=(n-1);i--)//倒序賦值,使
a
在第
n
個(gè)位置及以后字符向后挪
count2
位a[i+count2]=a[i];i=n-1+count2;//對(duì)
i
重新賦值為
n-1+count2for(j=count2-1;j>=0;j--)//倒序賦值將
b
賦給
a
空位{a[i]=b[j];i--;}for(j=0;j<count1+count2;j++)printf("%c",a[j]);return
0;}驗(yàn) 證 與 結(jié) 論 :總結(jié)與心得體會(huì):輸入字符串后末尾會(huì)有一個(gè)
\0,在賦值時(shí)必須極為小心,有可能會(huì)使程序提前終止得不到預(yù)期的效果,另外利用
strlen
函數(shù)計(jì)算數(shù)組長度時(shí)不包括末尾的\0。實(shí)驗(yàn)題目
4:編寫一個(gè)程序,使輸入的一個(gè)字符串按反序存放,在主函數(shù)中輸入輸出字符。設(shè)計(jì)思想:輸入字符串存儲(chǔ)在
a
數(shù)組中,利用
strlen
函數(shù)計(jì)算數(shù)組
a
長度,再用循環(huán)倒序存儲(chǔ)在
b
數(shù)組中并輸出。實(shí)驗(yàn)代碼及注釋:#include
<stdio.h>#include
<string.h>#define
n
100//宏定義
n
值為
100int
main(){char
a[n],b[n];//定義字符串?dāng)?shù)組int
i,j=0;//在數(shù)組中存儲(chǔ)位置printf("請(qǐng)輸入字符:\n");gets(a);//輸入字符串i=strlen(a)-1;//數(shù)組長度減一for(;i>=0;i--)//倒序輸出存儲(chǔ){b[j]=a[i];//倒序存儲(chǔ)printf("%c",a[i]);j++;}return
0;}驗(yàn) 證 與 結(jié) 論 :總結(jié)與心得體會(huì):利用scanf函數(shù)輸入字符串時(shí)無法輸入空格,故用了gets函數(shù)來輸入字符串。實(shí)驗(yàn)題目
5:編寫程序,從鍵盤輸入一行字符,統(tǒng)計(jì)其中英文字母、空格、數(shù)字和其他字符的個(gè)數(shù)。
a
存儲(chǔ)在數(shù)組
b
中,再利用
ASCII
碼的范圍對(duì)其進(jìn)行統(tǒng)計(jì)輸出。實(shí)驗(yàn)代碼及注釋:#include
<stdio.h>#include
<string.h>#define
n
200//宏定義
n
值為
200int
main(){char
a[n];//定義字符串?dāng)?shù)組int
i,j;//循環(huán)變量int
count1=0,count2=0,count3=0,count4=0;//英文字母、空格、數(shù)字和其他字符的個(gè)數(shù)int
b[n];//
整型數(shù)組printf("請(qǐng)輸入字符:\n");gets(a);//輸入字符j=strlen(a);//將數(shù)組
a
的長度賦給
jfor(i=0;i<j;i++){b[i]=a[i];//將字符轉(zhuǎn)換成
ASCII
碼存儲(chǔ)在
b
數(shù)組中}for(i=0;i<j;i++)//用
ASCII
碼進(jìn)行統(tǒng)計(jì){if((b[i]>=65&&b[i]<=90)||(b[i]>=97&&b[i]<=122))//
英文字母的范圍count1++;else
if(b[i]==32)//空格的范圍count
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 寧波衛(wèi)生職業(yè)技術(shù)學(xué)院《二十世紀(jì)西方文論》2023-2024學(xué)年第二學(xué)期期末試卷
- 廊坊燕京職業(yè)技術(shù)學(xué)院《單片機(jī)課程設(shè)計(jì)》2023-2024學(xué)年第二學(xué)期期末試卷
- 江西省南昌二中、九江一中、新余一中、臨川一中八所重點(diǎn)中學(xué)2025屆高三5月三??荚嚁?shù)學(xué)試題含解析
- 寧夏民族職業(yè)技術(shù)學(xué)院《SAS與統(tǒng)計(jì)分析》2023-2024學(xué)年第一學(xué)期期末試卷
- 內(nèi)蒙古烏海二十二中學(xué)2025年高中畢業(yè)班下學(xué)期開學(xué)考試語文試題含解析
- 延安市延長縣2025屆三下數(shù)學(xué)期末經(jīng)典試題含解析
- 南開大學(xué)《商務(wù)英語視聽說I》2023-2024學(xué)年第二學(xué)期期末試卷
- 臨床護(hù)理敏感質(zhì)量指標(biāo)解讀
- 二零二五最簡單山林租賃合同書
- 商場門面商鋪?zhàn)赓U合同書范例
- 數(shù)學(xué)教育研究導(dǎo)引
- JB T 2361-2007恒壓刷握行業(yè)標(biāo)準(zhǔn)
- sbs改性瀝青加工工藝
- 生物的種群動(dòng)態(tài)與物種演變
- GB 4351-2023手提式滅火器
- 供電局標(biāo)準(zhǔn)用電手續(xù)辦理流程(課件)
- 《行政強(qiáng)制法》課件
- 《清水混凝土技術(shù)》課件
- JCT170-2012 E玻璃纖維布標(biāo)準(zhǔn)
- 地表沉降監(jiān)測典型報(bào)告
評(píng)論
0/150
提交評(píng)論