zoukankan      html  css  js  c++  java
  • 实验四

    1.编写程序,输入一个整数x,按照下式输出对应的y值。

          

     

    #include <stdio.h>
    #include <stdlib.h>
    int main()
    {
    	int i,x,y=0;
    	printf("输入一个整数\n");
    	scanf("%d",&x);
    	if(x<=0)
    	{
    		printf("error\n");
    		exit(0);
    	}
    	else if(x%2==0)
    	{
    		for(i=2;i<=x;i+=2)
    		{
    			y=y+i;
    		}
    		printf("y的值是%d",y);
    	}
    	else if(x%2!=0)
    	{
    		for(i=1;i<=x;i+=2)
    		{
    			y=y+i;
    		}
    			printf("y的值为%d",y);
    	}
    		return 0;
    }
    

      

    2.编程求1-1/2+1/3-1/4+1/5- … +1/99-1/100,结果保留两位小数。
    

      

    #include <stdio.h>
    int main()
    {
    	int x=100,z,i;
    	float y=1;
    	for(i=2;i<=x;i=i+1)
    	{
    		if(i%2==0)
    		{
    			y=y-1.0/i;
    		}
    		else
    		{
    			y=y+1.0/i;
    		}
    	}
    	printf("%.2f",y);
    	return 0;
    }
    

      

    3.输出2000年至3000年所有闰年的年号,每输出10个年号换一行。最后统计一共有多少个闰年。

    #include <stdio.h>
    int main()
    {
    int x=3000,y=0,i;
    for(i=2000;i<=x;i++)
    {
    if((i%4==0&&i%100!=0)||(i%400==0))
    {
    printf("%d ",i);
    y=y+1;
    if(y%10==0)
    {
    printf("\n");
    }
    }
    }
    printf("\n");
    printf("闰年有%d个",y);
    return 0;
    }

      

    4.输入一个实数x和一个整数m,计算xm,不允许调用pow()函数。
    

      

    #include <stdio.h>
    int main()
    {
    	int m,i,y=1;
    	float x;
    	printf("输入xm的值\n");
    	scanf("%f%d",&x,&m);
    	for(i=1;i<=m;i++)
    	{
    		y=x*y;
    	}
    	printf("%d",y);
    	return 0;
    }
    

      

    5.输入一串字符,分别统计其中字母、空格、数字和其他字符的个数。
    

      

    #include <stdio.h>
    int main()
    {
    	char a;
    	int  b=0,c=0,d=0,e=0,other=0;
    	printf("输入一串字符,按回车键结束\n");
    	scanf("%c",&a);
    	while(a!='\n')
    	{
    		if(a>='A'&&a<='Z')
    		{
    			b=b+1;
    		}
    		else if(a>='a'&&a<='z')
    		{
    			c=c+1;
    		}
    		else if(a==' ')
    		{
    			d=d+1;
    		}
    		else if(a>='0'&&a<='9')
    		{
    			e=e+1;
    		}
    		else
    		{
    			other=other+1;
    		}
    		scanf("%c",&a);
    	}
    	printf("%d个大写字母,%d个小写字母,%d个空格,%d个数字,%d个其他字符",b,c,d,e,other);
    	return 0;
    }
    

      

    6.输入一批数(正数和负数),输入0结束,分别计算其中正数的平均值和负数的平均值,
    

      

    #include <stdio.h>
    int main()
    {
    int a,b=0,c=0,d=0,e=0;
    float i,j;
    printf("输入数字,按0结束");
    scanf("%d",&a);
    if(a==0)
    {
    printf("no");
    }
    else
    {
    while(a!=0)
    {
    if(a>0)
    {
    b=b+a;
    d++;
    }
    if else
    {
    c=c+a;
    e++;
    }
    scanf("%d",&a);
    if else(d==0)
    {
    printf("没有平均值\n");
    }
    else(e==0)
    {
    pritnf("没有平均值\n");
    }
    }
    i=(float)b/d;
    j=(float)c/e;
    printf("正数的平均值为%.2f负数的平均值为%,2f",i,j);
    }
    return 0;
    }
    
     
     
    

      

    7.输出1000以内的所有素数,每行10个,最后输出一共有多少个素数。(每列对齐)
    

      

    #include <stdio.h>
    #include <stdlib.h>
    #include <math.h>
    int main()
    {
    	int a,b=0,c,d,i,flag;
    	for(a=2;a<=1000;a++)
    	{
    		c=sqrt(a);
    		flag=0;
    		for(i=2;i<=c;i++)
    		{
    			if(a%i==0)
    			{
    				flag=1;
    				break;
    			}
    		}
    		if(flag!=1)
    		{
    			printf("%d ",a);
    			b++;
    		    if(b!=0&&b%10==0)
    			{
    		 	 printf("\n");
    			}
    		}
    	}
    	printf("\n");
    	printf("%d个素数",b);
    	return 0;
    }
    

      

    8.打印下列图形
    
         
    

      

    #include <stdio.h>
    int main()
    {
    	int i,j,k;
    	for(i=1;i<=6;i++)
    	{
    		for(k=5;k>=(6-i);k--)
    		{
    			printf(" ");
    		}
    		for(j=9;j>=(i*2-1);j--)
    		{
    			printf("*");
    		}
    		printf("\n");
    	}
    	return 0;
    }
    

      

    二知识总结:
    1.外循环控制行,内循环控制列。
    2.float强制转换
    3.continue语句只结束本次循环,而break语句结束整个循环过程
    

      

    三实验总结:
    1.注意一直加到x
    2.输出10个数换行必须在大循环里
    3.scanf的输出形式 最好用%d,%d,否则用逗号必须输出逗号
    4.注意变量赋初值,否则结果无法输出
    

      

  • 相关阅读:
    lightoj 1027 简单概率dp
    zoj 3329 One Person Game 概率dp
    光速输入法
    百度卫士+7654联盟
    MyCCL复合特征码定位系统3.0 build 23 中文绿色版
    右键管家MenuMgr-1.2单文件
    影子卫士中文注册版+系统保护的尚方宝剑、、
    Easyspy网络检测系统
    百度杀毒+7654联盟
    QQ浏览器+7654联盟
  • 原文地址:https://www.cnblogs.com/1601wyn/p/5998307.html
Copyright © 2011-2022 走看看