博客园 首页 私信博主 显示目录 隐藏目录 管理

PTA第七周作业

7-1 求整数的位数及各位数字之和 (15分)

#include <stdio.h>
int main() {
    int N, w, s;
    w = 0;
    s = 0;
    scanf("%d", &N);//李志杰
    while (N != 0) {
        w++;
        s = s + N % 10;
        N = N / 10;
    }
    printf("%d %d\n", w, s);

    return 0;
}

7-2 野王认证 (8分)

#include<stdio.h>
int main()
{
    int h, a, H, A, ph, pa, i = 0, count = 0, t;
    scanf("%d%d%d%d%d%d", &h, &a, &H, &A, &ph, &pa);
    h = h + ph;
    a = a + pa;
    t = H;
    while (1)
    {
        if (a >= H)
        {
            printf("The king of the wild certification!");
            return 0;
        }
        t = t - a;
        if (t <= 0)
        {
            t = H;
            count++;
            continue;
        }
        h = h - A;
        if (h <= 0)
        {
            break;
        }
    }
    if (h <= 0 && count == 0)
    {
        printf("I'm too dishes!");
    }
    else
        printf("%d", count);
    return 0;
}

7-3 循环-古角猜想 (20分)

#include<stdio.h>
int main()
{
    int n, i;
    scanf("%d", &n);//李志杰
    if (n == 1)
        printf("0");
    while (n != 1)
    {
        i = 0;
        while (n != 1)
        {
            if (n % 2 == 0)
            {
                printf("%d/2=%d\n", n, n / 2);
                n = n/2;
            }
            else
            {
                printf("%d*3+1=%d\n", n, n * 3 + 1);
                n = n * 3 + 1;
            }
            i++;
        }
    }
    return 0;
}

7-4 猜数字游戏 (15分)

#include<stdio.h>
int main()
{
 int a,b,i=1,num,d=0,f=0,g=0;
 scanf("%d %d",&a,&b);
 if(num>=0)
   { 
      while(i<=b)
     {  scanf("\n%d",&num);
         if(num>=0)
         {
          if(num==a) break;
          if(num>a) printf("Too big\n");//李志杰
          if(num<a) printf("Too small\n");
          i++;
         }
        else
        { printf("Game Over"); d=1; break;
        }
    }
     if(d==0)
      {
       if(i==1) printf("Bingo!");
       if(i==2||i==3) printf("Lucky You!");
       if(i>3&&i<=b) printf("Good Guess!");
       if(i>b)  printf("Game Over");
      }
  }
  else
    {
    printf("Game Over");}
    return 0;
  }

7-5 找出一批学生的最高分 (15分)

#include<stdio.h>
int main()
{
	int grade,max;
	while(grade>=0)
	{
		scanf("%d",&grade)!= EOF;//李志杰
		if(max<grade)
		{
			max=grade;
		}
	}
	printf("%d\n",max);
	return 0;
}
#include<stdio.h>
int main()
{
	int grade,max=-100;
	while(grade>=0)
	{
		scanf("%d",&grade);
		if(max<grade)
		{
			max=grade;
		}
	}
	printf("%d\n",max);
	return 0;
}

7-6 购物(二) (25分)

#include<stdio.h>
int main()
{
	int count=0;
	double m,sum=0,average=0;//李志杰
	scanf("%lf",&m);
	while(m!=-1)
	{
		sum=sum+m;
		count++;
		scanf("%lf",&m);
	}
	if(count==0)
	{
        count=1;
	}
    average=sum/count;
	printf("%.2f\n",average);
	return 0;
}

7-7 单重循环—数鸡蛋。 (10分)

#include <stdio.h>
int main ()
{
    int s=1,y,z,sum=0;
    scanf("%d %d",&y,&z);//李志杰
    while(s<1000)
    {
        s++;
        if(s % 3 == 1 && s % 5 == z && s % 7 == 3)
        {
            sum = s + y;break;
        }
    }
    printf("%d",sum);
    return 0;
}
# include <stdio.h>
int main ()
{
    int x,y,z,sum=0;
    scanf("%d %d",&y,&z);
    for(x = 1;x < 1000;x ++){
        if(x % 3 == 1 && x % 5 == z && x % 7 == 3){
            sum = x + y;break;
        }
    }
    printf("%d",sum);
    return 0;
}

7-5条件特殊(给出一系列非负整数)!!!!!

可参考:


这个EOF用法适用于整个C语言,不单单针对编译gcc
其实这里有限制条件-1;也可以不采用EOF,但是在日后会经常和它打交道。

posted @ 2020-12-03 21:12  Jason_William  阅读(275)  评论(1)    收藏  举报