實驗5
1024 計算階乘
題型: 程式設計題 語言: G++;GCC
Description
輸入正整數n(n<12),計算n!(注n!=123*…*n)
輸入樣例
3
輸出樣例
6
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main()
{
int n,i,sum=1;
scanf("%d",&n);
for(i=1;i<=n;i++)
sum=sum*i;
printf("%d",sum);
return 0;
}
1025 計算簡單數列和
題型: 程式設計題 語言: G++;GCC
Description
有數列1,3,5,7,9,11,……
現要求由鍵盤輸入n,計算輸出該數列的前n項和。(給的n不會超過10000)
輸入樣例
5
輸出樣例
25
#include <stdio.h>
int main()
{
int n;
int sum;
scanf("%d",&n);
sum=n*n;
printf("%d",sum);
return 0;
}
1044 輸出最小值
題型: 程式設計題 語言: G++;GCC
Description
從鍵盤輸入十個整數,輸出最小值
輸入格式
輸入的整數絕對值不會超過10000
輸出格式
按樣例格式輸出結果
輸入樣例
12 45 76 87 5 87 43 55 99 21
輸出樣例
5
#include <stdio.h>
main()
{ int i,t,min;
scanf("%d", &min);
for(i=1;i<10;i++)
{
scanf("%d", &t);
if(t<min) min=t;
}
printf("%d\n",min);
}
1030 字元變換
題型: 程式設計題 語言: G++;GCC
Description
由鍵盤輸入一個句子(字元個數不定,最多不超過80個,以’\n’結束),将其中的大寫字元變成小寫(其它類型的字元不變),
最後輸出變換後的句子。
輸入樣例
ThiS IS My fIrSt C ProgrAm!
輸出樣例
this is my first c program!
#include <stdio.h>
int main()
{
char c;
while((c=getchar())!='\n')
{
if(c>='A'&&c<='Z')
{
c+=32;
putchar(c);
}
else {putchar(c);}
}
return 0;
}
1037 計算數列和
題型: 程式設計題 語言: G++;GCC
Description
有數列:

程式設計實作,由鍵盤輸入n,計算輸出數列前n項和。(結果保留四位小數,提示:要使用double,否則精度不夠)
輸出格式
請按格式輸出
輸入樣例
20
輸出樣例
32.6603
#include<stdio.h>
main()
{ int i,n;
double a=2,b=1,s=0;
scanf("%d",&n);
for(i=1;i<=n;i++)
{ s=s+a/b;
a=a+b;
b=a-b;
}
printf("%.4f\n",s);
}
1029 求最大公約數
題型: 程式設計題 語言: G++;GCC
Description
由鍵盤輸入兩個正整數m、n(m、n<1000000),計算它們的最大公約數。
輸入樣例
16,24
輸出樣例
8
#include<stdio.h>
main()
{ long r,m,n;
scanf("%ld,%ld",&m,&n);
while((r=n%m)!=0)
{ n=m;
m=r;
}
printf("%ld\n",m);
} //輾轉相除法
#include<stdio.h>
int main (){
int i,x,y;
scanf("%d,%d",&x,&y);
for (i = 1; i <= x; i++){
if (x%i == 0 && y%i == 0)
break;
}
for (i = x; i > 0; i--){
if (x%i == 0 && y%i == 0)
break;
}
printf("%d\n",i);
}//窮舉法
拓展:最小公倍數=兩數相乘➗最大公倍數
1031 統計單詞個數
題型: 程式設計題 語言: G++;GCC
Description
寫一個函數實作:輸入一行字元,以空格分割單詞,回車結束輸入,輸出單詞的個數
輸入樣例
There are many students and many trees!
輸出樣例
7
#include<stdio.h>
main()
{ int num=0,word=0;
char c;
while((c=getchar())!='\n')
{
if(!(c>='a'&&c<='z'||c>='A'&&c<='Z'))word=0;
else if(word==0)
{ word=1;
num++;
}
}
printf("%d",num);
}
1042 百萬富翁
題型: 程式設計題 語言: G++;GCC
Description
一個百萬富翁遇到一個陌生人,陌生人找他談了一個換錢的計劃。該計劃如下:我每天給你m元,
而你第一天隻需給我一分錢。第二天我仍給你m元,你給我2分錢。第三天,我仍給你m元,
你給我4分錢。依次類推,你每天給我的錢是前一天的兩倍,直到一個月(30天)。
百萬富翁很高興,欣然接受這個契約。現要求,編寫一個程式,由鍵盤輸入m,
計算多少天後,百萬富翁開始虧錢。
輸入樣例
100
輸出樣例
18
#include <stdio.h>
int main()
{
int m,a=1,d=1,sum=0;
scanf("%d",&m);
m=m*100;
while(1)
{
sum=a+sum;
if(sum>m*d) break;
d++;
a=2*a;
}
printf("%d",d);
return 0;
}