实验2 C语言控制语句应用编程

实验任务1

#include<stdio.h>
#include<stdlib.h>
#include<time.h>

#define N 5

int main()
{
    int number;
    int i;

    srand( time(0));
    
    for(i=0;i<N;++i){
        number=rand()%500+1;
        printf("20228329%04d\n",number);
    }
    system("pause");
    return 0;
}

 

 

问题1:在1到500之间取一个随机数

问题2:随机生成五个20228329xxxx(0001~0500)形式的数

 

实验任务2

#include<stdio.h>
#include<stdlib.h>
#include<time.h>

int main()
{
    int a, b, i;
    printf("猜猜2022年11月哪一天会是你的lucky day\n");
    printf("开始喽,你有三次机会,猜吧(1~30):");
    scanf_s("%d", &a);
    srand(time(0));
    b = rand() % 30 + 1;
    for (i = 1; i < 3; i++)
    {
        if (a == b)
        {
            printf("哇,猜中了:-)");
            break;
        }
        else if (a < b)
        {
            printf("你猜的日期早了,你的lucky day还没到呢\n");
            printf("再猜(1~30):");
            scanf_s("%d", &a);
            continue;
        }
        else if (a > b)
        {
            printf("你猜的日期晚了,你的lucky day已经过啦\n");
            printf("再猜(1~30):");
            scanf_s("%d", &a);
            continue;
        }
    }
    if (i == 3)printf("次数用完啦,偷偷告诉你:11月,你的lucky day是%d号", b);

    return 0;
}

 

 

 

实验任务3

#include<stdio.h>
#include<stdlib.h>
int main()
{
    char a;
    do
    {
        a = getchar();
        getchar();

        if (a == 'y')printf("wait a minute\n");
        else if (a == 'g')printf("go go go\n");
        else if (a == 'r')printf("stop!\n");
        else printf("something must be wrong");
    } 
    while (a != EOF);
    
    return 0;
}

 

 

 

实验任务4

#include<stdio.h>
#include<math.h>
int main()
{
    int n, a, b;
    double s, c;

    while (scanf_s("%d%d", &n, &a) != EOF)
    {
        b = n;
        c = a;
        n = 1;

        for (s = 0; n <= b; ++n)
        {
            s = s + n / c;
            c = 10 * c + a;
        }
        printf("n=%d,a=%d,s=%f\n", b, a, s);
        printf("\n");
    }

    return 0;
}

 

 

实验任务5

#include<stdio.h>

int main()
{
    int a, b;
    for (a = 1; a <= 9; a++)
    {
        for (b = 1; b <= a; b++)printf("%dx%d=%2d ", b, a, a * b);
        printf("\n");
    }
}

 

 

实验任务6

#include<stdio.h>
int main()
{
    int n,a,b,c;
    printf("input:");
    scanf_s("%d", &n);
    for (b = 0; b < n; b++)
    {    
        for (c = 0; c < b ; c++)printf("    ");
        for (a = 0; a < 2 * (n - b) - 1; a++)printf(" O \t");
        printf("\n");
        for (c = 0; c < b ; c++)printf("    ");
        for (a = 0; a < 2 * (n - b) - 1; a++)printf("<H>\t");
        printf("\n");
        for (c = 0; c < b ; c++)printf("    ");
        for (a = 0; a < 2 * (n - b) - 1; a++)printf("I I\t");
        printf("\n");
    }
    return 0;
}

 

 

 

 当输入为n时: 第i行,需要打印2(n-i)+1个字符小人 第i行,前面需要使用i-1个 \t

 
posted @ 2022-10-24 15:07  林佑臻  阅读(49)  评论(0)    收藏  举报