首页 > 其他分享 >实验三

实验三

时间:2022-11-08 23:56:12浏览次数:41  
标签:return int long char 实验 func include

任务1

#include <stdio.h>
#include <stdlib.h> 
#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, November~";
    srand(time(0));
    for (i = 1; i <= 10; ++i) {
        line = rand() % 25;
        col = rand() % 80;
        print_text(line, col, text);
        Sleep(1000);
    }
    return 0;
}

void print_spaces(int n) {
    int i; for (i = 1; i <= n; ++i) 
        printf(" ");
}

void print_blank_lines(int n) { 
    int i; 
    for (i = 1; i <= n; ++i)
        printf("\n");
}

void print_text(int line, int col, char text[]) {
    print_blank_lines(line - 1);
    print_spaces(col - 1);
    printf("%s", text);
}

任务2.1

#include <stdio.h> 
long long fac(int n);
int main() {
    int i, n;
    printf("Enter n: "); 
    scanf_s("%d", &n);
    for (i = 1; i <= n; ++i)
        printf("%d! = %lld\n", i, fac(i));
    return 0;
}

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

2.2

#include <stdio.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);
    return 0;
}
int func(int a, int b) {
    static int m = 0, i = 2;
    i += m + 1;
    m = i + a + b;
    return m;
}

任务3

#include <stdio.h> 
long long func(int n);
int main() {
    int n; long long f;
    while (scanf_s("%d", &n) != EOF) {
        f = func(n); 
        printf("n = %d, f = %lld\n", n, f); 
    }
    return 0;
}

long long func(int n)
{
    long long int result = 0;
    if (n == 1)
        result = 1;
    else
        result = 2 * func(n - 1) + 1;
    return result;
}

 

任务4

#include <stdio.h> 
int func(int n, int m);
int main() {
    int n, m;
    while (scanf_s("%d%d", &n, &m) != EOF)
        printf("n = %d, m = %d, ans = %d\n", n, m, func(n, m));
    return 0;
}

int func(int n, int m) {
    int ans = 1;
    if (n < m) { ans = 0; }
    else if (m == 0 || m == n) { ans = 1; }
    else ans = func(n - 1, m) + func(n - 1, m - 1);
    return ans;
}

 

任务5

#include <stdio.h>
int mul(int n, int m); 
int main() { 
    int n, m;
    while (scanf_s("%d%d", &n, &m) != EOF) 
        printf("%d * %d = %d\n", n, m, mul(n, m));
    return 0;
}
int mul(int n, int m) {
    int mid = 0, ans = 0;
    if (n < m) { mid = n, n = m, m = mid; }
    if (m == 1) { ans = n; }
    if (m != 0 && n != 0) {
        ans = n + mul(n, m - 1);
    }
    else return 0;
    return ans;

}

任务6

#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 m;
    while (scanf_s(" %u", &n) != EOF) {
        hanoi(n, 'A', 'B', 'C');
        m = pow(2, n) - 1;
        printf("一共移动了%d次.\n", m);
        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);
}

任务7

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int isprime(int n);
int main() {
    int a, b, c;
    printf("请输入一个20以内的偶数:\n");
    while (scanf_s("%d", &a)<=20) {
        for (b = 2; b <= a; b++) {
            c = a - b;
            if (isprime(b) && isprime(c) && (b + c) == a)
                printf("%d=%d+%d\n", a, b, c);
        }
    }
    return 0;
}
int isprime(int n) {
    if (n == 1)
        return 0;
    int k;
    for (k = 2; k <= sqrt(1.0 * n); k++)
        if (n % k == 0)
            return 0;
    return 1;
}

 

任务8

#include<stdio.h>
#include<math.h>
long fun(long s);
int main() {
    long s, t;
    printf("Enter a number:");
    while (scanf_s("%ld", &s) != EOF) {
        t = fun(s);
        printf("new number is:%d\n\n", t);
        printf("Enter a number:");
    }
    return 0;
}
long fun(long s) {
    int a = 0, b = 0;
    while (s > 0) {
        if (s % 2 == 0)
            s = s / 10;
        else {
            a = a + pow(10, b) * (s % 10);
            s = s / 10;
            b++;
        }
    }
    return a;
}

 

标签:return,int,long,char,实验,func,include
From: https://www.cnblogs.com/wtx2004/p/16871729.html

相关文章

  • 实验四 类与数组、指针
    任务五代码:vectorInt:#pragmaonce#include<iostream>#include<cassert>usingnamespacestd;classVectorInt{public:VectorInt(ints);......
  • 实验四
    1cpp#include<iostream>#include"point.hpp"#include<vector>usingnamespacestd;voidtest1(){intn;cin>>n;vector<Point>x(n);x.......
  • 实验四
    task5vectorint.hpp#pragmaonce#include<iostream>#include<cassert>usingnamespacestd;classvectorint{public:vectorint(){};vectorint(intn......
  • 2022.11.8(软件工程y实验一)
    1)回顾你过去将近3年的学习经历当初你报考的时候,是真正喜欢计算机这个专业吗?你现在后悔选择了这个专业吗?你认为你现在最喜欢的领域是什么(可以是计算机的也可以是其它领......
  • 实验四
    task5:vectorInt.hpp:#pragmaonce#include<bits/stdc++.h>#include<iomanip>usingnamespacestd;classvectorInt{public:vectorInt(intnum):si......
  • 实验3
    task1#include<stdio.h>#include<stdlib.h>#include<time.h>#include<windows.h>#defineN80voidprint_text(intline,intcol,chartext[]);voidprint_spac......
  • 实验四
    task5hpp #pragmaonce#include<iostream>usingnamespacestd;classvectorInt{public:vectorInt(intn);vectorInt(intn,intvalue);vector......
  • 实验3
    1.#include<stdio.h>longfun(longs);intmain(){longs,t;printf("enteranumber:");while(scanf_s("%ld",&s)!=EOF){t=fun(s);printf("n......
  • 实验环境安装配置
    ......
  • 实验2:Open vSwitch虚拟交换机实践
    实验2:OpenvSwitch虚拟交换机实践一、实验目的1.能够对OpenvSwitch进行基本操作;2.能够通过命令行终端使用OVS命令操作OpenvSwitch交换机,管理流表;3.能够通过Mininet的......