當前位置:首頁 » 編程語言 » 四川c語言青少年編程賽事
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

四川c語言青少年編程賽事

發布時間: 2022-08-12 00:58:05

『壹』 一道c語言編程題

#include<stdio.h>
#include<stdlib.h>
#include<memory.h>
ints1[9][9],a,b,w,h,x,y,n;
voidgc(inta,intb,inthp,intm)
{
if(hp!=0)
{
if(s1[a][b]==3){if((m<n)||(n==0))n=m;}else
{
if(s1[a][b]==4)hp=6;
if(s1[a-1][b]!=0)gc(a-1,b,hp-1,m+1);
if(s1[a+1][b]!=0)gc(a+1,b,hp-1,m+1);
if(s1[a][b-1]!=0)gc(a,b-1,hp-1,m+1);
if(s1[a][b+1]!=0)gc(a,b+1,hp-1,m+1);
}
}
}
intmain()
{
scanf("%d%d",&w,&h);
for(a=1;a<=h;a++)
for(b=1;b<=w;b++){scanf("%d",&s1[a][b]);if(s1[a][b]==2)x=a;y=b;}
for(a=0;a<=w;a++){s1[0][a]=0;s1[h+1][a]=0;}
for(a=0;a<=h;a++){s1[a][0]=0;s1[a][w+1]=0;}
gc(x,y,6,0);
printf("%d",n);
return0;
}

『貳』 求四川歷年NOIP C語言試題 初賽

第十二屆全國青少年信息學奧林匹克聯賽初賽試題
( 提高組 Pascal 語言 二小時完成 )
●● 全部試題答案均要求寫在答卷紙上,寫在試卷紙上一律無效 ●●
一、 單項選擇題 (共 10 題,每題 1.5 分,共計 15 分。每題有且僅有一個正確答案.)。
1. 在以下各項中。( )不是 CPU 的組成部分。
A. 控制器 B. 運算器 C. 寄存器 D. ALU E. RAM
2. BIOS(基本輸入輸出系統)是一組固化在計算機內( )上一個 ROM 晶元上的程序。
A. 控制器 B. CPU C. 主板 D. 內存條 E. 硬碟
3.在下面各世界頂級的獎項中,為計算機科學與技術領域作出傑出貢獻的科學家設立的獎項是( )。
A. 沃爾夫獎 B. 諾貝爾獎 C. 菲爾茲獎
D. 圖靈獎 E. 南丁格爾獎
4.在編程時(使用任一種高級語言,不一定是 Pascal),如果需要從磁碟文件中輸入一個很大的二維 數組(例如 1000*1000 的 double 型數組),按行讀(即外層循環是關於行的)與按列讀(即外層循 環是關於列的)相比,在輸入效率上( )。
A. 沒有區別 B. 有一些區別,但機器處理速度很快,可忽略不計
C. 按行讀的方式要高一些 D. 按列讀的方式要高一些 E. 取決於數組的存儲方式。
5.在 Pascal 語言中,表達式 (21 xor 2)的值是( )
A. 441 B. 42 C.23 D.24 E.25
6.在 Pascal 語言中,判斷 a 不等於 0 且 b 不等於 0 的正確的條件表達式是( )
A. not a=0 or not b=0 B. not((a=0)and(b=0)) C. not(a=0 and b=0) D. (a<>0)or(b<>0) E. (a<>0)and (b<>0)
7.某個車站呈狹長形,寬度只能容下一台車,並且只有一個出入口。已知某時刻該車站狀態為空,從 這一時刻開始的出入記錄為:「進,出,進,進,進,出,出,進,進,進,出,出」。假設車輛入站的 順序為 1,2,3,……,則車輛出站的順序為( )。
A. 1, 2, 3, 4, 5 B. 1, 2, 4, 5, 7 C. 1, 4, 3, 7, 6
D. 1, 4, 3, 7, 2 E. 1, 4, 3, 7, 5
8.高度為 n 的均衡的二叉樹是指:如果去掉葉結點及相應的樹枝,它應該是高度為 n-1 的滿二叉樹。在這里,樹高等於葉結點的最大深度,根結點的深度為 0,如果某個均衡的二叉樹共有 2381 個結點, 則該樹的樹高為( )。
A. 10 B. 11 C. 12 D. 13 E. 210 – 1
9. 與十進制數 1770.625 對應的八進制數是( )。由OIFans.cn收集
A. 3352.5 B. 3350.5 C. 3352.1161
D. 3350.1151 E. 前 4 個答案都不對
10.將 5 個數的序列排序,不論原先的順序如何,最少都可以通過( )次比較,完成從小到大的排序。
A. 6 B. 7 C. 8 D. 9 E. 10
二、 不定項選擇題 (共 10 題,每題 1.5 分,共計 15 分。每題正確答案的個數大於或等於 1。多選 或少選均不得分)。
11. 設A=B=D=true,C=E=false,以下邏輯運算表達式值為真的有( )。
A. ( A∧B)∨(C∧D)∨E B. (((A∧B)∨C)∧D∧E)
C. A∧(B∨C∨D∨E) D. (A∧(B∨C)) ∧D∧E
12. (2010)16 + (32)8的結果是( )。
A. (8234)10 B. (202A)16
C. (100000000110)2 D. (2042)16
13. 設棧S的初始狀態為空,元素a, b, c, d, e 依次入棧,以下出棧序列不可能出現的有( )。
A. a, b, c, e, d B. b, c, a, e, d
C. a, e, c, b, d D. d, c, e, b, a
14. 已知 6 個結點的二叉樹的先根遍歷是 1 2 3 4 5 6(數字為結點的編號,以下同),後根遍歷是
3 2 5 6 4 1,則該二叉樹的可能的中根遍歷是( )由OIFans.cn收集
A. 3 2 1 4 6 5 B. 3 2 1 5 4 6
C. 2 3 1 5 4 6 D. 2 3 1 4 6 5
15. 在下列各資料庫系統軟體中,以關系型資料庫為主體結構的是( )。
A. ACCESS B. SQL Server
C. Oracle D. Foxpro
16.在下列各軟體中,屬於 NOIP 競賽(復賽)推薦使用的語言環境有( )。
A. gcc/g++ B. Turbo Pascal
C. Turbo C D. free pascal
17. 以下斷電之後將不能保存數據的有( )。
A. 硬碟 B. ROM C. 顯存 D. RAM
18. 在下列關於計算機語言的說法中,正確的有( )。
A. Pascal和C都是編譯執行的高級語言
B. 高級語言程序比匯編語言程序更容易從一種計算機移植到另一種計算機上
C. C++是歷史上的第一個支持面向對象的計算機語言
D. 高級語言比匯編語言更高級,是因為它的程序的運行效率更高
19. 在下列關於計算機演算法的說法中,正確的有( )。
A. 一個正確的演算法至少要有一個輸入
B. 演算法的改進,在很大程度上推動了計算機科學與技術的進步由OIFans.cn收集
C. 判斷一個演算法的好壞,主要依據它在某台計算機上具體實現時的運行時間
D. 目前仍然存在許多涉及到國計民生的重大課題,還沒有找到能夠在計算機上實施的有效演算法
20. 在下列關於青少年信息學競賽的說法中,你贊成的是( )(本題不回答為0分,答題一律滿分)。
A. 舉行信息學競賽的目的,是為了帶動廣大青少年學科學、愛科學,為造就一大批優秀的計算機科學 與技術人才奠定良好的基礎
B. 如果競賽優勝者不能直接保送上大學,我今後就不再參與這項活動了
C. 准備競賽無非要靠題海戰術,為了取得好成績,就得拼時間、拼體力
D. 為了取得好成績,不光要看智力因素,還要看非智力因素。優秀選手應該有堅韌不拔的意志,有 嚴謹求實的作風,既要努力奮進,又要勝不驕敗不餒
三.問題求解(共 2 題,每題 5 分,共計 10 分)
1.將 2006 個人分成若干不相交的子集,每個子集至少有 3 個人,並且:
(1)在每個子集中,沒有人認識該子集的所有人。
(2)同一子集的任何 3 個人中,至少有 2 個人互不認識。
(3)對同一子集中任何 2 個不相識的人,在該子集中恰好只有 1 個人認識這兩個人。 則滿足上述條件的子集最多能有 個?
2.將邊長為 n 的正三角形每邊 n 等分,過每個分點分別做另外兩邊的平行線,得到若干個正三角形, 我們稱為小三角形。正三角形的一條通路是一條連續的折線,起點是最上面的一個小三角形,終點是最 下面一行位於中間的小三角形。在通路中,只允許由一個小三角形走到另一個與其有公共邊的且位於同 一行或下一行的小三角形,並且每個小三角形不能經過兩次或兩次以上(圖中是 n=5 時一條通路的例 子)。設 n=10,則該正三角形的不同的通路的總數為_ __。

四.閱讀程序寫結果(共 4 題,每題 8 分,共計 32 分)
1. Program ex401;
var
u,v:array[0..3] of integer;
i,x,y:integer;
begin
x:=10; y:=10;
for i:=0 to 3 do read(u[i]);
v[0]:=(u[0]+u[1]+u[2]+u[3]) div 7; v[1]:=u[0] div ((u[1]-u[2]) div u[3]); v[2]:=u[0]*u[1] div u[2]*u[3]; v[3]:=v[0]*v[1];
x:=(v[0]+v[1]+2)-u[(v[3]+3) mod 4];
if (x>10) then
y:=y+(v[2]*100-v[3]) div (u[u[0] mod 3]*5)由OIFans.cn收集
else
y:=y+20+(v[2]*100-v[3]) div (u[v[0] mod 3]*5);
writeln (x,',',y);
end. {*註:本例中,給定的輸入數據可以避免分母為 0 或下標越界。 )
輸入:9 3 9 4
輸出:
2.Program ex402;
const
m:array[0..4] of integer=(2,3,5,7,13);
var i,j:integer; t: longint; begin
for i:=0 to 4 do begin
t:=1;
for j:=1 to m[i]-1 do t:=t*2;
t:=(t*2-1)*t; write (t,' '); end;
writeln;
end.
輸出:_____
3. Program ex403;
Const NN=7; Type
Arr1=array[0..30] of char;
var s:arr1;
k,p:integer;
function fun1(s:arr1; a:char;n:integer):integer;
var j:integer; begin
j:=n;
while (a<s[j])and(j>0) do dec(j);
fun1:=j;
end;
Function fun2(s:arr1; a:char; n:integer):integer;
var j:integer; begin
j:=1;
while (a>s[j])and(j<n) do inc(j);
fun2:=j;
end;
begin
for k:=1 to NN do s[k]:=chr(ord('A')+2*k+1);
k:=fun1(s,'M',NN)+fun2(s,'M',NN);
writeln(k);
end.
輸出:
4. program ex404;
var x,x2:longint;由OIFans.cn收集
procere digit(n,m:longint);
var n2:integer;
begin
if(m>0) then begin
n2:=n mod 10;
write(n2:2);
if(m>1) then digit(n div 10,m div 10);
n2:=n mod 10; write(n2:2); end;
end;
begin
writeln('Input a number:');
readln(x);
x2:=1;
while(x2<x) do x2:=x2*10;
x2:=x2 div 10; digit(x,x2); writeln;
end.
輸入:9734526
輸出:
五.完善程序 (前 5 空,每空 2 分,後 6 空,每空 3 分,共 28 分)
1.(選排列)下面程序的功能是利用遞歸方法生成從 1 到 n(n<10)的 n 個數中取 k(1<=k<=n)個數的 全部可能的排列(不一定按升序輸出)。例如,當 n=3,k=2 時,應該輸出(每行輸出 5 個排列):
12 13 21 23 32
31
程序:
Program ex501; Var i,n,k:integer;
a:array[1..10] of integer;
count:longint;
Procere perm2(j:integer);
var i,p,t:integer;
begin
if ① then
begin
for i:=k to n do begin inc(count);
t:=a[k]; a[k]:=a[i]; a[i]:=t;
for ② do write(a[p]:1);
write(' ');
t:=a[k];a[k]:=a[i];a[i]:=t;
if (count mod 5=0) then writeln;
end; exit; end;
for i:=j to n do begin
t:=a[j];a[j]:=a[i];a[i]:=t;由OIFans.cn收集
③ ;
t:=a[j]; ④ ;
end end; begin
writeln('Entry n,k (k<=n):'); read(n,k);
count:=0;
for i:=1 to n do a[i]:=i;
⑤ ;
end.
2.(TSP 問題的交叉運算元)TSP 問題(Traveling Salesman Problem)描述如下:給定 n 個城 市,構成一個完全圖,任何兩城市之間都有一個代價(例如路程、旅費等),現要構造遍歷所有城市的環 路,每個城市恰好經過一次,求使總代價達到最小的一條環路。

遺傳演算法是求解該問題的一個很有效的近似演算法。在該演算法中,一個個體為一條環路,其編碼方法 之一是 1 到 n 這 n 個數字的一個排列,每個數字為一個城市的編號。例如當 n=5 時,「3 4 2 1 5」 表示該方案實施的路線為 3->4->2->1->5->3。遺傳演算法的核心是通過兩個個體的交叉操作,產生兩 個新的個體。下面的程序給出了最簡單的一種交叉演算法。具體過程如下:
(1)選定中間一段作為互換段,該段的起止下標為 t1,t2,隨機生成 t1,t2 後,互換兩段。
(2)互換後,在每個新的排列中可能有重復數字,因而不能作為新個體的編碼,一般再做兩步處理:
(2.1) 將兩個互換段中,共同的數字標記為 0,表示已處理完。
(2.2) 將兩個互換段中其餘數字標記為 1,按順序將互換段外重復的數字進行替換。 例如:n=12,兩個個體分別是:
a1: 1 3 5 4 * 2 6 7 9 * 10 12 8 11
a2: 3 2 1 12 * 6 7 10 11 * 8 5 4 9
t1=5,t2=8。上述每一行中,兩個星號間的部分為互換段。假定數組的下標從 1 開始,互換後有:
a1: 1 3 5 4 * 6 7 10 11 * 10 12 8 11
a2: 3 2 1 12 * 2 6 7 9 * 8 5 4 9
然後,將數字 6,7 對應的項標記為 0,星號內數字 2,9,10,11 對應的項標記為 1,並且按順序對 應關系為:10<->2,11<->9。於是,將 a1[9]=10 替換為 a1[9]=2,將 a2[2]=2 替換為 a2[2]=10, 類似再做第 2 組替換。這樣處理後,就得到了兩個新個體:
a1: 1 3 5 4 6 7 10 11 2 12 8 9
a2: 3 10 1 12 2 6 7 9 8 5 4 11
(3)輸出兩個新個體的編碼。 程序:
program ex502;
type arr1=array[1..20] of integer;
var a1,a2,kz1,kz2:arr1; n,k,t1,t2:integer;
function rand1(k:integer):integer;
var t:integer;
begin t:=0;
while (t<2) or(t>k) do t:=random(k+1)-2; rand1:=t;
end;
procere read1(var a:arr1;m:integer);
{讀入數組元素 a[1]至 a[m],a[0]=0,略。}
procere wrt1(var a:arr1;m:integer);
{輸出數組元素 a[1]至 a[m],略。}
procere cross(var a1,a2:arr1;t1, t2,n:integer);由OIFans.cn收集
var i,j,t,kj:integer; begin
for i:=t1 to t2 do begin
t:=a1[i]; ① ;
end;
for i:=1 to n do
if (i<t1)or(i>t2) then begin
kz1[i]:=-1;kz2[i]:=-1;
end else
begin ② ; end;
for i:=t1 to t2 do for j:=t1 to t2 do
if(a1[i]=a2[j]) then
begin ③ ; break; end;
for i:=t1 to t2 do if(kz1[i]=1) then begin
for j:=t1 to t2 do if(kz2[j]=1) then
begin kj:=j; break; end;
for j:=1 to n do if ④ then
begin a1[j]:=a2[kj];break; end;
for j:=1 to n do if ⑤ then
begin a2[j]:=a1[i]; break; end;
kz1[i]:=0;kz2[kj]:=0;
end; end; begin
writeln('input (n>5):');
readln(n);
writeln('input array 1:'); read1(a1,n);
writeln('input array 2:'); read1(a2,n);
t1:=rand1(n-1);
repeat
t2:=rand1(n-1); until(t1<>t2); if(t1>t2) then
begin k:=t1; t1:=t2; t2:=k; end;
⑥ ;
wrt1(a1,n); wrt1(a2,n);
end.

『叄』 全國青少年軟體編程(C語言)等級考試一級得分多少算通過

(1) 使用軟體
目前使用visual c++ 6.0 集成開發環境,操作系統為windows 7。
(2) 建議
visual c++ 6.0 版本較老,查錯能力比較弱,單為考試可以使用此版本,練習自己的細心程度。
自己用推薦使用visual studio的高版本,或者code block 等軟體。

『肆』 C語言編程題

c語言 這個代碼可以完成

『伍』 四川省計算機等級考試二級C語言編程軟體用的是哪個版本

用的是visual c++6.0,,語言編程的工具很多,比如c-free,dev c++(這個很多編程書都是用的這個軟體),建議平時編程時用visual c++ 6.0(熟悉環境嘛),你可以到網上找這個軟體的教程,不過也要略懂一些dev c++ 的操作,因為要看一些資料啊

『陸』 四川省c語言二級考試時間是好久。

計算機等級考試有兩種,一種是省級的,另一種是國家級的.不論是省級的還是國家級的都在你所在省省內考.你報名的時候該先問清楚再報.

『柒』 成都的少兒編程的機構有推薦嗎

童程童美少兒編程課程,面向6-18歲青少年兒童,依託達內教育集團16年IT編程教育經驗和上千名精英教研團隊等教育資源優勢,研發出一套系統的少兒編程課程體系,內容涵蓋少兒啟蒙編程(Scratch)和少兒趣味編程(JavaScript、HTML、CSS、Java等),能夠實現不僅僅讓小孩學會編程,更希望通過他們的中小學階段的培訓激發他們對程序的認識和熱愛,激發他們對計算機和it互聯網的認識和熱愛。同時培養編程思維,提高中國孩子的綜合能力和素質。課程流動課堂目前以走進全國130多所中小學公立校,受到教育界和學生家長的高度認可。
成都錦江校區
校區地址:成都錦江區東大街芷泉街229號東方廣場C座3樓303
成都奧克斯校區
校區地址:成都市高新區錦城大道666號奧克斯廣場B座1708
成都光華校區
校區地址:成都市青羊區光華北三段98號光華中心d座202室
成都紅牌樓校區
校區地址:成都市佳靈路3號紅牌樓廣場2號寫字樓11樓1115號

『捌』 我想問問西安交大的電氣工程和機械工程我應該選哪個(懇請詳細解釋,如就業,收入等)

我不是交大的,但可以給你一點建議。
電氣工程,以後是要做電氣工程師的,現在市場來看,還是很好就業的,主要是做PLC控制,電力,調控設備等,實際內容比較抽象,介於機械工程師和軟體工程師之間,也就是一般人看不明白,也做不來,起點高一點,競爭力小一點。
前中期工資比機械高一點,後期沒有機械工程師高,因為電氣就那一點東西,弄透了,技術上不會有太大提升,當然這是一般情況,很厲害的電氣工程師也是相當牛掰的,特別是一般人搞不定的東西,你能控制的來,那你的價值就很高了。
機械工程,以後是做機械工程師的,前期工資低,而且在前期完全對口的工作不好找,需要積累,不斷學習,知識面要廣,而且做不到一定的深度,工資是上不去的,也因此學機械的有很多轉行的。因為做機械不是很抽象,一般人能看明白,會覺得也就那麼回事。起點低一些,中低水平的機械工程師很多,但是如果基本功很扎實,數學,物理,力學很好的話,後期空間很大。因為機械是活的,是先行者。
兩者就業前景都還不錯,關鍵是前期要選對方向。
給你個具體的薪資參考。
成熟的機械工程師和電氣工程師比較(廣東二線城市)
電氣,8000~12000 12000~15000
機械,8000~12000 12000~20000
大公司薪水要相對減少一點。

『玖』 全國青少年信息學奧林匹克競賽有考C語言么 (中學的..)

可以用C
初賽的試卷有PASCAL和C兩種,但內容是一樣的,只是把語言轉了一下。
復賽PASCAL和C都可以用,反正只是看結果。