zoukankan      html  css  js  c++  java
  • class training

    实验3-1 分别使用while循环、do while循环、for循环求 (即求1+2+3+ ……+100)。
    参考:
     
    源码
    方法一#include<stdio.h>
    int main(){
    	int i,sum=0;
    	for(i=1;i<=100;i++)
    		sum+=1;
    		printf("sum=%d
    ",sum);
    		return 0;
    }
    运行结果抓图
    
     

    方法二
    
    #include<stdio.h>
    int main(){
    	int i,sum=0;
    	i=1;
    	while(i<=100){
    		sum+=i;
    		i++;
    	}
    	printf("%d
    ",sum);
    		return 0;
    }
    
    方法三
    
    #include<stdio.h>
    int main(){
    	int i,sum=0;
    	i=1;
    	do{
    		sum+=i;
    		i++;
    	}while(i<=100);
    	printf("%d
    ",sum);
    		return 0;
    } 
    实验3-2分别使用while循环、do while循环、for循环求n!,其中n由键盘输入。
    提示:
    1.	依照实验3-1求n!,其中n!=1*2*3……*n
    源码
    While方法:
    #include <stdio.h>
    int main(){
        int i,sum=1,n;
        i=1;
        printf("请输入n的值:");
        scanf("%d",&n);
        while(i<=n)
        {
            sum=sum*i;
            i++;
        }
        printf("sum=%d
    ",sum);
        return 0;
    }
    
    do while:
    include <stdio.h>
    int main(){
        int i,sum=1,n;
        i=1;
        printf("请输入n的值:");
        scanf("%d",&n);
        do{}
            sum=sum*i;
            i++;
        }while(i<=n);
        printf("sum=%d
    ",sum);
        return 0;
    }
    
    For循环
    #include <stdio.h>
    int main(){
        int i,sum=1,n;
        printf("请输入n的值:");
        scanf("%d",&n);
        for(i=1;i<=n;i++)
        sum=sum*i;
        printf("sum=%d
    ",sum);
        return 0;
    }
    
    运行结果抓图:
    
     

    实验3-3 求 。
    程序源码
    #include<stdio.h>
    int main(){
    	int k,sum=0,Z;
    	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);
    	
    	for(k=1;k<=10;k++)
    		sum= sum+1/k;
    	printf("sum=%d
    ",sum);
    	Z=(sum +=k)+(sum= sum+k*k)+(sum= sum+1/k);
    	printf("Z=%d
    ",Z);
    	return 0;
    }
    运行结果抓图
     
     
    实验3-4输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数。
    实验提示:
      
    程序源码
    #include<stdio.h>
    int main(){
    	char c;
    	int zm=0,sz=0,kg=0,qt=0;
    	while((c=getchar())!='
    '){
    		if((c>='a'&&c<='z')||(c>='A'&&c<='Z'))
    			zm++;
    	 	else if(c==' ')
    	 		kg++;
    	 	else if(c<='9' && c>='0')
    	 		sz++;
    	 	else 
    	 		qt++;
    	}
    	printf("字母数:%d
    ",zm);
    	printf("数字个数:%d
    ",sz);
    	printf("空格个数:%d
    ",kg);
    	printf("其他个数:%d
    ",qt);
    	return 0;
    }
    
    运行结果抓图
    

     实验3-5输入两个正整数m和n,求其最大公约数和最小公倍数。
    程序源码
    #include<stdio.h>
    int main(){
        int a,b,m,n;
        printf("请输入正整数m和n:
    ");
        scanf("%d%d",&a,&b);
        m=a;
        n=b;
        while(a!=b)
            if(a>b)
                a=a-b;
            else
                b=b-a;
        printf("最大公约数为:%d
    ",a);
        printf("最小公倍数为:%d
    ",m*n/a);
    }
    
    
    运行结果抓图
    
    

      
    实验3-6 输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字的立方和等于该数本身。例如:153是一个水仙花数,因为153=13+53+33。
    程序源码
    #include<stdio.h>
    int main(){
    int n,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);}
    		
    }
    
    运行结果抓图
    
    
      
    

      实验心得:

    还是有很多困难的地方,最大公倍数和最小公倍数用的时间最长,或许因为忘了所以耽误了很多的时间,sum*i这个语句一直没编辑正确,然后还要继续努力编辑,多写代码,目前写代码有一些思路,但是不是很明确以及准确还需要多多练习

  • 相关阅读:
    一个int类型究竟占多少个字节
    TCMalloc 安装与使用
    [创意标题] spoj 11354 Amusing numbers
    如何更好地理解和使用Github
    一天JavaScript示例-点击图片显示大图片添加鼠标
    php方法综述除去换行符(PHP_EOL使用变量)
    使用jQuery和css3实现了仿淘宝ued博客左边的菜单切换动画
    【软件使用技巧】PL/SQL Developer实现双击table询
    newlisp 接受jenkins带空格的参数
    Oracle listener lsnrctl
  • 原文地址:https://www.cnblogs.com/Xu19980701/p/5955903.html
Copyright © 2011-2022 走看看