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

2.程序源代码:

main() {

int a,b,num1,num2,temp;

printf(\

scanf(\ if(num1 { temp=num1;

num1=num2; num2=temp;

} a=num1;b=num2;

while(b!=0)/*利用辗除法,直到b为0为止*/

{ temp=a%b; a=b; b=temp;

}

printf(\ printf(\

}

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

【程序17】

题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。

1.程序分析:利用while语句,条件为输入的字符不为'\\n'.

2.程序源代码: #include \ main() {char c;

int letters=0,space=0,digit=0,others=0; printf(\

while((c=getchar())!='\\n')

{

if(c>='a'&&c<='z'||c>='a'&&c<='z')

letters++; else if(c==' ') space++;

else if(c>='0'&&c<='9')

digit++;

else others++;

}

printf(\

space,digit,others);

}

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

【程序18】

题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如

2+22+222+2222+22222(此时

共有5个数相加),几个数相加有键盘控制。

1.程序分析:关键是计算出每一项的值。

2.程序源代码:

main() {

int a,n,count=1; long int sn=0,tn=0;

printf(\

scanf(\ printf(\

while(count<=n)

{ tn=tn+a; sn=sn+tn; a=a*10; ++count;

}

printf(\

}

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

【程序19】

题目:一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3.

编程

找出1000以内的所有完数。

1. 程序分析:请参照程序<--上页程序14.

2.程序源代码:

main() {

static int k[10]; int i,j,n,s; for(j=2;j<1000;j++)

{ n=-1; s=j; for(i=1;i { if((j%i)==0) { n++; s=s-i; k[n]=i;

} } if(s==0)

{

printf(\ for(i=0;i printf(\

printf(\

} }