版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、實(shí)驗(yàn)三 C基本數(shù)據(jù)類型及運(yùn)算1. 編程:根據(jù)需要定義相關(guān)變量,鍵盤輸入10.0、20.6、5.0三個(gè)實(shí)數(shù)分別賦給相關(guān)三個(gè)變量,輸出該3個(gè)變量的和s、乘積p和平均值a。 2. 編程:輸入球的半徑,計(jì)算球體表面積和球體積。 3. 編程:定義6個(gè)變量,通過鍵盤將“10, 10, 40000, a, 3.14, hello”這六個(gè)值分別賦給相應(yīng)變量,然后在屏幕上輸出變量的值(每行輸出一個(gè)變量)。
2、0; 4. 編程:從鍵盤接收1個(gè)字符給變量s1,1個(gè)字符串(允許帶有空格)給字符數(shù)組s2,輸出字符變量s1的ASCII碼值及字符數(shù)組s2中的字符串。 5. 編程:從鍵盤輸入二個(gè)整數(shù)分別賦給整型變量a、b,將它們按由小到大的順序輸出。 6. 編程:調(diào)用標(biāo)準(zhǔn)庫函數(shù)sin(x)計(jì)算6800的正弦值(此題為選做)。 7. 編程:鍵盤輸入一個(gè)實(shí)數(shù)賦給變量x,計(jì)算 y=x*x*x+x*x+x 的值,分別輸出y值、y值的整數(shù)部分和小數(shù)部分(此題為選做)。
3、 8. 編程:鍵盤輸入四個(gè)整數(shù)分別賦給整型變量a、b、c、d,用三目運(yùn)算方法將它們按由大到小的順序輸出(此題為選做)。1. #include<stdio.h>main()float x,y,z,s,p,a;scanf("x=%fy=%fz=%f",&x,&y,&z);s=x+y+z;p=x*y*z;a=s/3;printf("s=%f,p=%f,a=%f",s,p,a);2. #include<stdio.h>main()float r,s,v;printf("
4、input r");scanf("%f",&r);s=4*3.14*r*r;v=4/3*3.14*r*r*r;printf("s=%f,v=%f",s,v);3. #include<stdio.h>main()int a,b;long c;char d,st6;float e;scanf("%d%d%ld%c%f%s",&a,&b,&c,&d,&e,st);printf("a=%dn,b=%dn,c=%dn,d=%cn,e=%fn,ch=%s",
5、a,b,c,d,e,st);4. #include<stdio.h>main() char s1,s26;scanf("%c%s",&s1,s2);printf("s1=%d,s2=%s",s1,s2);5. #include<stdio.h>main() int a,b;scanf("a=%db=%d",&a,&b);if (a<b)printf("a=%db=%d",a,b);else printf("b=%da=%d",b,a);6.
6、#include<math.h>#include<stdio.h>main()float a,b;scanf("%f",&a); b=sin(a); printf("%f",b);7. #include<stdio.h>main()float x,y,b;int a;scanf("%f",&x);y=x*x*x+x*x+x;a=(int)y;b=y-a;printf("%fn%dn%fn",y,a,b);實(shí)驗(yàn)四 C分支結(jié)構(gòu)程序設(shè)計(jì)1. 編程:從鍵盤輸入一
7、個(gè)字符,如是大寫字母,則輸出相應(yīng)小寫字母;如是小寫字母,則原樣輸出;其它字符輸出“Not letter!”。 2. 編程:判斷輸入的正整數(shù)是否既是3又是5的整數(shù)倍。若是,輸出Yes,否則輸出No。 3. 編程:從鍵盤輸入三個(gè)整數(shù),分別賦給變量a,b,c,輸出其中的最大值(要求不改變a、b、c的值)。 4. 編程:用scanf輸入任意兩個(gè)數(shù)分別賦給變量a、b,若a大于等于b,則直接輸出a、b,否則將a、b的值交換(即a的原值放入b中,b的原值放入a中)后
8、再輸出。 5. 編程:輸入整數(shù)a和b,若a2+ b2大于100,則輸出a2+ b2百位以上的數(shù)字,否則輸出兩數(shù)之和。 6. 編程:從鍵盤輸入三個(gè)整數(shù),分別賦給變量a,b,c,請(qǐng)按從小到大的順序依次輸出a、b、c(要求不改變a、b、c的值)。 7. 編程:從鍵盤輸入三個(gè)整數(shù),分別賦給變量a,b,c,請(qǐng)按從小到大的順序依次將這三個(gè)數(shù)存放于a、b、c中,最后輸出a、b、c。 8. 編程:由系統(tǒng)生成一個(gè)10以內(nèi)的
9、隨機(jī)整數(shù),用戶從鍵盤上輸入一個(gè)10以內(nèi)的整數(shù),如果兩者相等輸出“OK”,否則輸出“ERROR”。 注:隨機(jī)數(shù)的生成必須包含頭文件#include <stdlib.h>、#include <time.h>,必須用初始化語句srand(unsigned)time(NULL);,表達(dá)式rand()%a+1的值為1a內(nèi)的隨機(jī)整數(shù)1. #include<stdio.h>main()char x;scanf("%c",&x);if(x>='a'&&x<
10、='z') printf("%c",x);else if (x>='A'&&x<='Z') printf("%c",x+32); else printf("Not letter!");2. #include<stdio.h>main()int x;scanf("%d",&x);if (x>0) if(x%3=0&&x%5=0) printf("Yesn"); else print
11、f("Non");else printf("Error!");3. #include<stdio.h>main()int a,b,c,max;scanf("%d%d%d",&a,&b,&c);max=a>b?a:b;max=max>c?max:c;printf("a=%d,b=%d,c=%d,max=%d",a,b,c,max);4. #include<stdio.h>main()float a,b;scanf("%f%f",&
12、a,&b);if(a<b)a=a+b; b=a-b; a=a-b;printf("a=%f,b=%fn",a,b);5.#include<stdio.h>main()int a,b,t,r,s;scanf("%d%d",&a,&b);s=a+b;r=a*a+b*b;t=r/100;if(r>100)printf("%d",t);else printf("%d",s);6.#include<stdio.h>int main()int a,b,c,d,max,
13、min;scanf("%d%d%d",&a,&b,&c);if(a>=b)max=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 %dn",min,d,max);7.#include <stdio.h>main() int a, b, c, d; scanf("%d%d%d",&a,&b,&c); if(a>=b) d =
14、 a; a = b; b = d; else if(b>=c) d = b; b = c; c = d; printf("a=%d b=%d c=%d",a,b,c);8.#include<stdio.h>#include<stdlib.h>#include<time.h>main()int a,b;srand(unsigned)time(NULL);b=rand()%10+1;scanf("%d",&a);printf("a=%d,隨機(jī)數(shù)b=%dn",a,b);if(a=b)prin
15、tf("OK!n");else printf("ERROR!n");實(shí)驗(yàn)五 C多分支結(jié)構(gòu)程序設(shè)計(jì)*1. 編程:計(jì)算獎(jiǎng)學(xué)金ss的值,已知獎(jiǎng)學(xué)金ss與成績s的關(guān)系為:
16、 具體要求: (1)用 if 語句實(shí)現(xiàn)分支結(jié)構(gòu)的編程。 (2)s為整型,ss要求精確到小數(shù)點(diǎn)后二位。
17、; (3)用scanf函數(shù)給s賦值,且輸入前有相應(yīng)提示。 (4)結(jié)果輸出時(shí)采用以下形式: 成績s具體值,獎(jiǎng)學(xué)金ss=具體值 2. 設(shè)
18、函數(shù)f(x)如下,求函數(shù)函數(shù)法f(x)的值。 具體要求:
19、160; (1)用條件表達(dá)式編程。 (2)用if語句編程。 (3)用scanf函數(shù)給自變量賦值,且輸入前有相應(yīng)提示。
20、160; (4)結(jié)果輸出時(shí)采用以下形式: x具體值,f(x)=具體值 (5)給出你所使用的測(cè)試用例。
21、0; 提示: 按C的語法規(guī)則,標(biāo)識(shí)符由字母、數(shù)字、下劃線組成,不能將f(x)作為變量名,本題中,函數(shù)名可起為 f 或 y 等。但作為非格式控制字符,f(x)完全可以出現(xiàn)在printf函數(shù)的雙引號(hào)內(nèi)。 3. 編程:輸入一個(gè)整數(shù),判斷它能否被3,5,7整除,并輸出以下信息之一:
22、60; (1)能同時(shí)被3,5,7整除。 (2)能被其中兩數(shù)整除(指出是哪兩個(gè)數(shù))。 (3)能被其中一個(gè)數(shù)(指出是哪一個(gè)數(shù))整除。
23、160; (4)不能被3,5,7任一個(gè)數(shù)整除。 4. 編程:用switch 語句編寫一個(gè)簡單的計(jì)算器程序,輸入格式為:data1 op data2。其中data1和data2為參加運(yùn)算的兩個(gè)數(shù);op為運(yùn)算符,取值只能是+、-、*、/。 5. 編程:計(jì)算你的出生日期是星期幾。 (1)通過鍵盤輸入你出生
24、那一年的元旦是星期幾 (2)通過鍵盤輸入你的出生日期 (3)輸出結(jié)果1.#include<stdio.h>main()int s; float ss;printf("Please input sn");scanf("%d",&s
25、);if(s<0|s>100) printf("ERROR!n");else if(s>=0&&s<80) ss=0; else if(s>=80&&s<90) ss=100+s; else if(s>=90&&s<=100) ss=200+s*3/2;printf("成績s=%d,獎(jiǎng)學(xué)金ss=%0.2fn",s,ss);2.#include<stdio.h>main()float x;int f;printf("Please input
26、 xn");scanf("%f",&x);if(x=0) f=0;else f=(x>0)?1:-1;printf("x=%f,f(x)=%dn",x,f);3.#include<stdio.h>main()int x,a,b,c;printf("請(qǐng)輸入一個(gè)整數(shù)x");scanf("%d",&x);a=x%3;b=x%5;c=x%7;if(a=0&&b=0&&c=0) printf("%d能同時(shí)被3,5,7整除n",x)
27、;else if(a=0 && b=0) printf("%d能被3,5整除n",x); else if(a=0 && c=0) printf("%d能被3,7整除n",x); else if(b=0 && c=0) printf("%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(&qu
28、ot;%d能被7整除n",x); else printf("%d不能被3,5,7任意一個(gè)數(shù)整除n",x);4.#include <stdio.h>main()char op;float d1,d2;printf("請(qǐng)輸入算式");scanf("%f%c%f",&d1,&op,&d2);switch(op) case '+': printf("%g+%g=%gn",d1,d2,d1+d2);break; case '-': printf(&
29、quot;%g-%g=%gn",d1,d2,d1-d2);break; case '*': printf("%g*%g=%gn",d1,d2,d1*d2);break; case '/': printf("%g/%g=%gn",d1,d2,d1/d2);break; 5.#include<stdio.h>main()int x,m,d;printf("請(qǐng)輸入你出生那年元旦的星期(1至7):n");printf("請(qǐng)輸入你的出生日期 (mm/dd) : n");s
30、canf("%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("你出生那天為星期%d",x+4);br
31、eak;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整除的最大的那個(gè)數(shù)。 3. 編程:找出若干個(gè)非零數(shù)中的最小值m以及它們的平均值a。 &
32、#160; 要求:若干個(gè)數(shù)由鍵盤輸入,每次輸入一個(gè)賦給變量x,x為零時(shí),結(jié)束輸入。 4. 編程:求兩個(gè)正整數(shù)m、n之間所有奇數(shù)之和x與偶數(shù)之和y。 要求: (1)m、n的值由鍵盤輸入。
33、0; (2)輸入時(shí),允許用戶隨意先輸入大的或小的整數(shù)。 5. 編程:計(jì)算函數(shù)y的值。要求鍵盤接收自變量x的值,若x的值不為零,計(jì)算函數(shù)y的值并輸出,再從鍵盤接收下一個(gè)x的值,直到x的值為零,顯示“Thank You,Bye!”,爾后結(jié)束程序,已知函數(shù)y與自變量x的關(guān)系為:
34、160; 6. 編程:計(jì)算的近似值,的計(jì)算公式為:
35、60; 要求: (1)n值由鍵盤輸入。 (2)分別輸出當(dāng)n 為10、100、1000時(shí)的計(jì)算結(jié)果。
36、0; (3)輸出時(shí)要求每行顯示一組n、的值,每行形式如下: n具體值, = 具體值 &
37、#160; 7. 我國現(xiàn)有人口13億,設(shè)年增長率為1%,編寫程序,計(jì)算多少年后增加到20億。 8. 求解愛因斯坦數(shù)學(xué)題。有一條長階梯,若每步跨2階,則最后剩余1階;若每步跨3階,則最后剩2階;若每步跨5階,則最后剩4階;若每步跨6階,則最后剩5階;若每步跨7階,最后才正好一階不剩。請(qǐng)問,這條階梯最少共有多少階? 9. 每個(gè)蘋果0.8 元,第一天買2 個(gè)蘋果,第二天開始,每天買前一天的2 倍,直至購買的蘋果個(gè)數(shù)達(dá)到不超過100 的
38、最大值。編程:求每天平均花多少錢?(此題為選做) 1.#include<stdio.h>main()int i;for(i=1;i<=200;i+)if(i%7!=0) continue;printf("%d ",i);2.#include<stdio.h>main()int i,max=0;for(i=0;i<=1000;i+)if(i%13!=0) continue;if (max<i) max=i;printf("max=%dn",max
39、);3.#include<stdio.h>main()int i;float x,m,s,a;scanf("%f",&x);if(x!=0) m=x;s=x;for(i=1;i+)scanf("%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 <stdio.h>void main()int i,m,n,t,x=0,y=0;scanf("%d%d",&
40、amp;m,&n);if(m>n)t=m;m=n;n=t;for(i=m;i<=n;i+) if(i%2) x+=i;else y+=i;printf("x=%dn",x);printf("y=%dn",y);5.#include<stdio.h>main()float x,y;printf("input x:");scanf("%f",&x);for (;x>=0;)if(x>0&&x<100)y=3*x+1;printf("%f
41、",y);else if(x>=100)y=x*x-1;printf("%f",y);elseprintf("thank you bey !");break;scanf("%f",&x);6.#include<stdio.h>main() int n,i; double t,sum; printf("請(qǐng)輸入n的值n"); scanf("%d",&n); sum=2; i=1; t=2; while(i<n) t=t*(2*i)*(2*i)/(2*
42、i-1)/(2*i+1); i=i+1; printf("n=%d,=%fn",n,t);7.#include<stdio.h>main()double t=13,s=0;while(t<=20)t=t*(1+0.01);s+;printf("需要經(jīng)過%lf 年",s);8.#include<stdio.h>main()int x=7;while( !(x%2=1&&x%3=2&&x%5=4&&x%6=5)x=x+7;printf("%dn",x);9.#i
43、nclude <stdio.h>main()float s=0; int n=1,p=0,d=0; do d+; n=n*2; p=p+n; while(p+n*2<=100); s=p*0.8/d; printf("每天平均花%g元錢!n",s);實(shí)驗(yàn)七 C多重循環(huán)結(jié)構(gòu)程序設(shè)計(jì)1. 編程:輸出100以內(nèi)個(gè)位數(shù)為6且能被3整除的所有數(shù)。 2. 編程:鍵盤輸入6 位學(xué)生的5門課成績,分別統(tǒng)計(jì)出每個(gè)學(xué)生的平均成績。 3. 編程:輸入一個(gè)正整數(shù),統(tǒng)計(jì)該數(shù)的各
44、位數(shù)字中零的個(gè)數(shù),并求各位數(shù)字中的最大者。 4. 編程:分別用do while、while、for三種循環(huán)結(jié)構(gòu)求: 1!+2!+3!+.+n! ,要求n的值由鍵盤輸入。 5. 編程:計(jì)算100至1000之間有多少個(gè)數(shù)其各位數(shù)字之和是5。 6. 編程:從鍵盤輸入的10個(gè)整數(shù)中,找出第一個(gè)能被7整除的數(shù)。若找到,輸出此數(shù)后退出;若未找到,輸出“not exist”。 7. 編程:輸出1至100之間滿足如下條件
45、的數(shù):各位數(shù)的乘積大于各位數(shù)的和。 8. 編程:將整數(shù)316表示為兩個(gè)加數(shù)的和,使這兩個(gè)加數(shù)分別能被13和11整除。 9. 編程:打印出所有的"水仙花數(shù)"。所謂的"水仙花數(shù)"是指一個(gè)3位數(shù),其各位數(shù)字的立方和等于該數(shù)本身。例如,153是一個(gè)"水仙花數(shù)",因?yàn)橛?53=1*1*1+5*5*5+3*3*3。 10. 編程:一條有10個(gè)車站的鐵路線,共需要準(zhǔn)備多少種車票?1.#include<s
46、tdio.h>main()int i;for(i=1;i<=100;i+)if(i%10=6&&i%3=0)printf("%d ",i);2.#include<stdio.h>main()int i,j,a65;float s;for(i=0;i<6;i+)s=0;for(j=0;j<5;j+)printf("請(qǐng)輸入第%d個(gè)學(xué)生的第%d門成績",i+1,j+1);scanf("%d",&aij);s=s+aij;s=s/5;printf("第%d個(gè)學(xué)生平均成績?yōu)?
47、fn",i+1,s);3.#include<stdio.h>main()int x,i,max,t;i=0;max=0;scanf("%d",&x);dot=x%10;if(t=0) +i;else if(max<t) max=t;x=x/10;while(x);printf("i=%d,max=%d",i,max);4.#include<stdio.h>main()int n,i,a,s=0;printf("請(qǐng)輸入n:");scanf("%d",&n);a=
48、1;for(i=1;i<=n;i+)a=a*i;s=s+a;printf("s=%dn",s);#include<stdio.h>main()int n,i=1,a=1,s=0;printf("請(qǐng)輸入n:");scanf("%d",&n);while(i<=n)a=a*i; s=s+a; i+;print("s=%d",s);#include<stdio.h>main()int n,i=1,a=1,s=0;printf("請(qǐng)輸入n:");scanf(&
49、quot;%d",&n);doa=a*i;s=s+a;i+;while(i<=n);printf("s=%d",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;elsecount+;printf("%dn",count);6.#include <stdio.h>main()int x,i;printf("請(qǐng)輸入10個(gè)整數(shù):"); for(
50、i=1;i<=10;i+)scanf("%d",&x); if(x%7=0) printf("first number is %d",x);break; if(i>10) printf("not exist!");7.#include <stdio.h>main ( )int n,k=1,s=0,m ; for (n=1;n<=100;n+) k=1;s=0;m=n; while (m>=1) k*=m%10; s+=m%10; m=m/10 ; if(k>s) printf(&quo
51、t;%dn",n); 8.#include<stdio.h>main()int i=0,j,k;doi+;k=316-13*i;while(k%11);j=k/11;printf("316=13*%d+11*%dn",i,j);9.#include<stdio.h>main()int i,j,k,n; for(n=100;n<1000;n+) i=n/100; j=(n-i*100)/10; k=n%10; if(i*i*i+j*j*j+k*k*k=n) printf("%dn",n); 實(shí)驗(yàn)八 C程序控
52、制結(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之間不同的三個(gè)數(shù)構(gòu)成一個(gè)三位數(shù),編程統(tǒng)計(jì)共有多少種方法。 4. 編程:鍵盤輸入
53、一個(gè)不多于5位的正整數(shù),要求:(此題為選做) (1) 求它是幾位數(shù) (2) 逆序打印出各位數(shù)字。如原數(shù)為123,輸出則為321。 5. 編程:找出以下疑案的作案人(此題為選做) 已知該案涉及6個(gè)嫌疑人A、B、C、D、E、F,并且:
54、160; (1) A、B至少有一人作案。 (2) A、E、F這3人中至少有2人參與作案。 (3) A、D不可能是同案犯。 (4) B、C或同時(shí)作案,或與本案無關(guān)。 &
55、#160; (5) C、D中有且僅有一人作案。 (6) 如果D沒有作案,則E也不可能參與作案。 6. 編程:輸出下列形式的楊輝三角形的前10行(此題為選做) 1 1 1
56、160; 1 2 1 1 3 3 1 1 4 6 4 1 1.#include<stdio.h>main()int s=0,i=1,t=0;while(i<10)t=t*10+i;s+=t;i+;printf("s=%dn&
57、quot;,s);2.#include<stdio.h>main()int i;for(i=1;i<=99;i+) if(i*i%10=i|i*i%100=i) printf("%dn",i);3.#include <stdio.h> main()int i,j,k,count=0;for(i=1;i<=9;i+) for(j=0;j<=9;j+)if(i=j) continue;else for(k=0;k<=9;k+)if(k!=i&&k!=j) count+;printf("%dn",
58、count);實(shí)驗(yàn)九 C的數(shù)組1. 編程實(shí)現(xiàn):輸入一個(gè)正整數(shù)n(1<n10),再輸入n個(gè)整數(shù),把這些數(shù)逆序存放到數(shù)組中再按順序輸出。 例如:輸入5,再輸入三個(gè)數(shù)8、23、1、7、19,則輸出為:19、7、1、23、8。 2. 編程實(shí)現(xiàn):輸入10個(gè)正整數(shù),將它們中的最小值與第一個(gè)數(shù)交換,最大值與最后一個(gè)數(shù)交換,然后輸出交換后的10個(gè)數(shù)。
59、0; 3. 編程實(shí)現(xiàn):已知二次等差數(shù)列的前4項(xiàng)為2,5,10,17,請(qǐng)定義一維整型數(shù)組存儲(chǔ)該數(shù)列的前20項(xiàng),并每5個(gè)數(shù)為一行輸出該數(shù)列的前20項(xiàng)。 4. 已知一組整型數(shù)據(jù)已按從小到大排列好,現(xiàn)任意輸入一個(gè)整數(shù),請(qǐng)按原來排序的規(guī)律將它插入到數(shù)組中(例如:原來的一組整數(shù)為1,3,5,8,9,若輸入的整數(shù)是7,則最終的結(jié)果為: 1,3,5,7,8,9),請(qǐng)編程實(shí)現(xiàn)。 5. 編程:將一個(gè)4×4的整型矩陣元素按副對(duì)角線(右上到左下)互換。 &
60、#160; 要求: (1)鍵盤輸入矩陣各元素的值。 (2)互換前,按矩陣形式輸出矩陣。
61、; (3)互換后,按矩陣形式輸出矩陣。 6. 求一個(gè)4×4的整數(shù)矩陣的副對(duì)角線(右上到左下)上所有奇數(shù)的和sum及偶數(shù)的平均值ave。 要求:結(jié)果保留2位小數(shù) 7. 通過循環(huán)按行順序?yàn)橐粋€(gè)5×5的二維數(shù)組a賦1到25的自然數(shù),然后輸出該數(shù)組的左
62、下半角元素的值和它們之和。 8. 定義一個(gè)實(shí)數(shù)型數(shù)組,將10個(gè)實(shí)數(shù)輸入到數(shù)組中,編程實(shí)現(xiàn)任一塊區(qū)間所有元素的平均值,即輸入兩整數(shù)m,n,計(jì)算出數(shù)組中第m個(gè)元素開始的后n個(gè)元素的平均值,包括第m個(gè)元素(若n值過大,即個(gè)數(shù)太多,超過數(shù)組的最后一個(gè)元素,則統(tǒng)計(jì)到最后一個(gè)元素)。 例如:數(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。
63、; 9. 一個(gè)整型數(shù)組有10個(gè)元素,編寫程序刪除所有值為n的元素。如:數(shù)組中為1,3,2,4,2,7,9,0,2,5,n的值為2,刪除后輸出數(shù)組元素應(yīng)該為1,3,4,7,9,0,5。(此題為選做) 10. 定義兩個(gè)N行N列的二維數(shù)組a、b,編寫程序,將a數(shù)組最后一行放到b數(shù)組的第0列中,把a(bǔ)數(shù)組中的第0行放到b數(shù)組的最后一列中,b所指二維數(shù)組中其他元素的數(shù)據(jù)不變。(此題為選做) 11. 試編程實(shí)現(xiàn)如下功能:先
64、定義一個(gè)4行5列的數(shù)組(矩陣),調(diào)用庫函數(shù)rand()隨機(jī)產(chǎn)生20-50之間的整數(shù)給數(shù)組元素賦值,再將矩陣中第二列與第四列的元素互換。要求先輸出原數(shù)組,再輸出交換后的數(shù)組(rand函數(shù)的使用請(qǐng)參閱教材259頁)。(此題為選做)1.#include<stdio.h> main()int a10,n,i;scanf("%d",&n);for(i=n-1;i>=0;i-)scanf("%d",&ai);for(i=0;i<n;i+)printf("%d ",ai);printf("n&quo
65、t;);2.#include <stdio.h>main()int n,i,a10,max,min,t,r,p;scanf("%d",&n);for (i=1;i<=n;i+)scanf("%d",&ai);min=a1;for (i=1;i<=n;i+)if (ai<a1)min=ai;r=i;t=a1,a1=min,ar=t;max=an;for (i=1;i<=n;i+)if (ai>an)max=ai;p=i;t=an,an=max,ap=t;for (i=1;i<=n;i+)pri
66、ntf("%d",&ai);3.#include <stdio.h>void main()int a21,i; for(i=1;i<=20;i+) ai=i*i+1; printf("%d ",ai); if(i%5=0) printf("n"); 4.#include <stdio.h>main()int a10=1,3,5,7,9,11,13,15,17,i,j,n;printf("請(qǐng)輸入1個(gè)整數(shù)");scanf("%d",&n);for(i=0
67、;i<9;i+) if(ai>n) for(j=9;j>i;j-)aj=aj-1; ai=n; break; if(n>=a8)a9=n;for(i=0;i<10;i+)printf("%d ",ai);printf("n ");6.#include<stdio.h>main()int a44,i,j,t=0; float s1=0 ,s2=0,ave; for(i=0;i<=3;i+) for(j=0;j<=3;j+) printf("input 16 ints:");scanf
68、("%d",&aij);for(i=0;i<=3;i+) for(j=3;j>=0;j-) if(i+j=3) if(aij%2!=0)s1=s1+aij; else t+; s2=s2+aij; ave=s2/t; printf("s=%0.2fnave=%0.2fn",s1,ave);7.#include <stdio.h>main() int i,j,k=1,s=0; int a55; for(i=0;i<5;i+) for(j=0;j<5;j+) aij=k; k+; putchar(10); for(
69、i=0;i<5;i+) for(j=0;j<5;j+) printf("%dt",aij); printf("n"); putchar(10); for(i=0;i<5;i+) for(j=0;j<=i;j+) printf("%dt",aij); printf("n"); s=s+aij; printf("s=%d",s);實(shí)驗(yàn)十 C字符數(shù)組和字符串函數(shù)*1. 編寫字符串拷貝程序,并要求拷貝過程中將字符串中的小寫字母轉(zhuǎn)換成大寫字母。
70、160; 2. 從鍵盤輸入兩個(gè)字符串a(chǎn)和b,要求不使用庫函數(shù)strcat,把串b的前5個(gè)字符連接到串a(chǎn)中;如果b中的長度小于5,則把b的所有元素都連接到a中。 3. 輸入一個(gè)以回車結(jié)束的字符串(少于80個(gè)字符),再輸入一個(gè)字符,統(tǒng)計(jì)并輸出該字符在字符串中出現(xiàn)的次數(shù),然后輸出該字符串。 4. 編程: 輸入一個(gè)字符串,輸出該字符串中出現(xiàn)次數(shù)最多的字符以及出現(xiàn)的次數(shù)。
71、0; 5. 編程: 鍵盤接收一個(gè)字符串(只含大、小寫英文字母),將該字符串加密后輸出。 加密規(guī)則為:若為小寫字母則不變,若為大寫字母則將其轉(zhuǎn)換為小寫后再后移一個(gè)字母,例如“A”應(yīng)轉(zhuǎn)換為“b”,“B”應(yīng)轉(zhuǎn)換為“c”,“Y”應(yīng)轉(zhuǎn)換為“z”,而“Z”應(yīng)轉(zhuǎn)換為“a”。 6. 編程:輸入一個(gè)以回車結(jié)束的字符串a(chǎn)(少于80個(gè)字符),再輸入一個(gè)字符串b,統(tǒng)計(jì)并輸出b在a中出現(xiàn)的次數(shù),然后再輸出這兩個(gè)字符串。
72、 7. 編程:輸入一個(gè)以回車結(jié)束的字符串(少于80個(gè)字符),將該字符串倒序存放后按順序輸出。 例如:如數(shù)組中開始時(shí)元素為“abcd”,程序執(zhí)行后數(shù)組中為“dcba”,并輸出“dcba” 8. 編程: 實(shí)現(xiàn)對(duì)字符串的加密,要求從鍵盤輸入一個(gè)字符串,輸出加密之后的字符串。(此題為選做)
73、60; 加密規(guī)則為: 對(duì)于串中第奇數(shù)個(gè)字符,若是字母,則把該字母變?yōu)樗竺娴淖帜福ㄈ魹閆則變?yōu)锳),不是字母則不變; 對(duì)于串中第偶數(shù)個(gè)字符,若是字母,則把該字母變?yōu)樗懊娴淖帜福ㄈ魹锳則變?yōu)閆),不是字母則不變;
74、160; 大小寫字母都遵循此規(guī)則。 例如: 若原字符串是:AbbaZG Ha-MnnK Yzx 加密字符串為:BaczAF Gb-Nmoj Xaw
75、; 9. 編程:輸入一行英文字符串,統(tǒng)計(jì)單詞的個(gè)數(shù)(單詞和單詞以空格分隔)。(此題為選做)1.#include<stdio.h>#include<string.h>main()char str140,str220;int i,k;printf("請(qǐng)輸入第一個(gè)字符串n");scanf("%s",str1);printf("請(qǐng)輸入第二個(gè)字符串n");scanf("%s",str2);for(i=0;s
76、tr1i!='0'i+);for(k=0;str2k!='0'k+)str1i=str2k;i+;str1i='0'for(i=0;str1i!='0'i+)if(str1i>='a' && str1i<='z')str1i=str1i-32;printf("%sn",str1);2.#include "stdio.h"main()char a80,b40,*q=a,*p=b;int i=0;printf("字符串a(chǎn):&q
77、uot;);gets(a);printf("字符串b:");gets(b);while(*q+); q-;while(*p+) i+;p=b;if(i<5)while(i-) *q+=*p+;elsefor(i=0;i<5;i+) *q+=bi;*q='0'puts(a);3.#include <stdio.h>main()char c80,ch;int i,num=0;printf("請(qǐng)輸入字符串及字符:");gets(c);ch=getchar();for(i=0;ci!='0'i+)if(ci=ch) num+;printf("num(%c)=%dn",ch,num);puts(c);4.#include<stdio.h>#include<conio.h>#include<string.h> main() char str100,str_sort100,c; int i,j,len,m; printf("請(qǐng)輸入字符串:"); gets(str); strcpy(str_sort,str); len=strlen(str_sort
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度緊急避難場(chǎng)所標(biāo)示牌設(shè)計(jì)與施工合同3篇
- 2024物業(yè)服務(wù)合同補(bǔ)充:社區(qū)物業(yè)智能化改造協(xié)議3篇
- 2024水廠給排水設(shè)備采購與維護(hù)服務(wù)合同
- 腦梗死健康宣教
- 2024年水利樞紐建設(shè)勞務(wù)承包合同
- 專業(yè)個(gè)人道路運(yùn)輸協(xié)議樣式2024
- 2024年財(cái)產(chǎn)質(zhì)押擔(dān)保合同模板6篇
- 福建省南平市萬安中學(xué)2022年高一生物下學(xué)期期末試題含解析
- 色彩之旅模板
- 青春期健康守護(hù)
- 制作課件wps教學(xué)課件
- MCN機(jī)構(gòu)簽約合同范本
- 解讀智能問答系統(tǒng)研究
- 2024年露天煤礦地質(zhì)勘查服務(wù)協(xié)議版
- 部編版四年級(jí)上冊(cè)道德與法治期末測(cè)試卷
- DB11T 1805-2020 實(shí)驗(yàn)動(dòng)物 病理學(xué)診斷規(guī)范
- 人教版小學(xué)六年級(jí)下冊(cè)音樂教案全冊(cè)
- 2024年資格考試-WSET二級(jí)認(rèn)證考試近5年真題附答案
- 個(gè)體工商營業(yè)執(zhí)照變更委托書
- 2024版【人教精通版】小學(xué)英語六年級(jí)下冊(cè)全冊(cè)教案
- 人教版歷史2024年第二學(xué)期期末考試七年級(jí)歷史試卷(含答案)
評(píng)論
0/150
提交評(píng)論