第四次作业

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

      

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <stdio.h>
int main()
{
    int x,i,sum=0;
    printf("输入x:");
    scanf("%d",&x);
    if(x%2!=0)
    {
        for(i=1;i<=x;i+=2)
        {
            sum+=i;
        }
        printf("%d",sum);
     
    }
    else
    {  
        for(i=2;i<=x;i+=2)
        {
            sum+=i;
        }
        printf("%d",sum);
    }
    return 0;
}

  

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
int main()
{<br>  int i;
   float a=0,b=0,result;
   for(i=1;i<=99;i+=2)
   {
       a+=1.0/i;
   }
   for(i=2;i<=100;i+=2)
   {
       b+=1.0/i;
   }
   result=a-b;
   printf("%.2f\n",result);
   return 0;
}

  

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
int main()
{
    int years,i=0,a=0;
    for(years=2000;years<=3000;years++)
    if(years%4==0&&years%100!=0||years%400==0)
    {
        printf("%5d",years);
    a++;
    i++;
    if(i%10==0)
    {
        printf("\n");
    }
    }
     
    printf("共有%d个闰年",a);
    return 0;
}

  

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include<stdio.h>
int main()
{
    float x,y=1;
    int m,i;
    printf("请输入一个实数x和整数m");
    scanf("%f,%d",&x,&m);
    if(m>=0)
    {
        for(i=1;i<=m;i++)
        {
            y=y*x;
        }
    else
    {
        for(i=-1;i>=m;i--)
        {
            y=1/x*y;
        }
    }
    printf("%f",y);
    return 0;
}

  

  

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

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <stdio.h>
int main()
{
   char p;
    int a=0,b=0,c=0,d=0;
    printf("输入一串字符:");
    scanf("%c",&p);
    while(p!='\n')
    {
        if(p>='a'&&p<='z'||p>='A'&&p<='Z')
        a++;
        else if(p>'0'&&p<'9')
        b++;
        else if(p==' ')
        c++;
        else
        d++;
        scanf("%c",&p);
         
    }
     
    printf("字母有%d个,数字有%d个,空格有%d个,其他字符有%d个",a,b,c,d);
    return 0;  
}

  

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include <stdio.h>
int main()
{
    int x,i=0,k=0,sum1=0,sum2=0;
    float average1,average2;
    printf("输入一批数字");
    scanf("%d",&x);
    while(x!=0)
    {
        if(x>0)
        {
            i++;
            sum1=sum1+x;
            average1=sum1/i;
        }
        else
        {
            k++;
            sum2=sum2+x;
            average2=sum2/k;
        }
        scanf("%d",&x);
    }
    if(i==0&&k!=0)
    {
        printf("没有正数,负数的平均数为%.2f",average2);
    }
    else if(i!=0&&k==0)
    {
        printf("没有负数,正数的平均数为%.2f",average1);
    }
    else if(i==0&&k==0)
    {
        printf("没有数字");
    }
    else
    {
        printf("正数的平均值为%.2f,负数的平均值为%.2f",average1,average2);
     }
    return 0;
     
     
}

  

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

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include<stdio.h>
int main()
{
    int i,j,g=0;
    for(i=2;i<=1000;i++)
    {
        for(j=2;j<=i;j++)
        {
            if(i%j==0)
            {
                break;
            }
        }
        if(j==i)
        {
            printf("%3d ",i);
            g++;
            if(g%10==0)
        {
            printf("\n");
        }
        }
    }<br>  printf("一共有%d个素数",g);
    return 0;
}

  

 

8.打印下列图形

             

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>
int main()
{
    int i,j;
    for(i=1;i<=5;i++)
    {
        for(j=1;j<=i-1;j++)
        printf(" ");
        for(j=1;j<=11-2*i;j++)
        printf("*");
        printf("\n");
    }
    return 0;
         
}

  

实验总结:1.注意break与continue的区别,brake结束循环continue结束本次循环。

     2.注意while与for语句与do...while语句的区别。

              3.注意观察题目的规律。

              4.注意细节,for语句的嵌套等。

知识点总结:1.三种循环的形式丶执行过程丶注意事项以及适宜的场所。

                 2.理解区分break和continue的使用。

                 3.循环嵌套的使用。

      4.break一般与if语句和switch语句连用。 

 

posted on   计科张桃林  阅读(214)  评论(4编辑  收藏  举报

编辑推荐:
· 现代计算机视觉入门之:什么是视频
· 你所不知道的 C/C++ 宏知识
· 聊一聊 操作系统蓝屏 c0000102 的故障分析
· SQL Server 内存占用高分析
· .NET Core GC计划阶段(plan_phase)底层原理浅谈
阅读排行:
· 盘点!HelloGitHub 年度热门开源项目
· 某Websocket反爬逆向分析+请求加解密+还原html
· 02现代计算机视觉入门之:什么是视频
· 回顾我的软件开发经历:我与代码生成器的涅槃之路
· DeepSeek V3 两周使用总结

导航

< 2025年1月 >
29 30 31 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31 1
2 3 4 5 6 7 8
点击右上角即可分享
微信分享提示