9月19日

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/yang8627/article/details/82769619

刷题日结
7-16 求符合给定条件的整数集 (15 分)

#include<iostream>
#include<cstdio>
#include<algorithm>
#include<set>
#include<queue>
#include<cstring>
#include<cstdlib>
#include<cmath>
using namespace std;
int main()
{
    int a,b,c,d;
    scanf("%d",&a);
    b=a+1;
    c=a+2;
    d=a+3;
    printf("%d%d%d %d%d%d %d%d%d %d%d%d %d%d%d %d%d%d\n",a,b,c, a,b,d, a,c,b, a,c,d, a,d,b, a,d,c);
    printf("%d%d%d %d%d%d %d%d%d %d%d%d %d%d%d %d%d%d\n",b,a,c, b,a,d, b,c,a, b,c,d ,b,d,a, b,d,c);
    printf("%d%d%d %d%d%d %d%d%d %d%d%d %d%d%d %d%d%d\n",c,a,b, c,a,d, c,b,a, c,b,d, c,d,a, c,d,b);
    printf("%d%d%d %d%d%d %d%d%d %d%d%d %d%d%d %d%d%d\n",d,a,b, d,a,c, d,b,a, d,b,c, d,c,a, d,c,b);
    return 0;
}

在printf里面直接按排列出来然后输出;
当然还有其它更好的办法,参考了其他人的代码

int main()
{
int a,x,y,z;
scanf("%d", &a);
int count = 0;
for (x=a;x<a+4;x++){
for (y=a;y<a+4;y++){
for (z=a;z<a+4;z++){
if (x!=y && x!=z && y!=z) {
printf("%d%d%d", x, y, z);
count++;
if ( count%6==0 ) {
printf("\n");
} else {
printf(" ");
}
}
}
}
}
return 0;
}

7-17 爬动的蠕虫 (15 分)

#include
#include <string.h>
#include
#include <stdio.h>
#include
using namespace std;
int main()
{
int N,U,D,time=0,H=0;
scanf("%d%d%d",&N,&U,&D);
while(1)
{
H+=U;
time++;
if(H>=N)
break;
H-=D;
time++;
}
printf("%d\n",time);
return 0;
}

原本的思路是用爬上的减去滑下的,然后用总长/差,然后*2.。。。。。
但是怎么都实现不了,暂时不知道什么原因

7-20 打印九九口诀表 (15 分)

#include <stdio.h>
int main(void)
{
int i, j, N;
scanf("%d", &N);
for (i = 1; i <= N; i++)
for (j = 1; j <= i; j++)
{
printf("%d*%d=%-4d", j, i, j*i);
if (i == j)
printf("\n");
}
return 0;
}

在for循环里面套用for循环,里面有个#-4d,保留4位,而在%f里面可以放在前面%4.f

7-22 龟兔赛跑 (20 分)

#include<stdio.h>
int main()
{
int T, i;
int rabbitT=0;
scanf("%d",&T);
if(T<10)
{
printf("_ %d\n",T9);
return 0;
}
rabbitT=10;
for(i=10;i<=T;i++)
{
if(i%10==0)
{
if(rabbitT
9>i3 && (T-i)>=30)
i=i+29;
else if(rabbitT
9>i3 && (T-i)<30)
{
i=T;
break;
}
else if(T-i>=10)
{
rabbitT+=10;
i=i+9;
}
else
{
rabbitT+=T-i;
i=T;
break;
}
}
}
if(i
3>rabbitT9)
printf("@_@ %d\n",i
3);
else if(i3<rabbitT9)
printf("_ %d\n",rabbitT9);
else
printf("-_- %d\n",rabbitT
9);
return 0;
}

本题思路,分别计算出兔子和乌龟跑的时间然后再计算

展开阅读全文

没有更多推荐了,返回首页