首页 > 其他分享 >实验3

实验3

时间:2024-04-26 18:56:28浏览次数:21  
标签:int long char 实验 func ans include

task1

#include <time.h>
#include <windows.h>
#define N 80

void print_text(int line, int col, char text[]);
void print_spaces(int n);
void print_blank_lines(int n);

int main()
{
    int line,col,i;
    char text[N]="hi,April~";

    srand(time(0));

    for(i = 1;i<= 10; ++i){
        line = rand() %25;//生成1-24随机数
        col = rand() %80;
        print_text(line,col,text);
        Sleep(1000);
    }
    system("pause");
    return 0;

}
void  print_spaces(int n){
    int i;

    for(i = 1;i <= n; ++i)
        printf(" ");

}

功能:随机生成行和列,每隔1000ms,打印“hi,April~”,循环10次。

task2-1

#include <stdio.h>
#include <stdlib.h>
long long fac(int n);

int main(){
    int i,n;

    printf("Enter n:");
    scanf("%d",&n);

    for(i = 1;i <=n; ++i)
        printf("%d!= %lld\n",i,fac(i));

    system("pause");
    return 0;
}

long long fac(int n){
    static long long p = 1;
    p = p*n;

    return p;
}

 

task2-2

#include <stdio.h>
#include <stdlib.h>
int func(int ,int);

int main(){
    int k=4, m = 1,p1,p2;

    p1 = func(k,m);
    p2 = func(k,m);
    printf("%d,%d\n",p1,p2);

    system("pause");
    return 0;
}

int func(int a,int b){
    static int m = 0,i = 2;

    i += m+1;
    m = i+a+b;

    return m;
}

结果一致。

static变量特征:只赋初值一次,保留上次调用结束的值。

task3

#include <stdio.h>
#include <stdlib.h>
long long func(int n); // 函数声明

int main() {
    int n;
    long long f;

    while (scanf("%d", &n) != EOF) {
        f = func(n); // 函数调用
        printf("n = %d, f = %lld\n", n, f);
    }
    system("pause");
    return 0;
}
long long func(int n){
    long long f;
    if(n == 1)
        return 1;
    else
        f = 2 * func(n-1)+1;
    return f;
    
}

task4

#include <stdio.h>
#include <stdlib.h>
int func(int n, int m);

int main() {
    int n, m;

    while(scanf("%d%d", &n, &m) != EOF)
        printf("n = %d, m = %d, ans = %d\n", n, m, func(n, m));
    
    system("pause");
    return 0;
}
int func(int n, int m){
    int ans,i,j;
    int up=1,down=1;
    if(n<m)
        ans = 0;
    else{for(i = n-m+1;i<=n;++i)
        up = up * i;
    for(j = 1;j<= m;++j)    
        down = down * j;
    ans = up/down;}
    return ans;

    
}

 

#include <stdio.h>
#include <stdlib.h>
int func(int n, int m);

int main() {
    int n, m;

    while(scanf("%d%d", &n, &m) != EOF)
        printf("n = %d, m = %d, ans = %d\n", n, m, func(n, m));
    
    system("pause");
    return 0;
}
int func(int n, int m){
    int ans;
    if(m == n )
        ans = 1;
    else if(m == 1)
        ans = n;
    else if(m == 0)
        ans = 1;
    else if(n == 0)
        ans = 0;
    else{
        ans = func(n-1,m)+func(n-1,m-1);}
    return ans;
    
}

task5

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

void hanoi(unsigned int n,char from,char temp,char to);
void moveplate(unsigned int n,char from,char to);
int main()
{
    unsigned int n;
    int num;
    while(scanf("%u",&n)!= EOF){
    hanoi(n,'A','B','C');
    num = pow(2,n)-1;
    printf("一共移动了%d次",num);}
    system("pause");
    return 0;
}
void hanoi(unsigned int n,char from,char temp,char to){
    if(n == 1)
        moveplate(n,from,to);
    else
    {
        hanoi(n-1,from,to,temp);
        moveplate(n,from,to);
        hanoi(n-1,temp,from,to);
    }
}
void moveplate(unsigned int n,char from,char to){
    printf(" %u: %c-->%c\n",n,from,to);
}

task6

#include <stdio.h>
#include <stdlib.h>
long func(long s);

int main(){

    long s,t;

    printf("Enter a number:");
    while(scanf("%ld",&s)!= EOF){
        t = func(s);
        printf("new number is:%ld\n\n",t);
        printf("Enter a number:");

    }
    system("pause");
    return 0;
}
long func(long s){
    long ans;
    long digit,t;

    ans = 0;
    t = 1;
    while(s != 0){
        digit = s%10;
        if(digit %2 == 1){
            ans += t*digit;
            t *=10;//为下一个数做准备
        }
        s /= 10;

    }
    return ans;

}

 

标签:int,long,char,实验,func,ans,include
From: https://www.cnblogs.com/zhaozhimo/p/18160691

相关文章

  • 实验3:软件测试
    一、实验题目:软件测试二、实验目的1、熟悉开发环境下的自动化测试工具;1、利用自动化测试工具进行自动化单元测试。三、实验内容1、选择开发环境,IDEA或PYCHARM任选其一;2、基于所选择的开发环境实现对输入的n个整数进行排序的代码;3、对所编写代码设计测试用例;4、基于所选择......
  • 实验三-软件测试
    一、实验题目:软件测试二、实验目的1、熟悉开发环境下的自动化测试工具;1、利用自动化测试工具进行自动化单元测试。三、实验内容1、选择开发环境,IDEA或PYCHARM任选其一;2、基于所选择的开发环境实现对输入的n个整数进行排序的代码;3、对所编写代码设计测试用例;4、基于所选择......
  • 实验三-软件测试
    一、实验题目:软件测试二、实验目的1、熟悉开发环境下的自动化测试工具;1、利用自动化测试工具进行自动化单元测试。三、实验内容1、选择开发环境,IDEA或PYCHARM任选其一;2、基于所选择的开发环境实现对输入的n个整数进行排序的代码;3、对所编写代码设计测试用例;4、基于所选择......
  • 实验三 软件测试—pycharm开发
    一、实验题目:软件测试二、实验目的1、熟悉开发环境下的自动化测试工具;2、利用自动化测试工具进行自动化单元测试。三、实验内容1、选择开发环境,IDEA或PYCHARM任选其一;2、基于所选择的开发环境实现对输入的n个整数进行排序的代码;3、对所编写代码设计测试用例;4、基于所选择的......
  • 实验三——软件测试
    一、实验题目:软件测试二、实验目的1、熟悉开发环境下的自动化测试工具;1、利用自动化测试工具进行自动化单元测试。三、实验内容1、选择开发环境,IDEA或PYCHARM任选其一;2、基于所选择的开发环境实现对输入的n个整数进行排序的代码;3、对所编写代码设计测试用例;4、基于所选择......
  • 实验三 数据排序
    一、实验题目:软件测试二、实验目的1、熟悉开发环境下的自动化测试工具;1、利用自动化测试工具进行自动化单元测试。三、实验内容1、选择开发环境,IDEA或PYCHARM任选其一;2、基于所选择的开发环境实现对输入的n个整数进行排序的代码;3、对所编写代码设计测试用例;4、基于所选择......
  • 实验三——软件测试
    一、实验题目:软件测试二、实验目的1、熟悉开发环境下的自动化测试工具;1、利用自动化测试工具进行自动化单元测试。三、实验内容1、选择开发环境,IDEA或PYCHARM任选其一;2、基于所选择的开发环境实现对输入的n个整数进行排序的代码;3、对所编写代码设计测试用例;4、基于所选择......
  • 实验三-软件测试
    一、实验题目:软件测试二、实验目的熟悉开发环境下的自动化测试工具;利用自动化测试工具进行自动化单元测试。三、实验内容选择开发环境,IDEA或PYCHARM任选其一;基于所选择的开发环境实现对输入的n个整数进行排序的代码;对所编写代码设计测试用例;基于所选择的开......
  • 实验三:软件测试
    一、实验题目:软件测试二、实验目的1、熟悉开发环境下的自动化测试工具;1、利用自动化测试工具进行自动化单元测试。三、实验内容1、选择开发环境,IDEA或PYCHARM任选其一;2、基于所选择的开发环境实现对输入的n个整数进行排序的代码;3、对所编写代码设计测试用例;4、基于所选择......
  • 实验三
    一、实验题目:软件测试二、实验目的1、熟悉开发环境下的自动化测试工具;1、利用自动化测试工具进行自动化单元测试。三、实验内容1、选择开发环境,PYCHARM;2、基于所选择的开发环境unittest实现对输入的n个整数进行冒泡排序的代码;3、对所编写代码设计测试用例;4、基于所选择的......