C语言程序设计100个经典例子 下载本文

问第一个人,他说是10岁。请问第五个人多大

1.程序分析:利用递归的方法,递归分为回推和递推两个阶段。要想知道第五个人

岁数,需知道

第四人的岁数,依次类推,推到第一人(10岁),再往回推。

2.程序源代码:

age(n) int n; { int c; if(n==1) c=10; else c=age(n-1)+2;

return(c);

} main()

{ printf(\

}

==============================================================

【程序29】

题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各

位数字。

1. 程序分析:学会分解出每一位数,如下解释:(这里是一种简单的算法,师专数

002班赵鑫提供) 2.程序源代码:

main( )

{

long a,b,c,d,e,x; scanf(\ a=x/10000;/*分解出万位*/ b=x000/1000;/*分解出千位*/ c=x00/100;/*分解出百位*/ d=x0/10;/*分解出十位*/ e=x;/*分解出个位*/

if (a!=0) printf(\ else if (b!=0) printf(\ else if (c!=0) printf(\ else if (d!=0) printf(\ else if (e!=0) printf(\

}

==============================================================

【程序30】

题目:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,

十位与千位相同。 1.程序分析:同29例 2.程序源代码:

main( ) {

long ge,shi,qian,wan,x;

scanf(\

wan=x/10000; qian=x000/1000; shi=x0/10; ge=x;

if (ge==wan&&shi==qian)/*个位等于万位并且十位等于千位*/

printf(\

else

printf(\

} 【程序31】

题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则

继续

判断第二个字母。

1.程序分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语

句判断第二个字母。 2.程序源代码: #include void main()

{ char letter;

printf(\ while ((letter=getch())!='y')/*当所按字母为y时才结束*/

{ switch (letter)

{case 's':printf(\

if((letter=getch())=='a') printf(\ else if ((letter=getch())=='u') printf(\ else printf(\

break;

case 'f':printf(\ case 'm':printf(\

case 't':printf(\

if((letter=getch())=='u') printf(\ else if ((letter=getch())=='h') printf(\ else printf(\

break;

case 'w':printf(\ default: printf(\

} } }

==============================================================

【程序32】

题目:press any key to change color, do you want to try it. please hurry up!

1.程序分析: