版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第二周1單選(2分)已知:char a;int b;float c;double d;執(zhí)行語句 c=a+b+c+d;后,變量c的數(shù)據(jù)類型是_。得分/總分· A. double· B.float 2.00 /2.00· C. int· D. char2單選(2分)已知 int i=5;執(zhí)行語句 i+=+i;i的值是_。得分/總分· A.其他答案都不對· B.11· C.10· D.12 2.00 /2.003單選(2分)已知int x=5,y=5,z=5;執(zhí)行語句x%=y+z;后,x的值是_。得分
2、/總分· A.1· B.0· C.5 2.00 /2.00· D.64單選(2分)下列可以正確表示字符型常數(shù)的是_。得分/總分· A. "a"· B. "n"· C. 297· D. 't 2.00 /2.005單選(2分)字符串"065a,n"的長度是_。得分/總分· A. 7· B.5 2.00 /2.00· C.8· D.66單選(2分)把算術表達式
3、60; 表示為一個C語言表達式,正確的寫法是_。得分/總分· A.31.6*a*8+1.0/7*12· B.(31.6*a*8+1.0/7)*12 2.00 /2.00· C.(31.6a*8+1/7)*12· D.(31.6a*8.0+1.0/7.0)*127單選(2分)溫度華氏和攝氏的關系是: C=5(F-32)/9。已知:float C,F;由華氏求攝氏的正確的賦值表達式是_。 得分/總分· A.C=5/9(F-32)· B.三個表達式都正確· C.C=5*(F-32)/9 2.00 /2.00
4、· D.C=5/9*(F-32)8單選(2分)已知int i=10;表達式“20-0<=i<=9”的值是_。得分/總分· A.1 2.00 /2.00· B.20· C.19· D.09單選(2分)已知:int x,y;double z;則以下語句中錯誤的函數(shù)調用是_。得分/總分· A.scanf ("%d,%lx,%le",&x,&y,&z)· B.scanf ("%2d*%d%lf",&x,&y,&z)
5、3; C.scanf ("%x%*d%o",&x,&y)· D.scanf ("%x%o%6.2f",&x,&y,&z) 2.00 /2.0010單選(2分)已知” int a=5,b=5,c;”,則執(zhí)行表達式” c=a=a>b”后變量 a 的值為_。得分/總分· A.0 2.00 /2.00· B.4· C.5· D.1第三周1讓我們學習用C語言向世界問好。 “Hello World”示例程序最早出現(xiàn)于1972年,由貝爾實驗室成員Br
6、ian Kernighan撰寫的內部技術文件Introduction to the Language B之中。不久同作者于1974年所撰寫的Programming in C: A Tutorial,也延用這個示例。 一般來說,這是每一種計算機編程語言中最基本、最簡單的程序,亦通常是初學者所編寫的第一個程序。它還可以用來確定該語言的編譯器、程序開發(fā)環(huán)境,以及運行環(huán)境是否已經(jīng)安裝妥當。將“Hello World”作為第一個示范程序,已經(jīng)成為編程語言學習的傳統(tǒng)。 我們在這里繼續(xù)傳統(tǒng),這也是一種向前輩們致敬的方式之一吧! 最早的程序基本是這個樣子的: #include int main() print
7、f("Hello world.n"); return 0; 請模仿上面的程序,看看是否可以通過編譯?如果你能通過這個簡單的程序,那就讓我們繼續(xù)完成后面的習題吧。(2分)源程序:#include <stdio.h>int main() printf("Hello world.n"); return 0;2學學scanf和printf的用法吧(5分)題目內容:該如何處理 double 型的數(shù)據(jù):如何定義變量類型?如何使用 scanf 函數(shù)?如果已知圓柱的底面半徑 r ,以及高 h ,則可計算出圓柱的側面積 ,體積 。其中 。輸入格式:
8、第一行輸入圓柱的底面半徑 r第二行輸入圓柱的高 h輸出格式:s=< 圓柱的側面積 >,v=< 圓柱的體積 >要求 1. 所有變量都定義為雙精度類型2. 結果精確到小數(shù)點后兩位。作為練習題目:我們已經(jīng)給您編寫好了大部分的代碼,請您自己修改幾個地方,完成程序的剩余部分。*分隔線*#include<stdio.h>#define PAI 3.1415926int main() int r,h; double s,v; scanf("%d
9、 %d", ); s=2*PAI*r*h; v=PAI*r*r*h; printf("s=%.2f,v= n",s, ); &
10、#160; return 0;輸入樣例:28輸出樣例:s=100.53,v=100.53源程序:#include <stdio.h>#define PAI 3.1415926int main() double r,h; double s,v; scanf("%lf%lf",&r,&h); s=2*PAI*r*h; v=PAI*r*r*h; printf("s=%.2lf,v=%.2lfn",s,v); return 0;3輸出字符的 ASCII 碼(10分)題目內容:我們在計算機基礎中已經(jīng)學過:字母在計算機中采用ASCII碼進
11、行存儲。下面要從鍵盤上輸入任意一個字符,然后輸出該字符對應的ASCII碼。輸入格式:一個字符輸出格式:該字符對應的ASCII碼輸入樣例:A輸出樣例:The ASCII of character 'A' is 65.源程序:#include <stdio.h>int main() char ch; ch=getchar(); printf("The ASCII of character '%c' is %d.n",ch,ch); return 0;4一年級的算術題(10分)題目內容:小明上小學一年級了,老師已經(jīng)教會了他們進行整數(shù)的
12、+、-、*、/、% 計算,下面老師開始出題,給出一個簡單的算術表達式,請小明給出計算結果。輸入格式:接受兩個整數(shù),每個整數(shù)之間使用空格分隔。例如輸入格式為:123 444輸出格式:分別輸出按照整型數(shù)據(jù)進行 +、-、*、/、* 之后的運行結果。輸入樣例:10 3輸出樣例:10+3=1310-3=710*3=3010/3=310%3=1源程序:#include <stdio.h>int main() int a,b; scanf("%d %d",&a,&b); printf("%d+%d=%dn",a,b,a+b);
13、printf("%d-%d=%dn",a,b,a-b); printf("%d*%d=%dn",a,b,a*b); printf("%d/%d=%dn",a,b,a/b); printf("%d%d=%dn",a,b,a%b); return 0;5判斷三角形的形狀(10分)題目內容:輸入三角型的三條邊,判斷三角形的形狀。假設輸入的三邊邊長均>0。輸入格式:三角型的3條邊的長度(int型)。輸出格式:等邊三角形:equilateral triangle等腰三角形:isoceles triangle不構成三角形
14、:non-triangle一般三角形:triangle輸入樣例:2 2 2輸出樣例:equilateral triangle.源程序:#include <stdio.h>int main() int a,b,c; scanf("%d%d%d",&a,&b,&c); if(a+b>c && a+c>b && b+c>a) if(a=b && b=c && a=c) printf("equilateral triangle.n"); else
15、 if(a=b | b=c | a=c) printf("isoceles triangle.n"); else printf("triangle.n"); else printf("non-triangle.n"); return 0;第四周作業(yè)本次得分為:6.00/8.00, 本次測試的提交時間為:2016-04-23, 如果你認為本次測試成績不理想,你可以選擇再做一次。1單選(2分)下面程序的輸出是 #include <stdio.h> main ( ) int x=1, y=0, a=0, b=0; switch
16、( x ) case 1: switch ( y ) case 0: a+; break; case 1: b+; break; case 2: a+; b+; break; printf ("a=%d,b=%dn", a, b ); 得分/總分A. a=1,b=1B. a=2,b=2C. a=1,b=0D. a=2,b=1 2.00 /2.002單選(2分) 以下程序的輸出結果是 main( ) float x=2,y; if (x<0) y=0; else if (x<5&&!x) y=1/(x+2); else if (x<10) y
17、=1/x; else y=10; printf(”%fn”,y);得分/總分A. 10.000000B. 0.000000C. 0.500000 2.00 /2.00D. 0.2500003填空(2分)若下列程序執(zhí)行后t的值為4,則執(zhí)行時輸入a,b的值范圍是 #include ”stdio.h”main( ) int a, b, s=1, t=1; scanf (”%d, %d”, &a, &b); if (a>0) s+=1; if (a>b) t+=s; else if(a=b) t=5; else t = 2*s; printf (”s=%d, t=%dn”,
18、 s,t); 得分/總分0<a<b 2.00/2.004填空(2分)下列程序段當a的值為014和0x14時的執(zhí)行結果分別是 if ( a=0xA | a >12 )if ( 011&10=a ) printf (”%d!n”,a);else printf (”Right!%dn”,a);else printf (”Wrong!%dn”,a);得分/總分10!Right!11第四周1計算時鐘的夾角(10分)題目內容:鐘面上的時針和分針之間的夾角總是在 0 180之間 ( 包括 0 和180 ) 。舉例來說,在十二點的時候兩針之間的夾角為 0
19、;,而在六點的時候夾角為180 ,在三點的時候為90 。本題要解決的是計算 12:00 到 11:59 之間任意一個時間的夾角。輸入格式:每組測試數(shù)據(jù)包含兩個數(shù)字:第一個數(shù)字代表小時 ( 大于 0 小于等于 12) ,第二個數(shù)字代表分 ( 在區(qū)間 0, 59 上 ) 。輸出格式:對應每組測試數(shù)據(jù),用常用格式顯示時間以及這個時候時針和分針間的最小夾角,精確到小數(shù)點后一位。輸出格式如下所示。再看一看,想一想:是否可以不用if 語句,只使用 printf 函數(shù)來簡化你的程序?輸入樣例:12 0輸出樣例:At 12:00 the angle is 0.0 degrees.源程序:#
20、include <stdio.h>#include <math.h>int main() int m,n,h; double x,y,degree; scanf("%d%d",&n,&m); y=6.0*m; h=n; if(n=12) h=0; x=(h+m/60.0)*30; degree=fabs(y-x); printf("At %d:%02d the angle is %.1lf degrees.n",n,m,degree); return 0;2確定母親節(jié)(10分)題目內容:母親節(jié)是每年的五月第二個星期
21、天,針對輸入的年份,計算該年的哪一天是母親節(jié)。輸入格式:年份輸出格式:日期(5月的哪一天)輸入樣例:2014輸出樣例:11源程序:#include <stdio.h>int main() int w,c,y,m=5,d=1; scanf("%d",&y); c=y/100; y=y%100; w=c/4-2*c+y+(y/4)+13*(m+1)/5+d-1; w=w%7; if(w<0) w=(w+14)%7; if(w=0) d=w+8; else if(w>0) d=15-w; printf("%dn",d); ret
22、urn 0;3計算星期(10分)題目內容:給出任意一個年月日(年>1900),現(xiàn)在我們不能只是直接計算,要先判斷給出的日期是否合法,對于非法的日期要給出錯誤提示信息,合法的日期要再計算是星期幾。輸入格式:年 月 日輸出格式:06。 星期日用 0 表示,星期一用 1 表示,星期二用 2 表示.星期六用 6 表示。假設年份大于1900。先想一想:我們現(xiàn)在只會使用 if 語句,該如何建立數(shù)學模型?輸入樣例:2013 3 11輸出樣例:1輸入樣例:2013 13 15輸出樣例:month is error.輸入樣例:2013 3 32輸出樣例:day is e
23、rror.源程序:#include <stdio.h>int main()int y,m,d,c,w;scanf("%d%d%d",&y,&m,&d);if(y<1900) printf("year is error.n");else if(m<1 | m>12) printf("month is error.n"); else if(d>31 | d<1) printf("day is error.n");else c=y/100; y=y%100
24、; if(m=1) m=13; if(m=2) m=14; w=c/4-2*c+y+y/4+13*(m+1)/5+d-1; w=w%7; if(w<0) w=(w+14)%7; printf("%dn",w);return 0;4求最后3位數(shù)值(10分)題目內容:小明在中學會求一個數(shù)的 n 次方了,但計算機還不會,請你來編寫一個程序吧。由于計算機比較“笨”,所以我們編寫程序的功能不用太強,只要能算出 a 的 n 次方的最后 3 位數(shù)就可以了。輸入格式:a 和 n 的值。假設 a<=150 。輸出格式:求 a 的 n 次方的最后 3 位數(shù)。提示:再想一想,你的方法
25、對嗎?你用的是什么數(shù)據(jù)類型?輸入樣例:10 0輸出樣例:The last 3 numbers is 1.源程序:#include <stdio.h>int main() int a,n,i,x; int p=1; scanf("%d%d",&a,&n); if(n!=0 && a<=150) for(i=1;i<=n;i+) p=p%1000*a; x=p%1000; printf("The last 3 numbers is %03d.n",x); else printf("The la
26、st 3 numbers is 1.n"); return 0;第五周編程作業(yè)1鍛煉身體吧(10分)題目內容:沫沫,灰灰和渣渣去鍛煉身體,如果對他們跑步的距離分別只計整數(shù) a、 b、 c,由于他們身高的差距,造成了 a<=b<=c,并且渣渣跑了N米之后就再也跑不動了。但是,按照他們事先的約定: 只有當 c*c=a*a+b*b 時,他們的鍛煉才有效果。現(xiàn)在他們三個人想知道,如果渣渣的極限N已知,那么有多少種有鍛煉效果的跑步方案(即a, b, c有多少種可能的取值)。輸入格式:一個整數(shù)N,表示渣渣的體力極限, N <= 5000。輸出格式:一個整數(shù),代表他們跑步方案的個
27、數(shù)。Hint:對于輸入N=5,有方案 a=3, b=4, c=5, 共一種。輸入樣例:5輸出樣例:1源程序:#include <stdio.h>int main()int n,a,b,c,m;scanf("%d",&n);m=0;for(c=1;c<=n;c+)for(a=1;a<=n;a+)for(b=1;b<=n;b+)if(c*c=a*a+b*b && a<=b) m+;printf("%dn",m);return 0;2尋找特殊偶數(shù)(10分)題目內容:有一種特殊偶數(shù),它每一位上的數(shù)字都兩
28、兩不相同。我們現(xiàn)在需要找出四位數(shù)中某一區(qū)間內的這類偶數(shù)。輸入格式:所要尋找的四位偶數(shù)的范圍。每組輸入有兩個數(shù)字:第一個數(shù)字是最小范圍;第二個數(shù)字是最大范圍。如果輸入遇到0,輸入結束。輸出格式:列出此范圍內的所有特殊偶數(shù),并且列出此范圍內特殊偶數(shù)的個數(shù)。輸入樣例:3000 30206040 60900 0輸出樣例:3012 3014 3016 3018 counter=46042 6048 6052 6054 6058 6072 6074 6078 60
29、82 6084 counter=10輸入樣例:9 10187 -10 0輸出樣例:ErrorError源程序:#include <stdio.h>int main()int m,n,i,counter;int a,b,c,d;doscanf("%d%d",&m,&n);if(m!=0 && n!=0 && (m>=1000 && m<10000) && (n>=1000 && n<10000) && m&
30、lt;n) counter=0;for(i=m;i<=n;i+) if(i%2=0) a=i/1000;b=i%1000/100;c=i%100/10;d=i%10; if(a!=b && a!=c && a!=d && b!=c && b!=d && c!=d) counter+; printf("%d ",i); printf("ncounter=%dn",counter);else if(m=0 && n=0) return 0;else prin
31、tf("Errorn");while(1); return 0;3求最小 m 值(10分)題目內容:求滿足下列不等式的最小 m。 1 + 2 + 3 + 4 + . + m n例如:n=100,當 m =14 時,滿足:1+2+3+4+.+13=91<100,而 1+2+3+4+.+14=105>100。輸入格式:n輸出格式:m輸入樣例:100輸出樣例:14源程序:#include <stdio.h>int main()int n,m,s=0;scanf("%d",&n);for(m=1
32、;s<n;m+)s=s+m;printf("%dn",m-1);return 0;第六周作業(yè)1單選(2分)求取滿足式 的n,正確的語句是· A. for(i=1,s=0;(s=s+i*i+)<=1000;n=i)· B. for(i=1,s=0;(s=s+i*+i)<=1000;n=i)· C. for(i=1,s=0;(s=s+i*i)<=1000;n=+i)· D. for(i=1,s=0;(s=s+i*i)<=1000;n=i+)2單選(2分)下面的for語句
33、 1. for(x=0,y=10;(y>0)&&(x<4);x+,y- )· A. 循環(huán)執(zhí)行3次· B. 循環(huán)執(zhí)行4次· C. 是無限循環(huán)· D. 循環(huán)次數(shù)不定3單選(2分) 已知int i=1; 執(zhí)行語句while (i+<4) ;后,變量i的值為 · A. 5· B. 3· C.
34、4· D. 64單選(2分)下面程序的輸出結果是_1. main()2. int i,j,x=0;3. for(i=0;i<2;i+)4. &
35、#160; x+;5. for(j=0;j<-3;j+)6.
36、60; if(j%2)7. continue;8. x+;9.
37、; 10. x+;11. 12.
38、160; printf(”x=%dn”,x);13. · A. x=12· B. x=6· C. x=8· D. x=4 5單選(2分)假定從鍵盤上輸入“3.6,2.4<回車>”,下面程序的輸出是_1. #inclu
39、de <math.h>2. main()3. float x,y,z;4. scanf(”%f,%f”,&x,&y);5.
40、0; z=x/y;6. while(1)7. if(fabs(z)>1.0)8.
41、; x=y;9. y=z;10. z=x/y;11.
42、0; 12. else break;13. 14.
43、 printf(”%fn”,y);15. 注:fabs()是浮點數(shù)絕對值函數(shù)。· A. 1.500000· B. 1.600000· C. 2.400000· D. 2.000000 6填空(2分)下面程序的功能是輸出1到100之間每位數(shù)的乘積大于每位數(shù)的和的數(shù)。例如數(shù)字26,數(shù)位上數(shù)字的乘積12大
44、于數(shù)字之和8。(答案以 的形式提交,如 a b c)1. main()2. int n,k=1,s=0,m;3. for(n=1;n<=100;n+)4.
45、 k=1;5. s=0;6. ;7.
46、 while( ) 8. k*=m%10;9. s+=m%10;10.
47、60; ;11. 12. if(k>s)13.
48、0; printf(”%d”,n);14. 15. m=n m>0 m=m/10第六周編程1數(shù)字正方型(10分)題目內容:這是雙重循環(huán)的入門題目,大家來看看,你會做嗎?輸入 n 的值,輸出如下例( n=4 )所示的由數(shù)字組成的正方型。
49、 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16輸入格式:n輸出格式:數(shù)字組成的正方型輸入樣例:1輸出樣例: 1源程序:#include <stdio.h>int main()int n,i,j,s=0;scanf("%d",&n);for(i=1;i<=n;i+) for(j=1;j<=n;j+) printf("%3d",+s); printf("n")
50、;return 0;2空心字符菱形(10分)題目內容:根據(jù)菱型起始字母和菱形的高度,打印空心的由字符組成的菱形。輸入格式:菱型起始字母和菱形的高度。輸出格式:參照樣例,打印空心的由字符組成的菱形。輸入樣例:C 4輸出樣例: C D D E EF F E E D D C源程序:#include <stdio.h>int main()char ch;int n,i,j,k; scanf("%c %d",&ch,&n);for(i=1;i<=n;i+) for(k=1;k<=n-i;k+) printf(" "); fo
51、r(j=1;j<=2*i-1;j+) if(j=1 | j=2*i-1) printf("%c",ch); else printf(" "); printf("n"); ch+;ch=ch-2;for(i=n-1;i>=1;i-) for(k=1;k<=n-i;k+) printf(" "); for(j=1;j<=2*i-1;j+) if(j=1 | j=2*i-1) printf("%c",ch);else printf(" "); printf(
52、"n"); ch-;return 0;3郵票組合(10分)題目內容:我們寄信都要貼郵票,在郵局有一些小面值的郵票,通過這些小面值郵票中的一張或幾張的組合,可以滿足不同郵件的不同的郵資?,F(xiàn)在,郵局有4種不同面值的郵票。在每個信封上最多能貼5張郵票,面值可相同,可不同。輸入格式:四種郵票的面值。輸出格式:用這四種面值組成的郵資最大的從1開始的一個連續(xù)的區(qū)間。說明:如結果為10,則表明使用4張郵票可組合出1、2、3、4、5、6、7、8、9、10這些郵資。名詞解釋:郵資:就是你寄東西需要花多少錢。郵票面額:是由國家發(fā)行的具有固定價格的花紙片,被稱為郵票。如果你寄東西,郵局稱了重量,
53、告訴你要240分。這樣你就要貼郵票了。如果現(xiàn)在郵局的郵票有面值為80分、50分、20分和10分的四種,你就可以 采用不同的組合得到240的郵資,例如:采用3張80分的可以湊出240分;或者24張10分的湊起來240分也可以。顯然不同郵票的組合都可以得到同樣一種郵資。輸入樣例:1 4 12 21輸出樣例:The max is 71.源程序:#include <stdio.h>int main()int a,b,c,d,i,j,k,m,t=0,s=0,n=1,x=0;scanf("%d%d%d%d",&a,&b,&c,&d);/for
54、(s=1;s<=d*5;s+)loop:for(i=0;i<=5;i+)for(j=0;j<=5;j+)for(k=0;k<=5;k+)for(m=0;m<=5;m+)if(s=a*i+b*j+c*k+d*m && i+j+k+m<=5)x+;if(x!=0) x=0;n+;s+;goto loop;printf("The max is %d.n",n-2);/printf("s=%dn",s);return 0;4火鍋火鍋和火鍋(10分)題目內容:眾所周知,沫沫以火鍋為生。在E8的聚餐活動中,他經(jīng)常賣
55、萌賣無辜領著大家吃火鍋。有一天,沫沫聽說學校附近的哺呷哺呷在某現(xiàn)充的贊助下有一個優(yōu)惠活動,只需30軟妹幣,對每個客人,它會上N道菜,但是客人只能挑選其中連續(xù)上的一些菜。于是他非常興奮的拉著灰灰和渣渣去吃火鍋去啦。沫沫是一個十分挑食的人,所以他對每一道菜都有一個愉快度(當然因為他的挑食,某些事物的愉快度會是負數(shù))。為了讓沫沫能非常愉快的享受這次聚餐,善解人意的灰灰和渣渣決定幫他計算,他們應該怎么選擇菜才能使沫沫最開心地吃完這次聚餐。輸入格式:第一行是一個整數(shù)T,(T <= 10)表示測試案例的個數(shù)對于每個測試案例,第一行是一個整數(shù)N,( 1<=N <= 10000)表示菜的個數(shù)
56、接下來的N個數(shù)字,第i個數(shù)字si表示沫沫對第i道菜的愉快度。( -1000 <=si <= 1000)PS:由于CF又被血虐掉rating,所以沫沫的起始愉快度是0PPS:沫沫完全可能得到一個為負值的愉快值, poor 沫沫。輸出格式:對于每個樣例,輸出一個數(shù)字,表示沫沫吃完之后愉快度的最大值。HINT:對于 56 -1 5 4 -7我們選擇6, -1, 5, 4這四道菜(注意必須是連續(xù)的,所以不能跳過-1) 做完后請思考,如果N的范圍是1<=N<=100000呢?輸入樣例:256 -1 5 4 -770 6 -1 1 -6 7
57、-5輸出樣例:147源程序:#include <stdio.h>int main() int x,n,t,s,m,max=-1001; scanf("%d",&t); while(t-) scanf("%d",&n); s=m=0; while(n-) scanf("%d",&x); if(max<x) max=x; if(m+x>0) m=m+x; else m=0; if(s<m) s=m; if(max<0) printf("%dn",max); e
58、lse printf("%dn",s); return 0;第七周 數(shù)組一1組成最大數(shù)(10分)題目內容:任意輸入一個自然數(shù),輸出該自然數(shù)的各位數(shù)字組成的最大數(shù)。輸入格式:自然數(shù) n輸出格式:各位數(shù)字組成的最大數(shù)輸入樣例:1593輸出樣例:9531回車源程序:#include <stdio.h>int main() int a10=0,i=0,j,p,n,t; scanf("%d",&n); t=n; while(t) ai=t%10; t=t/10;i+; p=i; for(i=0;i<p-1;i+) for(j=0;j<
59、;p-i+1;j+) if(aj<aj+1) t=aj;aj=aj+1;aj+1=t; t=0; for(i=0;i<p;i+) t=t*10+ai; printf("%dn",t); return 0;2回文數(shù)(10分)題目內容: 輸出所有不超過(取n<256)的、其平方具有對稱性質的正整數(shù)(也稱為回文數(shù))。如: 1*1=1; 2*2=4;3*3=9;11*11=121;1,2,3,11是回文數(shù)。輸入格式: 輸入n(n<256)輸出格式:
60、60; 輸出所有不超過n的回文數(shù)輸入樣例:3輸出樣例:1回車2回車源程序:#include <stdio.h>int main() int n,m,i,f,s;scanf("%d",&n);if(n<256 && n>0) for(i=1;i<n;i+)m=i*i;f=m;s=0;while(f>0) s=s*10+f%10; f=f/10;if(m=s) printf("%dn",i); else printf("error.n");return 0;3洗牌(1
61、0分)題目內容:假設我們有 2n 張牌,它們以 1, 2, ., n, n+1, ., 2n 編號并在開始時保持著這種順序。一次洗牌就是將牌原來的次序變?yōu)?n+1, 1, n+2, 2, ., 2n, n,也就是將原來的前 n 張牌放到位置 2, 4, ., 2n,并且將余下的 n 張牌按照他們原來的次序放到奇數(shù)位置 1, 3, ., 2n-1。已經(jīng)證明對于任何一個自然數(shù) n,這 2n 張牌經(jīng)過一定次數(shù)的洗牌就回到原來的次序。但我們不知道對于一個特定的 n,需要幾次洗牌才能將牌洗回原來的次序。輸入格式:牌張數(shù)的一半n,即初始情況下一共有2n張牌,n為int型整數(shù)輸出格式:將牌洗回原來的次序所需
62、要的洗牌次數(shù)輸入樣例:10輸出樣例:6回車源程序:#include <stdio.h>#define N 80000int main()int aN=0,bN=0,cN,i,n,s=0; scanf("%d",&n); for(i=0;i<2*n;i+) ai=i+1; ci=ai; do for(i=0;i<n;i+) bi=ai+n; for(i=n-1;i>=0;i-) a2*i+1=ai; for(i=0;i<n;i+) a2*i=bi; / for(i=0;i<2*n;i+) printf("%4d&qu
63、ot;,ai); / printf("n"); s+; while(an!=n+1); printf("%dn",s); return 0;4子數(shù)整除(10分)題目內容:對于一個五位數(shù)a1a2a3a4a5,可將其拆分為三個子數(shù):· sub1=a1a2a3· sub2=a2a3a4· sub3=a3a4a5例如,五位數(shù)20207可以拆分成:· sub1=202· sub2=020(=20)· sub3=207現(xiàn)在給定一個正整數(shù)K,要求你編程求出10000到30000之間所有滿足下述條件的五位數(shù),條
64、件是這些五位數(shù)的三個子數(shù)sub1、sub2、sub3都可被K整除。輸出時請按照由小到大的順序排列(每行輸出一個數(shù))。輸入格式:一個正整數(shù)K輸出格式:請按照由小到大的順序排列(每行輸出一個數(shù))輸入樣例:15輸出樣例:22555回車25555回車28555回車30000回車源程序:#include <stdio.h>int main()int k,m,sub1,sub2,sub3;scanf("%d",&k);for(m=10000;m<=30000;m+) sub1=m/100; sub2=m%10000/10; sub3=m%1000; if(su
65、b1%k=0 && sub2%k=0 && sub3%k=0) printf("%dn",m);return 0;第八周 數(shù)組二1單詞排序(10分)題目內容:輸入 5 個單詞,將它們按從大到小的順序排列后輸出。輸入格式:5個單詞輸出格式:排序后的順序輸入樣例:BASIC回車C+回車Pascal回車C回車Fortran回車輸出樣例:Pascal回車Fortran回車C+回車C回車BASIC回車源程序:#include <stdio.h>#include <string.h>#define N 5#define M 100
66、00int main()char strNM,sM;int i,j;for(i=0;i<N;i+)gets(stri);for(i=0;i<N-1;i+)for(j=0;j<N-i-1;j+)if(strcmp(strj,strj+1)<=0) strcpy(s,strj); strcpy(strj,strj+1); strcpy(strj+1,s);for(i=0;i<N;i+)puts(stri);return 0;2尋找矩陣的鞍點(10分)題目內容:二維數(shù)組中的鞍點,即該位置上的元素是所在行上的最大值,是所在列上的最小值。二維數(shù)組也可能沒有鞍點。輸入一個二維數(shù)組的行數(shù)n,列數(shù)m,二維數(shù)組的諸元素值;輸出數(shù)組的鞍點,以及鞍點所在的行列號。輸入格式:第一行為矩陣的行數(shù)和列數(shù),從第二行開始,為矩陣本身(假設輸入的矩陣只有0和1個鞍點)輸出格式:數(shù)組的鞍點,以及鞍點所在的行列號 (下標從0開始)輸入樣
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 涉及打胎的孕婦離婚協(xié)議書(2025年版)6篇
- 二零二五版居民內地與香港離婚登記手續(xù)全程輔導合同3篇
- 2025年度個人養(yǎng)老貸款保證擔保合同樣本4篇
- 二零二五美容院美容師形象設計與推廣服務合同4篇
- 2025年度個人沙石加工及銷售一體化合同4篇
- 2025年度虛擬現(xiàn)實內容制作與版權保護合同3篇
- 2025年度露營裝備租賃與售后服務合同范本3篇
- 二零二五年度高端U盤定制銷售合同范本2篇
- 二零二五版模具制造設備租賃及質量控制協(xié)議4篇
- 鄭州電力職業(yè)技術學院《色彩學》2023-2024學年第一學期期末試卷
- 垃圾處理廠工程施工組織設計
- 天皰瘡患者護理
- 2025年蛇年新年金蛇賀歲金蛇狂舞春添彩玉樹臨風福滿門模板
- 四川省成都市青羊區(qū)石室聯(lián)中學2024年八年級下冊物理期末學業(yè)水平測試試題含解析
- 門診導醫(yī)年終工作總結
- 新生物醫(yī)藥產(chǎn)業(yè)中的人工智能藥物設計研究與應用
- 損失補償申請書范文
- 壓力與浮力的原理解析
- 鐵路損傷圖譜PDF
- 裝修家庭風水學入門基礎
- 移動商務內容運營(吳洪貴)任務二 社群的種類與維護
評論
0/150
提交評論