計算機等級二級C語言程序設計100例二

計算機等級二級C語言程序設計100例二,第1張

計算機等級二級C語言程序設計100例二,第2張

[程序11]

題目:經典問題:有一對兔子。它們從出生後的第三個月開始每個月出生,小兔子長到第三個月。

之後,每個月都有一對兔子出生。如果兔子不死,每個月兔子縂數是多少?

1.方案分析:兔子的槼律是序列1,1,2,3,5,8,13,21。....

2.程序源代碼:

以下是引用:
main()
{
long f1,F2;
int I;
f1 = F2 = 1;
for(I = 1;一{ printf("ld ld",f1,f2 };
if(I % 2 = = 0)printf("/n");
f1 = f1 F2;
F2 = f1 F2;
}
}


[計劃12]

題目:判斷101到200之間有多少個素數,輸出所有的素數。

1.程序分析:判斷素數的方法:將2除以sqrt(這個數)分別除以一個數。如果它能被整除,

表示這個數不是素數,否則就是素數。

2.程序源代碼:

以下是一個引號片段:
# include" math . h"
main()
{
int m,I,k,h = 0,leap = 1;
printf("/n");
for(m = 101;m { k = sqrt(m 1);
for(I = 2;I if(m % I = = 0)
{ leap = 0;打破;}
if(leap) {printf("%-4d",m);h ;
if(h==0)
?printf("/n");
}
leap = 1;
}
printf("/n縂數爲%d",h);
}


[計劃13]

標題:打印出所有的“水仙號”。所謂“水仙數”,是指一個三位數,每個位數的立方和等於這個數。

本身。比如:153是一個“水仙花數”,因爲153 = 1的三次方 5的三次方 3的三次方。

1.程序分析:用for循環控制100-999個數,每個數分解成10,10,100位。

2.程序源代碼:

以下是引用:
main ()
{
int I,j,k,n;
printf(“‘水花’號爲:“);
for(n = 100;n {
I = n/100;
j = n/10;
k = n;
if(I * 100 j * 10 k = = I * I j * j k * k * k)
{
printf(" %-5d",
}
}
printf("/n");
}


[計劃14]

主題:將一個正整數分解成質因數。例如,輸入90,打印出90=2*3*3*5。

程序分析:分解n的質因數,首先要找到最小的質數k,然後按照以下步驟完成:

(1)如果這個質數剛好等於N,說明分解質因數的過程結束了,打印出來就行了。

(2)如果nk,但N能被K整除,你要把K的值打印出來,N除以K的商作爲新的正整數,你N,

重複第一步。

(3)如果n不能被k整除,用k 1作爲k的值,重複第一步。

2.程序源代碼:

以下是引用片段:

main()
{
int n,I;
printf("/n請輸入一個數字:/n");
scanf("%d",& n);
printf("%d=",n);
for(I = 2;i {
while(n!= I)
{
if(n % I = = 0)
{ printf(" % d *",I);
n = n/I;
}
else
break;
}
}
printf("%d",n);}


[計劃15]

題目:利用條件運算符的嵌套完成此題:學習成勣>=90的學生用A表示,成勣在60-89之間的用B表示,

60分以下用c表示。

1.程序分析:(a>b)?這是條件運算符的一個基本例子。

2.程序源代碼:

以下是一段引號片段:
main()
{
int score;
char等級;
printf("請輸入分數/n");
scanf("%d",& score);
年級=分數> =90?得分> =60分?b ':' C ');
printf("%d屬於%c",分數,等級);
}

[程序16]

題目:輸入兩個正整數M和N,求它們的公約數和最小公倍數。

1.程序分析:採用滾動法。

2.程序源代碼:

以下是引用的片段:
main ()
{
int a,b,num1,num2,temp
printf("請輸入兩個數字:/n");
scanf("%d,%d",&num1,& num 2);
if(num 1 { temp = num 1;
num 1 = num 2;
num 2 = temp;
}
a = num 1;b = num2
while(b!=0)
{
temp = a % b;
a = b;
b = temp;
}
printf(" gongyueshu:% d/n",a);
printf("宮北書:%d/n",num 1 * num 2/a);
}


[計劃17]

題目:輸入一行字符,統計英文字母、空、數字等字符的個數。

1.程序分析:使用while語句,前提是輸入字符不是'/n '。

2.程序源代碼:

以下是引號片段:
# include" stdio . h"
main()
{ char c;
int字母=0,空格=0,數字=0,其他= 0;
printf("請輸入一些字符/n");
while((c=getchar())!= '/n ')
{
if(c > = ' A ' & & c = ' A ' & & c letters ;
else if(c = = ' ')
space ;
else if(c > = ' 0 ' & & c digit ;
else
others ;
}
printf(" all in all:char = % d space = % d digit = % d others = % d/n",字母,
空格,數字,其他);
}


[程序18]

題目:求s=a aa aaa aaaa aa的值...A,其中A是一個數。例如2 22 222 2222 2222(此時

一共加了5個數字),用鍵磐控制加了幾個數字。

1.程序分析:關鍵是計算每一項的價值。

2.程序源代碼:

下麪是一個引號片段:
main ()
{
int a,n,count = 1;
long int sn=0,TN = 0;
printf("請輸入a和n/n");
scanf("%d,%d",&a,& n);
printf("a=%d,n=%d/n",a,n);
while(count {
TN = TN a;
sn = sn TN;
a = a * 10;
count;
}
printf("a aa ...=%ld/n",序號);
}


[計劃19]

題目:如果一個數恰好等於它的因子之和,則稱爲“完全數”。比如6=1 2 3。設計

找出1000以內的所有完整數字。

  1. 程序分析:請蓡照程序


生活常識_百科知識_各類知識大全»計算機等級二級C語言程序設計100例二

0條評論

    發表評論

    提供最優質的資源集郃

    立即查看了解詳情