C语言挑选小白鼠健康指数,2014级下学期中国石油大学华东c语言上机题.docx
2014級下學期中國石油大學華東c語言上機題.docx
下載提示(請認真閱讀)1.請仔細閱讀文檔,確保文檔完整性,對于不預覽、不比對內容而直接下載帶來的問題本站不予受理。
2.下載的文檔,不會出現我們的網址水印。
3、該文檔所得收入(下載+內容+預覽)歸上傳者、原創作者;如果您是本文檔原作者,請點此認領!既往收益都歸您。
文檔包含非法信息?點此舉報后獲取現金獎勵!
下載文檔到電腦,查找使用更方便
20
積分
還剩頁未讀,繼續閱讀
關?鍵?詞:2014
下學
中國石油
大學
華東
語言
上機
資源描述:
【研究創新型】8.1 誰能出線
【題目描述】
電視臺舉辦“超級學生”才藝大賽,由于報名人數狂多,所以要先進行分組預賽。按規定,每10名學生為一個預賽小組,評委打出分數(0~100分),各小組第一名可以進入下一輪;如果有多名學生得分相同都是第一名,則可同時進入下一輪。
【輸入】
按順序給出一個小組10個人的最后得分(int)。
【輸出】
能夠出線的學生序號(0~9)。
【樣例輸入】
98
98
100
97
95
94
90
94
93
92
【樣例輸出】
2#include #include int main()
{
int score[10];
int i,j=0;
for(i=0;i<10;i++)
{
scanf("%d",&score[i]);
if (score[i]>j) j=score[i];
else ;
}
for(i=0;i<10;i++)
{
if (score[i]==j)
printf("%d\n",i);
else ;
}
system("pause");
return 0;
}
【設計型】8.2 挑選小白鼠
【題目描述】
實驗室有一批小白鼠,為了評估他們的健康程度,我們為每一只小白鼠都設定了一個“健康指數”。現在我們需要進一步的評估這批小白鼠的健康均衡程度,因此我們需要從中找到健康指數差距最大的兩只小白鼠的編號,以此來進一步的進行評估。
【輸入】
第一行是一個整數n(2<= n <= 100),表示的是一共有n只小白鼠。
第二行是n個整數(互不相同),分別表示n只小白鼠的健康指數,同時根據輸入順序,從1開始為其編號1,2…n。也就是說第一個整數是第一只小白鼠的健康指數,第二個整數是第二只小白鼠的健康指數,依次類推。
【輸出】
輸出健康指數差距最大的兩只小白鼠的編號。第一個數是健康指數較大的小白鼠的編號,第二個數是健康指數較小的小白鼠的編號。
【樣例輸入】
10
1 2 3 4 5 6 7 8 9 11
【樣例輸出】
10 1
#include #include int main()
{
int n,i,j=0,k=100000,x=0,y=0;
scanf("%d",&n);
int s[100];
for(i=0;ij) j=s[i];
if (s[i]#include int main()
{
int m,i,j,k=0,t=2,n=0,l;
int a[1000];
scanf("%d",&m);
printf("%4d",t);
for(i=2;i<=m;i++)
{
for(j=2;j#include int main()
{
int n,i;
scanf("%d",&n);
int s[n];
for(i=0;i0;i--)
{
printf("%d ",s[i]);
}
printf("%d\n",s[0]);
system("pause");
return 0;
}
【設計型】8.5 二維數組
【問題描述】
程序定義了 4 4 的二維數組,請編寫程序,給二維數組賦值,并使數組下半三角元素中的值乘以n 。
【輸入】
一個44的二維數組,以及一個整數n
【輸出】
變化之后的二維數組
【樣例輸入】
1 2 3 4
2 2 3 4
3 2 3 4
4 2 3 4
0
【樣例輸出】
(輸出的數按照4位寬度來輸出,即%4d)
0 2 3 4
0 0 3 4
0 0 0 4
0 0 0 0
#include #include int main()
{
int s[4][4];
int i,j,n;
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
scanf("%d",&s[i][j]);
}
}
scanf("%d",&n);
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
if(i>=j)
{
s[i][j]=s[i][j]*n;
}
}
}
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
printf("%4d",s[i][j]);
}
printf("\n");
}
system("pause");
return 0;
}
【設計型】8.6 在屏幕上顯示楊輝三角形
【題目描述】
楊輝三角形,又稱賈憲三角形,帕斯卡三角形,是二項式系數在三角形中的一種幾何排列。
其實,中國古代數學家在數學的許多重要領域中處于遙遙領先的地位。中國古代數學史曾經有自己光輝燦爛的篇章,而賈憲三角的發現就是十分精彩的一頁。
楊輝三角有如下性質:
1、每行數字左右對稱,由1開始逐漸變大,然后變小,回到1。
2、第n行的數字個數為n個。
3、每個數字等于上一行的左右兩個數字之和。
【輸入】
一個正整數n
【輸出】
按照指定格式輸出對應的楊輝三角形(注意數據之間的空格)。
【樣例輸入】
5
【樣例輸出】
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
#include #include int main()
{
int a[100][100];
int i,j,n;
scanf("%d",&n);
for(i=0;i<=n;i++)
{
for(j=0;j<=n;j++)
{
if(i==j||j==0)
a[i][j]=1;
}
}
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
a[i][j]=a[i-1][j-1]+a[i-1][j];
}
}
for(i=0;i<=n;i++)
{
for(j=0;j<=n;j++)
{
if(j<=i) printf("%3d",a[i][j]);
}
printf("\n");
}
system("pause");
return 0;
}
【設計型】8.7 插入法排序
【題目描述】
如果一個數組中保存的元素是有序的(由小到大),向這個數組中插入一個數,使得插入后的數組元素依然保持有序。
定義一個數組,長度為11,初始元素為10個,按照從小到大的方式輸入,然后輸入一個要插入的元素,使得插入后仍然有序。
【輸入】
共兩行,第一行為10個從小到大排列的整數;第二行為要插入的數
【輸出】
插入后的順序
【樣例輸入】
1 2 3 4 5 6 7 8 9 10
11
【樣例輸出】
1 2 3 4 5 6 7 8 9 10 11
#include #include int main()
{
int a[11];
int i,k,t;
for (i=0;i<10;i++)
{
scanf("%d",&a[i]);
}
scanf("%d",&k);
for(i=0;i<10;i++)
{
if(a[i]>k)
{
for(t=9;t>=i;t--)
{
a[t+1]=a[t];
}
a[i]=k;
goto END;
}
else if(a[9]<=k)
{
a[10]=k;
goto END;
}
else ;
}
END:for(i=0;i<11;i++)
{
printf(" %d",a[i]);
}
printf("\n");
system("pause");
return 0;
}
【設計型】8.8 求各位數字組成的最大數
【題目描述】
任意輸入一個自然數,輸出該自然數的各位數字組成的最大數。例如,輸入 1593 ,則輸出為 9531 。
【輸入】
自然數 n
【輸出】
各位數字組成的最大數
【樣例輸入】
1593
【樣例輸出】
9531
#include #include int main()
{
int a[20];
int i,n,t,j,m=0;
scanf("%d",&n);
while(n!=0)
{
a[m]=n%10;
m++;
n=n/10;
}
for(i=0;ia[i])
{
t=a[j];
a[j]=a[i];
a[i]=t;
}
}
}
for(j=0;j#include int main()
{
int a[70];
int b[70];
int c[70];
int k=0,t,i,j,m,w=0;
do
{
scanf("%d %d",&a[k],&b[k]);
k++;
}while(a[k-1]>=0&&b[k-1]>=0);
for(i=0;ib[i])
{
t=b[j];
b[j]=b[i];
b[i]=t;
}
}
for(i=0;i#include int main()
{
int n,a[1000][1000],i,j,s=0;
scanf("%d",&n);
for(i=0;i<2;i++)
{
for(j=0;j#include int main()
{
int a[4][5];
int i,j,s=0;
for(i=0;i<4;i++)
{
for(j=0;j<5;j++)
{
scanf("%d",&a[i][j]);
}
}
for(i=0;i<4;i++)
{
for(j=0;j<5;j++)
{
if(i==0||j==0||i==3||j==4) s=s+a[i][j];
}
}
printf("%d\n",s);
system("pause");
return 0;
}
【設計型】8.12 存儲并輸出一個矩陣
【題目描述】
按照指定格式輸出圖形
【輸入】
一個正整數n
【輸出】
指定格式輸出的圖形
【樣例輸入】
5
【樣例輸出】
1 2 3 4 5
1 1 2 3 4
1 1 1 2 3
1 1 1 1 2
1 1 1 1 1
#include #include int main()
{
int a[100][100];
int i,n,j;
scanf("%d",&n);
for(i=0;i#include int main()
{
int a[10];
int i,j,t=1;
for(i=0;i<10;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<10;i++)
{
for(j=0,t=1;j<10;j++)
{
if(i!=j)
{
if (a[i]>a[j]) t++;
}
}
printf("%3d",t);
}
printf("\n");
system("pause");
return 0;
}
【設計型】8.14 矩陣加法
【題目描述】
方陣階數為n(n<100),例如當n=3時,矩陣int a[3][3],矩陣int b[3][3]。 矩陣的數據由用戶輸入。輸出新的矩陣c=a+b。 輸出格式: c00 c01 c02 c10 c11 c12 c20 c21 c22 每兩個數字之間有1個空格
【輸入】
第一行為方陣的階數
接下來為兩個n階方陣a和b
【輸出】
方陣的和c
【樣例輸入】
3
1 2 3
4 5 6
7 8 9
7 8 9
4 5 6
1 2 3【樣例輸出】
8 10 12
8 10 12
8 10 12
#include #include int main()
{
int a[100][100],b[100][100];
int i,j,n;
scanf("%d",&n);
for(i=0;iint main()
{
int n,m,a[10],b[10]={0},i,j,max,t,q,count,c[10];
scanf("%d",&n);
for(i=0;i#define n 1000
int main()
{ int a[n],b[n],i=0,j,x,max=1;
scanf("%d",&x);
for(i=1;i<=x;i++)
scanf("%d",&a[i]);
for(j=1;j<=100;j++)
b[j]=100;
for(i=1;i<=x;i++)
for(j=1;j<=100;j++)
{
if(b[j]-a[i]>=0)
{
printf("%d %d\n",a[i],j);
b[j]=b[j]-a[i];
if(max#include int main()
{
int t,i,j,k,x,cnt=0;
scanf("%d",&t);
for(i=0;i=x)
{
printf("%d\n",j);
goto end;
}
}
k=k/10;
}while(k!=0);
}
if(j==10000) printf("zzz\n");
end:cnt=0;
}
system("pause");
return 0;
}
【設計型】8.18 The Himalayas
【Description】
As an artist, Bob usually need to travel around the world. He made a lot of sketch of scenery on his journey. A famous spot he have visited recently is the Himalayas. The Himalayas is a mountain range in South Asia separating the plains of the Indian subcontinent from the Qinghai-Tibet Plateau. The Himalayas include over a hundred mountains exceeding 7,200 meters in elevation.
One day, Bob came up with an strange idea. He wanted to know the number of mountain peaks in his paintings. As his best friend, he turned to you for help. You are given a list of N height sampling values Hi. You should determine how many peaks are there. For all i which satisfies 2 <= i <= N - 1, Hi is defined as a peak if and only if Hi-1 < Hi > Hi+1.
【Input】
There are multiple test cases. The first line of input contains an integer T indicating the number of test cases. For each test case:
The first line contains one integer N (1 <= N <= 50). The next line contains N integers Hi (1 <= Hi <= 8844). It is guaranteed that any two adjacent height sampling values will be different.
【Output】
For each test case, output the number of peaks.
【Sample Input】
2
9
1 3 2 4 6 3 2 3 1
5
1 2 3 4 5
【Sample Output】
3
0
#include #include int main()
{
int a[50][50],b[50];
int t,n,i,j;
scanf("%d",&t);
for(i=0;ia[i][j-1]&&a[i][j]>a[i][j+1])
{
b[i]++;
}
}
}
for(i=0;i#include int main()
{
int y,t,i,s=0;
int month[12]={31,28,31,30,31,30,31,31,30,31,30,31};
scanf("%d %d",&y,&t);
if((y%4!=0)||((y%100==0)&&(y%400!=0))) month[1]=28;
else month[1]=29;
for(i=0;i<12;i++)
{
s=s+month[i];
if(t<=s)
{
printf("%d-%d-%d\n",y,i+1,t-(s-month[i]));
goto END;
}
else ;
}
END:system("pause");
return 0;
}
【設計型】8.20百燈熄滅
【題目描述】
有M盞燈,編號為1~M,分別由相應的M個開關控制。開始時全部開關朝上(朝上為開,燈亮),然后進行以下操作:編號凡是1的倍數的燈反方向撥一次開關;是2的倍數的燈再反方向撥一次開關;是3的倍數的燈又反方向撥一次開關,......,直到是M的倍數的燈又方向撥一次開關。請從鍵盤輸入一個整數n代表燈的數量,求出最后為熄滅狀態的燈(不亮)的數量以及編號并輸出。
【輸入】
輸入一個整數n(1<=n<=100)。
【輸出】
輸出為兩行,第一行是熄滅狀態的燈的數量;第二行是最后為熄滅狀態的燈的編號(每個數據以4列的域寬顯示)。
【樣例輸入】
100
【樣例輸出】
10
1 4 9 16 25 36 49 64 81 100
【提示】
輸出控制為%4d
#include #include int main()
{
int a[100]={1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1};
int n,i,j,cnt=0;
scanf("%d",&n);
for(i=0;i#include int main()
{
int n,i;
int a[30]={1,1};
scanf("%d",&n);
for(i=2;i<30;i++)
{
a[i]=a[i-1]+a[i-2];
}
printf("%d\n",a[n-1]);
system("pause");
return 0;
}
【設計型】8.22 查找整數
【題目描述】
從輸入的N個整數中查找給定的X。如果找到,輸出X的位置(從0開始數);如果沒有找到,輸出“Not Found”。
【輸入】
輸入在第1行中給出2個正整數N(<=20)和X,第2行給出N個整數。數字均不超過長整型,其間以空格分隔。
【輸出】
在一行中輸出X的位置,或者“Not Found”。
【樣例輸入】
5 7
3 5 7 1 9
【樣例輸出】
2
【設計型】8.25折半插入排序
【題目描述】
排序是程序設計中的重要內容之一,據不完全統計,在一般的數據處理程序中,排序占去了處理機時間的四分之一,而在典型的安裝程序中,一半以上的時間用在對表的排序上
常用的排序算法有:直接插入排序,折半插入排序,希爾排序,起泡排序,快速排序,選擇排序,堆排序等。其中直接插入排序的基本操作是將一個記錄插入到已排好序的有序表中,從而得到一個新的、記錄數增1的有序表。在直接插入排序中,為了找到插入位置,采用了順序查找的方法。為了提高查找速度,可以采用折半查找,這種排序稱折半插入排序。
折半查找法先取有序數組的中間元素與查找值相比較。如相等則查找成功;如查找值大于中間元素,則再取高半部的中間元素與查找值相比較。如查找值小于中間元素,則再取低半部
展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
?
人人文庫網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
關于本文
本文標題:2014級下學期中國石油大學華東c語言上機題.docx
鏈接地址:https://www.renrendoc.com/p-40528386.html
總結
以上是生活随笔為你收集整理的C语言挑选小白鼠健康指数,2014级下学期中国石油大学华东c语言上机题.docx的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: “幽幽远远”正式开张了,但是我的心情没有
- 下一篇: HBase是个啥子?