第一篇:藍(lán)橋比賽練習(xí)C語言
時(shí)間限制:1.0s 內(nèi)存限制:256.0MB
1閏年判斷
問題描述
給定一個(gè)年份,判斷這一年是不是閏年。當(dāng)以下情況之一滿足時(shí),這一年是閏年: 1.年份是4的倍數(shù)而不是100的倍數(shù); 2.年份是400的倍數(shù)。其他的年份都不是閏年。
輸入格式
輸入包含一個(gè)整數(shù)y,表示當(dāng)前的年份。
輸出格式
輸出一行,如果給定的年份是閏年,則輸出yes,否則輸出no。
說明:當(dāng)試題指定你輸出一個(gè)字符串作為結(jié)果(比如本題的yes或者no,你需要嚴(yán)格按照試題中給定的大小寫,寫錯(cuò)大小寫將不得分。
樣例輸入
2013 樣例輸出
no 樣例輸入
2016 樣例輸出
yes 數(shù)據(jù)規(guī)模與約定
1990 <= y <= 2050。
本題的C參考代碼如下:
1.#include
2.01字串
問題描述
對于長度為5位的一個(gè)01串,每一位都可能是0或1,一共有32種可能。它們的前幾個(gè)是:
00000 00001 00010 00011 00100 請按從小到大的順序輸出這32種01串。
輸入格式
本試題沒有輸入。
輸出格式
輸出32行,按從小到大的順序每行一個(gè)長度為5的01串。
樣例輸出
00000 00001 00010 00011 <以下部分省略> 本題的C參考代碼如下:
1.#include
3.字母圖形
問題描述
利用字母可以組成一些美麗的圖形,下面給出了一個(gè)例子: ABCDEFG BABCDEF CBABCDE DCBABCD EDCBABC 這是一個(gè)5行7列的圖形,請找出這個(gè)圖形的規(guī)律,并輸出一個(gè)n行m列的圖形。
輸入格式
輸入一行,包含兩個(gè)整數(shù)n和m,分別表示你要輸出的圖形的行數(shù)的列數(shù)。
輸出格式
輸出n行,每個(gè)m個(gè)字符,為你的圖形。
樣例輸入 7 樣例輸出
ABCDEFG BABCDEF CBABCDE DCBABCD EDCBABC 數(shù)據(jù)規(guī)模與約定 <= n, m <= 26。
本題的C參考代碼如下:
1.#include
6.void Print(char matrix[MAXSIZE][MAXSIZE],int n,int m)7.{ 8.int i,j;9.for(i=0;i 20.void Drawing(int n,int m)21.{ 22.int i,j;23.int point=0;24.char str;25.char matrix[MAXSIZE][MAXSIZE];26.for(i=0;i 4.?dāng)?shù)列特征 問題描述 給出n個(gè)數(shù),找出這n個(gè)數(shù)的最大值,最小值,和。 輸入格式 第一行為整數(shù)n,表示數(shù)的個(gè)數(shù)。 第二行有n個(gè)數(shù),為給定的n個(gè)數(shù),每個(gè)數(shù)的絕對值都小于10000。 輸出格式 輸出三行,每行一個(gè)整數(shù)。第一行表示這些數(shù)中的最大值,第二行表示這些數(shù)中的最小值,第三行表示這些數(shù)的和。 樣例輸入 1 3-2 4 5 樣例輸出-2 3 數(shù)據(jù)規(guī)模與約定 <= n <= 10000。 本題的C參考代碼如下: 1.#include 11.int min=MAXSIZE;12.int sum=0;13.scanf(“%d”,&n);14.for(i=0;i 5.查找整數(shù) 問題描述 給出一個(gè)包含n個(gè)整數(shù)的數(shù)列,問整數(shù)a在數(shù)列中的第一次出現(xiàn)是第幾個(gè)。 輸入格式 第一行包含一個(gè)整數(shù)n。 第二行包含n個(gè)非負(fù)整數(shù),為給定的數(shù)列,數(shù)列中的每個(gè)數(shù)都不大于10000。第三行包含一個(gè)整數(shù)a,為待查找的數(shù)。 輸出格式 如果a在數(shù)列中出現(xiàn)了,輸出它第一次出現(xiàn)的位置(位置從1開始編號),否則輸出-1。 樣例輸入 1 9 4 8 3 9 9 樣例輸出 數(shù)據(jù)規(guī)模與約定 <= n <= 1000。 本題的C參考代碼如下: 1.#include 6.楊輝三角形 問題描述 楊輝三角形又稱Pascal三角形,它的第i+1行是(a+b)的展開式的系數(shù)。 它的一個(gè)重要性質(zhì)是:三角形中的每個(gè)數(shù)字等于它兩肩上的數(shù)字相加。 i 下面給出了楊輝三角形的前4行: 1 1 3 1 給出n,輸出它的前n行。 輸入格式 輸入包含一個(gè)數(shù)n。 輸出格式 輸出楊輝三角形的前n行。每一行從這一行的第一個(gè)數(shù)開始依次輸出,中間使用一個(gè)空格分隔。請不要在前面輸出多余的空格。 樣例輸入 樣例輸出 1 1 1 2 1 1 3 3 1 數(shù)據(jù)規(guī)模與約定 <= n <= 34。 本題的C參考代碼如下: 1.#include 7.特殊的數(shù)字 時(shí)間限制:1.0s 內(nèi)存限制:512.0MB 問題描述 153是一個(gè)非常特殊的數(shù),它等于它的每位數(shù)字的立方和,即153=1*1*1+5*5*5+3*3*3。編程求所有滿足這種條件的三位十進(jìn)制數(shù)。 輸出格式 按從小到大的順序輸出滿足條件的三位十進(jìn)制數(shù),每個(gè)數(shù)占一行。 1.#include 7.i=n/100;8.j=n/10%10;9.k=n%10;10.if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)11.printf(“%dn”,n);12.} 13.return 0;14.} 8.回文數(shù) 問題描述 1221是一個(gè)非常特殊的數(shù),它從左邊讀和從右邊讀是一樣的,編程求所有這樣的四位十進(jìn)制數(shù)。 輸出格式 按從小到大的順序輸出滿足條件的四位十進(jìn)制數(shù)。 本題的C參考代碼如下: 1.#include 9.特殊回文數(shù) 問題描述 123321是一個(gè)非常特殊的數(shù),它從左邊讀和從右邊讀是一樣的。 輸入一個(gè)正整數(shù)n,編程求所有這樣的五位和六位十進(jìn)制數(shù),滿足各位數(shù)字之和等于n。 輸入格式 輸入一行,包含一個(gè)正整數(shù)n。 輸出格式 按從小到大的順序輸出滿足條件的整數(shù),每個(gè)整數(shù)占一行。 樣例輸入 樣例輸出 899998 989989 998899 數(shù)據(jù)規(guī)模和約定 1<=n<=54。 本題的C參考代碼如下: 1.#include 21.for(b=0;b<10;b++)22.for(c=0;c<10;c++)23.for(d=0;d<10;d++)24.for(e=0;e<10;e++)25.for(f=0;f<10;f++)26.{ 27.if(a==f)28.if(b==e)29.if(c==d)30.{ 31.all=a+b+c+d+e+f;32.if(all==t)33.printf(“%dn”,a*100000+b*10000+c*1000+d*100+e*10+f);34.} 35.} 36.37.return 0;38.} 10.十進(jìn)制轉(zhuǎn)十六進(jìn)制 問題描述 十六進(jìn)制數(shù)是在程序設(shè)計(jì)時(shí)經(jīng)常要使用到的一種整數(shù)的表示方式。它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16個(gè)符號,分別表示十進(jìn)制數(shù)的0至15。十六進(jìn)制的計(jì)數(shù)方法是滿16進(jìn)1,所以十進(jìn)制數(shù)16在十六進(jìn)制中是10,而十進(jìn)制的17在十六進(jìn)制中是11,以此類推,十進(jìn)制的30在十六進(jìn)制中是1E。 給出一個(gè)非負(fù)整數(shù),將它表示成十六進(jìn)制的形式。 輸入格式 輸入包含一個(gè)非負(fù)整數(shù)a,表示要轉(zhuǎn)換的數(shù)。0<=a<=2147483647 輸出格式 輸出這個(gè)整數(shù)的16進(jìn)制表示 樣例輸入 樣例輸出 1E 本題的C參考代碼如下: 1.#include 6.void Print(char *num,int n)7.{ 8.int i;9.for(i=n-1;i>=0;i--)printf(“%c”,num[i]);10.printf(“