第四次作业

《C语言程序设计》实验报告
学  号    16080903   姓  名    王思齐    计科16-2班
学    期  2016-2017 第1学期  指导教师    黄俊莲 吉吉老师
实验地点    C05 机 器 号  
时    间  2016年 10 月 13 日    6 周 周四  1、2 节
截至日期    2016.10.13 11:50
实验任务清单  1.实验3-1 分别使用while循环、do while循环、for循环求(即求1+2+3+ ……+100)
2.实验3-2分别使用while循环、do while循环、for循环求n!,其中n由键盘输入。
3.实验3-3 求。
4.实验3-4输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数。
5.实验3-5输入两个正整数m和n,求其最大公约数和最小公倍数。
6.实验3-6输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字的立方和等于该数本身。例如:153是一个水仙花数,因为153=13+53+33。
     教师评语                               成绩
   
实验3  循环结构程序设计
实验3-1 分别使用while循环、do while循环、for循环求(即求1+2+3+ ……+100)。
参考:
 
源码:
#include <stdio.h>
int main(){
    //使用for循环完成1+2+......+100
    int i,sum = 0;
    for(i=1;i<=100;i++)
        sum +=i;  //sum = sum + i;
        printf("sum=%d\n",sum);
        //使用do while循环完成,,,
        i = 1;
        sum = 0;
        do{
            sum += i;
            i++;
        } while (i<=100);
        printf("sum = %d\n",sum);
        //使用while完成,,,,
        i = 1;
        while(i<=100){
            sum += i;
            i++;
        }
        printf("sum = %d\n",sum);
        return 0 ;
}
实验3-2分别使用while循环、do while循环、for循环求n!,其中n由键盘输入。
提示:
1.依照实验3-1求n!,其中n!=1*2*3……*n
源码
#include <stdio.h>
int main(){
    //while循环求n!=n*(n-1)*(n-2)*.....*1
    int n,i,jiec=1;
    //n:从键盘输入
    scanf("%d",&n);
    i = n;
    while(i>=1){
        jiec = jiec * i;
        i--;
    }
    printf("%d!=%d\n",n,jiec);
    return 0;
}

实验3-3 。这个出不来。。

程序源码

 

#include <stdio.h>

int main(){

int k,sum = 0;

for(k=1;k<=100;k++)

sum += k;

printf("sum=%d\n",sum);

for(k=1;k<=50;k++)

sum = sum + k*k;

printf("sum=%d\n",sum);

return 0;

}

实验3-4输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数。
实验提示:
 
程序源码
#include <stdio.h>
int main(){
   
    //41 asd 324 2 ssd?!
    char c;
    int zm=0,sz=0,kg=0,qt=0;
    while((c=getchar())!='\n'){
        if(c>='a'&&c<='z'||c>='A')
            zm++;
        else if(c==' ')
            kg++;
        else if(c>='0'&&c<='9')
            sz++;
        else
            qt++;
    }
    printf("字母个数:%d\n",zm);
    printf("空格个数:%d\n",kg);
    printf("数字个数:%d\n",sz);
    printf("其他个数:%d\n",qt);
    return 0;
}
实验3-5输入两个正整数m和n,求其最大公约数和最小公倍数。
程序源码
#include<stdio.h>
int main(){
    int m,n,min,i,t;
    scanf("%d%d",&m,&n);
    min=(m<n)?m:n;
    for(i=min;i>=1;i--)
        if(m%i==0&&n%i==0){t=i;break;};
    printf("最大公约数是:%d",t);
    printf("最小公倍数是:%d\n",m*n/t);
    return 0;
}
实验3-6 输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字的立方和等于该数本身。例如:153是一个水仙花数,因为153=13+53+33。
程序源码
#include<stdio.h>
#include<math.h>
int main(){
    int a1,a2,a3,a4,a5,a6,a,b,i;
    for(i=100;i<=10000;i++)
    {
    a=i;
    a1=a%10;
    a2=(a/10)%10;
    a3=(a/100)%10;
    a4=(a/1000)%10;
    a5=(a/10000)%10;
    a6=(a/100000)%10;
    b=(a1*a1*a1)+(a2*a2*a2)+(a3*a3*a3)+(a4*a4*a4)+(a5*a5*a5)+(a6*a6*a6);
    if(b==i)
    printf("%d\n",i);
    }
}
 
实验心得还是不会抓图,虽然是课上作业,老师带着做可是还有很多问题,不会,边问边参考,才出来!以后会继续努力的!
 

 

posted on 2016-10-13 11:42  BGD160809203  阅读(179)  评论(1编辑  收藏  举报

导航