安徽大學(xué)C語言實(shí)驗(yàn)平臺作業(yè)答案.doc
《安徽大學(xué)C語言實(shí)驗(yàn)平臺作業(yè)答案.doc》由會員分享,可在線閱讀,更多相關(guān)《安徽大學(xué)C語言實(shí)驗(yàn)平臺作業(yè)答案.doc(34頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、 實(shí)驗(yàn)三C基本數(shù)據(jù)類型及運(yùn)算 1. 編程:根據(jù)需要定義相關(guān)變量,鍵盤輸入10.0、20.6、5.0三個實(shí)數(shù)分別賦給相關(guān)三個變量,輸出該3個變量的和s、乘積p和平均值a。 2. 編程:輸入球的半徑,計(jì)算球體表面積和球體積。 3. 編程:定義6個變量,通過鍵盤將“10, -10, 40000, a, 3.14, hello”這六個值分別賦給相應(yīng)變量,然后在屏幕上輸出變量的值(每行輸出一個變量)。 4. 編程:從鍵盤接收1個字符給變量s1,1個字符串(允許帶有空格)給字符數(shù)組s2,輸出字符變量s1的ASCII碼值及字符數(shù)組s2中的字符串。 5. 編程:從鍵盤輸入二個整數(shù)分別賦給整
2、型變量a、b,將它們按由小到大的順序輸出。
6. 編程:調(diào)用標(biāo)準(zhǔn)庫函數(shù)sin(x)計(jì)算6800的正弦值(此題為選做)。
7. 編程:鍵盤輸入一個實(shí)數(shù)賦給變量x,計(jì)算 y=x*x*x+x*x+x 的值,分別輸出y值、y值的整數(shù)部分和小數(shù)部分(此題為選做)。
8. 編程:鍵盤輸入四個整數(shù)分別賦給整型變量a、b、c、d,用三目運(yùn)算方法將它們按由大到小的順序輸出(此題為選做)。
1. #include
3、s/3;
printf("s=%f,p=%f,a=%f",s,p,a);
}
2. #include
4、;
printf("a=%d\n,b=%d\n,c=%d\n,d=%c\n,e=%f\n,ch=%s",a,b,c,d,e,st);
}
4. #include 5、=%da=%d",b,a);
}
6. #include 6、字符,如是大寫字母,則輸出相應(yīng)小寫字母;如是小寫字母,則原樣輸出;其它字符輸出“Not letter!”。
2. 編程:判斷輸入的正整數(shù)是否既是3又是5的整數(shù)倍。若是,輸出Yes,否則輸出No。
3. 編程:從鍵盤輸入三個整數(shù),分別賦給變量a,b,c,輸出其中的最大值(要求不改變a、b、c的值)。
4. 編程:用scanf輸入任意兩個數(shù)分別賦給變量a、b,若a大于等于b,則直接輸出a、b,否則將a、b的值交換(即a的原值放入b中,b的原值放入a中)后再輸出。
5. 編程:輸入整數(shù)a和b,若a2+ b2大于100,則輸出a2+ b2百位以上的數(shù)字,否則輸出兩數(shù)之和。
6. 編 7、程:從鍵盤輸入三個整數(shù),分別賦給變量a,b,c,請按從小到大的順序依次輸出a、b、c(要求不改變a、b、c的值)。
7. 編程:從鍵盤輸入三個整數(shù),分別賦給變量a,b,c,請按從小到大的順序依次將這三個數(shù)存放于a、b、c中,最后輸出a、b、c。
8. 編程:由系統(tǒng)生成一個10以內(nèi)的隨機(jī)整數(shù),用戶從鍵盤上輸入一個10以內(nèi)的整數(shù),如果兩者相等輸出“OK”,否則輸出“ERROR”。
注:隨機(jī)數(shù)的生成必須包含頭文件#include 8、值為1~a內(nèi)的隨機(jī)整數(shù)
1. #include 9、
else printf("No\n");}
else printf("Error!");
}
3. #include 10、b;
a=a-b;};
printf("a=%f,b=%f\n",a,b);
}
5.
#include 11、a;
min=b;}
else
{max=b;
min=a;}
if(c>=max)
max=c;
if(c<=min)
min=c;
d=a+b+c-min-max;
printf("%d %d %d\n",min,d,max);
}
7.
#include 12、 = c;
c = d; }
printf("a=%d b=%d c=%d",a,b,c);
}
8.
#include 13、程序設(shè)計(jì)*
1. 編程:計(jì)算獎學(xué)金ss的值,已知獎學(xué)金ss與成績s的關(guān)系為:
具體要求:
(1)用 if 語句實(shí)現(xiàn)分支結(jié)構(gòu)的編程。
(2)s為整型,ss要求精確到小數(shù)點(diǎn)后二位。
(3)用scanf函數(shù)給s賦值,且輸入前有相應(yīng)提示。
(4)結(jié)果輸出時采用以下形式:
成績s=具體值,獎學(xué)金ss=具體值
2. 設(shè)函數(shù)f(x)如下,求函數(shù)函數(shù)法f(x)的值。
具體要求:
(1)用條件表達(dá)式編程。
(2)用if語句編程。
(3)用scanf函數(shù)給自變量賦值,且輸入前有相應(yīng)提示。
(4)結(jié)果輸出時采用以下形式:
x=具體值,f(x)=具體值
14、
(5)給出你所使用的測試用例。
提示:
按C的語法規(guī)則,標(biāo)識符由字母、數(shù)字、下劃線組成,不能將f(x)作為變量名,本題中,函數(shù)名可起為 f 或 y 等。但作為非格式控制字符,f(x)完全可以出現(xiàn)在printf函數(shù)的雙引號內(nèi)。
3. 編程:輸入一個整數(shù),判斷它能否被3,5,7整除,并輸出以下信息之一:
(1)能同時被3,5,7整除。
(2)能被其中兩數(shù)整除(指出是哪兩個數(shù))。
(3)能被其中一個數(shù)(指出是哪一個數(shù))整除。
(4)不能被3,5,7任一個數(shù)整除。
4. 編程:用switch 語句編寫一個簡單的計(jì)算器程序,輸入格式為:data1 op data2。其中d 15、ata1和data2為參加運(yùn)算的兩個數(shù);op為運(yùn)算符,取值只能是+、-、*、/。
5. 編程:計(jì)算你的出生日期是星期幾。
(1)通過鍵盤輸入你出生那一年的元旦是星期幾
(2)通過鍵盤輸入你的出生日期
(3)輸出結(jié)果
1.
#include 16、(s>=80&&s<90)
ss=100+s;
else if(s>=90&&s<=100)
ss=200+s*3/2;
printf("成績s=%d,獎學(xué)金ss=%0.2f\n",s,ss);
}
}
2.
#include 17、}
3.
#include 18、rintf("%d能被5,7整除\n",x);
else if(a==0) printf("%d能被3整除\n",x);
else if(b==0) printf("%d能被5整除\n",x);
else if(c==0) printf("%d能被7整除\n",x);
else printf("%d不能被3,5,7任意一個數(shù)整除\n",x);
}
4.
#include 19、scanf("%f%c%f",&d1,&op,&d2);
switch(op)
{case +: printf("%g+%g=%g\n",d1,d2,d1+d2);break;
case -: printf("%g-%g=%g\n",d1,d2,d1-d2);break;
case *: printf("%g*%g=%g\n",d1,d2,d1*d2);break;
case /: printf("%g/%g=%g\n",d1,d2,d1/d2);break;
}
}
5.
#include 20、x,m,d;
printf("請輸入你出生那年元旦的星期(1至7):\n");
printf("請輸入你的出生日期 (mm/dd) : \n");
scanf("%d,%d,%d",&x,&m,&d);
switch ((m*30+d)/7)
{case 0:printf("你出生那天為星期%d",x);break;
case 1:printf("你出生那天為星期%d",x+1);break;
case 2:printf("你出生那天為星期%d",x+2);break;
case 3:printf("你出生那天為星期%d",x+3);break;
case 4:printf( 21、"你出生那天為星期%d",x+4);break;
case 5:printf("你出生那天為星期%d",x+5);break;
case 6:printf("你出生那天為星期%d",x+6);break;
}
}
實(shí)驗(yàn)六C循環(huán)結(jié)構(gòu)程序設(shè)計(jì)
1. 編程:輸出200以內(nèi)所有能被7整除的數(shù)。
2. 編程:求出1 ~ 1000之間能被13整除的最大的那個數(shù)。
3. 編程:找出若干個非零數(shù)中的最小值m以及它們的平均值a。
要求:若干個數(shù)由鍵盤輸入,每次輸入一個賦給變量x,x為零時,結(jié)束輸入。
4. 編程:求兩個正整數(shù)m、n之間所有奇數(shù)之和x與偶數(shù)之和y。
要求:
(1 22、)m、n的值由鍵盤輸入。
(2)輸入時,允許用戶隨意先輸入大的或小的整數(shù)。
5. 編程:計(jì)算函數(shù)y的值。要求鍵盤接收自變量x的值,若x的值不為零,計(jì)算函數(shù)y的值并輸出,再從鍵盤接收下一個x的值,……,直到x的值為零,顯示“Thank You,Bye!”,爾后結(jié)束程序,已知函數(shù)y與自變量x的關(guān)系為:
6. 編程:計(jì)算π的近似值,π的計(jì)算公式為:
要求:
(1)n值由鍵盤輸入。
(2)分別輸出當(dāng)n 為10、100、1000時的計(jì)算結(jié)果。
(3)輸出時要求每行顯示一組n、π的值,每行形式如下:
n=具體值,π = 具體值
7. 我國現(xiàn)有人口13億 23、,設(shè)年增長率為1%,編寫程序,計(jì)算多少年后增加到20億。
8. 求解愛因斯坦數(shù)學(xué)題。有一條長階梯,若每步跨2階,則最后剩余1階;若每步跨3階,則最后剩2階;若每步跨5階,則最后剩4階;若每步跨6階,則最后剩5階;若每步跨7階,最后才正好一階不剩。請問,這條階梯最少共有多少階?
9. 每個蘋果0.8 元,第一天買2 個蘋果,第二天開始,每天買前一天的2 倍,直至購買的蘋果個數(shù)達(dá)到不超過100 的最大值。編程:求每天平均花多少錢?(此題為選做)
1.
#include 24、 continue;
printf("%d ",i);
}
}
2.
#include 25、f",&x);
if(x==0) break;
s=s+x;
if(m>x)
m=x;
}
a=s/i;
printf("最小值m=%f,平均值a=%f",m,a);
}
4.
#include 26、5.
#include 27、int n,i;
double t,sum;
printf("請輸入n的值\n");
scanf("%d",&n);
sum=2;
i=1;
t=2;
while(i 28、s);
}
8.
#include 29、rintf("每天平均花%g元錢!\n",s);
}
實(shí)驗(yàn)七C多重循環(huán)結(jié)構(gòu)程序設(shè)計(jì)
1. 編程:輸出100以內(nèi)個位數(shù)為6且能被3整除的所有數(shù)。
2. 編程:鍵盤輸入6 位學(xué)生的5門課成績,分別統(tǒng)計(jì)出每個學(xué)生的平均成績。
3. 編程:輸入一個正整數(shù),統(tǒng)計(jì)該數(shù)的各位數(shù)字中零的個數(shù),并求各位數(shù)字中的最大者。
4. 編程:分別用do while、while、for三種循環(huán)結(jié)構(gòu)求: 1!+2!+3!+...+n! ,要求n的值由鍵盤輸入。
5. 編程:計(jì)算100至1000之間有多少個數(shù)其各位數(shù)字之和是5。
6. 編程:從鍵盤輸入的10個整數(shù)中,找出第一個能被7整除的數(shù)。若找到, 30、輸出此數(shù)后退出;若未找到,輸出“not exist”。
7. 編程:輸出1至100之間滿足如下條件的數(shù):各位數(shù)的乘積大于各位數(shù)的和。
8. 編程:將整數(shù)316表示為兩個加數(shù)的和,使這兩個加數(shù)分別能被13和11整除。
9. 編程:打印出所有的"水仙花數(shù)"。所謂的"水仙花數(shù)"是指一個3位數(shù),其各位數(shù)字的立方和等于該數(shù)本身。例如,153是一個"水仙花數(shù)",因?yàn)橛?53=1*1*1+5*5*5+3*3*3。
10. 編程:一條有10個車站的鐵路線,共需要準(zhǔn)備多少種車票?
1.
#include 31、)
{if(i%10==6&&i%3==0)
printf("%d ",i);
}
}
2.
#include 32、ain()
{int x,i,max,t;
i=0;
max=0;
scanf("%d",&x);
do
{t=x%10;
if(t==0) ++i;
else if(max 33、=%d\n",s);
}
#include 34、,s);
}
5.
void main()
{
int i,s,k,count=0;
for(i=100;i<1000;i++)
{
s=0;
k=i;
while(k)
{
s=s+k%10;
k=k/10;
}
if(s!=5)
continue;
else
count++;
}
printf("%d\n",count);
}
6.
#include 35、==0)
{printf("first number is %d",x);break;
}
}
if(i>10)
printf("not exist!");
}
7.
#include 36、.h>
main()
{int i=0,j,k;
do
{i++;
k=316-13*i;}
while(k%11);
j=k/11;
printf("316=13*%d+11*%d\n",i,j);
}
9.
#include 37、控制結(jié)構(gòu)綜合應(yīng)用
1. 編程計(jì)算:
s=1+12+123+1234+12345+123456+1234567。
2. 編程: 找出1至99之間的全部同構(gòu)數(shù)。所謂同構(gòu)數(shù)是這樣一組數(shù):它出現(xiàn)在其平方數(shù)的右邊。例如:5是25右邊的數(shù),25是625右邊的數(shù),5和25都是同構(gòu)數(shù)。
3. 若用0至9之間不同的三個數(shù)構(gòu)成一個三位數(shù),編程統(tǒng)計(jì)共有多少種方法。
4. 編程:鍵盤輸入一個不多于5位的正整數(shù),要求:(此題為選做)
(1)求它是幾位數(shù)
(2)逆序打印出各位數(shù)字。如原數(shù)為123,輸出則為321。
5. 編程:找出以下疑案的作案人(此題為選做)
已知該案涉及6個嫌疑人A、B、 38、C、D、E、F,并且:
(1)A、B至少有一人作案。
(2)A、E、F這3人中至少有2人參與作案。
(3)A、D不可能是同案犯。
(4)B、C或同時作案,或與本案無關(guān)。
(5)C、D中有且僅有一人作案。
(6)如果D沒有作案,則E也不可能參與作案。
6. 編程:輸出下列形式的楊輝三角形的前10行(此題為選做)
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
……
1.
#include 39、}
printf("s=%d\n",s);
}
2.
#include 40、=j) count++;
printf("%d\n",count);
}
實(shí)驗(yàn)九C的數(shù)組
1. 編程實(shí)現(xiàn):輸入一個正整數(shù)n(1 41、小到大排列好,現(xiàn)任意輸入一個整數(shù),請按原來排序的規(guī)律將它插入到數(shù)組中(例如:原來的一組整數(shù)為1,3,5,8,9,若輸入的整數(shù)是7,則最終的結(jié)果為: 1,3,5,7,8,9),請編程實(shí)現(xiàn)。
5. 編程:將一個44的整型矩陣元素按副對角線(右上到左下)互換。
要求:
(1)鍵盤輸入矩陣各元素的值。
(2)互換前,按矩陣形式輸出矩陣。
(3)互換后,按矩陣形式輸出矩陣。
6. 求一個44的整數(shù)矩陣的副對角線(右上到左下)上所有奇數(shù)的和sum及偶數(shù)的平均值ave。
要求:結(jié)果保留2位小數(shù)
7. 通過循環(huán)按行順序?yàn)橐粋€55的二維數(shù)組a賦1到25的自然數(shù),然后輸出該數(shù)組的左 42、下半角元素的值和它們之和。
8. 定義一個實(shí)數(shù)型數(shù)組,將10個實(shí)數(shù)輸入到數(shù)組中,編程實(shí)現(xiàn)任一塊區(qū)間所有元素的平均值,即輸入兩整數(shù)m,n,計(jì)算出數(shù)組中第m個元素開始的后n個元素的平均值,包括第m個元素(若n值過大,即個數(shù)太多,超過數(shù)組的最后一個元素,則統(tǒng)計(jì)到最后一個元素)。
例如:數(shù)組元素為1.0,2.0,3.0,4.0,5.0,6.0,7.0,8.0,9.0,10.0,輸入3,5,則輸出5.0。
9. 一個整型數(shù)組有10個元素,編寫程序刪除所有值為n的元素。如:數(shù)組中為1,3,2,4,2,7,9,0,2,5,n的值為2,刪除后輸出數(shù)組元素應(yīng)該為1,3,4,7,9,0,5。(此題為選 43、做)
10. 定義兩個N行N列的二維數(shù)組a、b,編寫程序,將a數(shù)組最后一行放到b數(shù)組的第0列中,把a(bǔ)數(shù)組中的第0行放到b數(shù)組的最后一列中,b所指二維數(shù)組中其他元素的數(shù)據(jù)不變。(此題為選做)
11. 試編程實(shí)現(xiàn)如下功能:先定義一個4行5列的數(shù)組(矩陣),調(diào)用庫函數(shù)rand()隨機(jī)產(chǎn)生20-50之間的整數(shù)給數(shù)組元素賦值,再將矩陣中第二列與第四列的元素互換。要求先輸出原數(shù)組,再輸出交換后的數(shù)組(rand函數(shù)的使用請參閱教材259頁)。(此題為選做)
1.
#include
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。