1.
#include <stdio.h>
int main(){
int i,sum = 0;
//方法一;
i = 1;
while(i<=100){
sum += i;
i++;
}
printf("sum = %d
",sum);
return 0;
}
2.
#include <stdio.h>
int main(){
//whileÑ»·Çón!=n*(n-1)*(n-2)*¡¡*1
int n,i,jiec=1;
printf("ÇëÊäÈëÒ»¸öÕûÊýn: ");
//n:´Ó¼üÅÌÊäÈë
scanf("%d",&n);
i = n;
while(i>=1){
jiec = jiec * i;
i--;
}
printf("%d!=%d
",n,jiec);
return 0;
}
3.
#include <stdio.h>
int main(){
//使用for循环完成1+2+……+100
int k;
double sum = 0;
for(k=1;k<=100;k++)
sum += k;
printf("sum=%d
",sum);
for(k=1;k<=50;k++)
sum = sum + k*k;
printf("sum=%d
",sum);
return 0;
}
4.
#include <stdio.h>
void main(){
//34 ab 567 c45?!
char c;
int zm=0,sz=0,qt=0;
while((c=getchar())!='
'){
if(c>='a'&&c<='z' || c>="A"&&c<="z")
zm++;
else if(c>='0' && c<='9')
sz++;
else
qt++;
}
printf("字母个数:%d
",zm);
printf("数字个数:%d
",sz);
printf("其他个数:%d
",qt);
return 0;
5.
#include <stdio.h>
int main(){
//m,n的最大公约数 能够同时整除m和n的最大数
int m,n,t,i;
printf("请输入两个整数:");
scanf("%d%d",&m,&n);
//m的位置放最大的数
if(n>m){
t = m;
m = n;
n = t;
}
for(i=n;i>=1;i--)
if(m%i==0&&n%i==0)
break;
printf("m=%d,n=%d",m,n);
if(i!=0){
gys = i;
printf("最大公约数为:%d
",gys);
}
gbs = m * n / gys;
printf("最小公倍数为:%d
",gbs);
return 0;
}
6.
#include <stdio.h>
int main(){
//水仙花数
int n,k1,k2,k3;//k1个位,k2十位,k3百位
for(n=100;n<=999;n++){
k1 = n % 10;
k2 = n / 10 % 10;
k3 = n / 100;
if(n==k1*k1*k1+k2*k2*k2+k3*k3*k3)
printf("%d
",n);
}
return 0;
}
实验心得:经过黄老师的耐心讲解,不仅学会了使用while循环、do while循环、for循环求n!,还对关于数字的最大公约数与最小公倍数的求解,使我的C语言能力进一步得到提升。