源码下载地址:study.rar
解压密码为:bbs.xiang6963.cn
C语言 输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。
#include<stdio.h>
void main()
{
char c;
int ch=0,digital=0,blank=0,other=0;
printf("please input the string:\n");
while((c=getchar())!='\n')
{
if((c>='a'&&c<='z')||(c>='A'&&c<='Z'))
ch++;
else if(c==' ') blank++;
else if(c>=48&&c<=57)digital++;
else other++;
}
printf("ch=%d,digital=%d,blank=%d,other=%d\n",ch,digital,blank,other);
}
阶乘和 求1!+2!+……+20!
#include<stdio.h>
void main()
{
float sum=0,temp=1;
int i;
for(i=1;i<=20;i++)
{
temp=temp*i;
sum=sum+temp;
}
printf("the sum is %e\n",sum);
}
输出所有“水仙花数”(水仙花数是指一个三位数,如果每个数的立方相加的和等于这个数,例:153=1的立方+5的立方+3的立方,那么153就是水仙花数)。
算法一
#include "stdio.h"
void main()
{
int i,j,k;
for(i=1;i<=9;i++)
for(j=0;j<=9;j++)
for(k=0;k<=9;k++)
if((i*100+j*10+k)==(i*i*i+j*j*j+k*k*k))
printf("%6d",i*100+j*10+k);
getch();
}
----------------------------------------
算法二
#include "stdio.h"
void main()
{
int n,a,b,c;
for(n=100;n<=999;n++)
{
a=n/100;
b=(n-a*100)/10;
c=n-a*100-b*10;
if(n == a*a*a+b*b*b+c*c*c)
printf("%5d",n);
}
}
输出的应该是这个图:
*
***
*****
***
*
#include<stdio.h>
void main()
{
int i,j,k;
for(i=1;i<=4;i++)
{
for(j=1;j<=4-i;j++)
{
printf(" ");
}
for(k=1;k<=2*i-1;k++)
{
printf("*");
}
printf("\n");
}
for(i=1;i<=3;i++)
{
for(j=1;j<=i;j++)
printf(" ");
for(k=1;k<=7-2*i;k++)
printf("*");
printf("\n");
}
}
---------------------------------------------
方法二;
#include<stdio.h>
void main()
{
int i,j,k;
for(i = 1; i <=4; i++)
{
for(j = 3; j >= i- 1; j--)
printf(" ");
for(k = 1 ; k <=2 * i - 1; k++)
printf("*");
printf("\n");
}
for(i = 3; i >= 1; i--)
{
for(j = 1; j <= 5 - i; j++)
printf(" ");
for(k = 1; k <= 2 * i - 1; k++)
printf("*");
printf("\n");
}
}
ll8384:
??