源码下载地址: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:
??