首页 > 其他分享 >实验3

实验3

时间:2022-11-06 11:45:22浏览次数:34  
标签:main int long char 实验 printf include

task1

#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);
    }
    system("pause");
    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);}

  

实现了文字的随机出现

task2-1-1

#include <stdio.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));
  return 0;
}

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

  

task2-1-2

#include <stdio.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));
  return 0;
}

long long fac(int n) {
  static long long p = 1;
  printf("p = %lld\n", p);
  p = p * n;
  return p;
}

  

task2-2

一致

局部static变量可以保存变量被修改后的值,使得变量不会在每一次的循环重复时被初始化

 task3

#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 m;
  if(n==0)
    m=0;
  else
    m=2*func(n-1)+1;
     
    return m;
}

  

task4

#include<stdio.h>
int func(int n, int m);
int fac(int);
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 fac(int n) {
	int i, p = 1;
	for (i = 1; i <= n; i++)
		p = p * i;
	return p;
}
int func(int n, int m)
{
	if (n < m)
		return 0;
	else if (m == 0)
		return 1;
	else
		return fac(n) / (fac(m) * fac(n - m));
}

  

task5

#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 result;
    if(m==0||n=0)
        result=0;
    else
        result=mul(m,n-1)+m;
    return result;
}

 

task6

#include<stdio.h>
#include<stdlib.h>
void hanoi(unsigned int n,char from,char temp,char to);
void move(unsigned int n,char from,char to);
int count=0;
int main()
{
    unsigned int n;
    while(scanf("%u",&n) != EOF)
    {
    hanoi(n,'A','B','C');
    printf("一共移动了%d次\n", count);
    count=0;
    }
    return 0;
}

void hanoi(unsigned int n,char from,char temp,char to)
{
    if(n==1)
     move(n,from,to);
    else
    {
        hanoi(n-1,from,to,temp);
        move(n,from,to);
        hanoi(n-1,temp,from,to);
    }
}

void move(unsigned int n,char from,char to)
{
    printf("%u:%c-->%c\n",n,from,to);
    count++;
}

  

task7

#include<stdio.h>
#include<math.h>
int is_prime(int n);
int main() {
    int n = 0;
    int m = 0;
    int a;
    for (n = 4; n <= 20; n += 2)
    {
        for (a = 2; a <= n / 2; a++) {
            if (is_prime(a) && is_prime(n - a))
            {
                printf("%d=%d+%d", n, a, n - a);
                printf("\n");
            }
        }
    }


    return 0;
}
int is_prime(int n)
{
    int i, result = 1;
    for (i = 2; i < n; i++)
    {
        if (n % i == 0)
        {
            result = 0;
            break;
        }
    }
    return result;
}

  

task 8

#include <stdio.h>
long fun(long s);  
int main() {
  long s, t;
  printf("Enter a number: ");
  while (scanf("%ld", &s) != EOF) {
    t = fun(s); 
    printf("new number is: %ld\n\n", t);
    printf("Enter a number: ");
 }
  return 0;
}

long fun(long s)
{
    int r=0,d;
    int m,n=0;
    while(s>0)
    {
        d=s%10;
        s/=10;
        if(d%2==1)
        r=r*10+d;
    }
    while(r>0)
    {
        m=r%10;
        n=n*10+m;
        r/=10;
    }
    return n;
}

  

 

 

标签:main,int,long,char,实验,printf,include
From: https://www.cnblogs.com/lk12138/p/16862269.html

相关文章

  • 实验7:基于REST API的SDN北向应用实践
    一、实验目的能够编写程序调用OpenDaylightRESTAPI实现特定网络功能;能够编写程序调用RyuRESTAPI实现特定网络功能。二、实验环境下载虚拟机软件OracleVisualBo......
  • 实验3
    task1#include<stdio.h>#include<stdlib.h>#include<time.h>#include<windows.h>#defineN80voidprint_text(intline,intcol,chartext[]);voidprint_spaces(......
  • 实验2
    实验二:逻辑回归算法实验 【实验目的】理解逻辑回归算法原理,掌握逻辑回归算法框架;理解逻辑回归的sigmoid函数;理解逻辑回归的损失函数;针对特定应用场景及数据,能应用逻......
  • 实验3
     ......
  • Python实验报告(第10周)
      实验10:文件及目录操作一、实验目的和要求1、学会基本文件操作;2、学会目录操作;3、学会高级文件操作。二、实验环境软件版本:Python3.1064_bit三、实验过程1......
  • 实验四
    task5.cpp:#include<iostream>#include"vectorlnt.hpp"voidtest(){usingnamespacestd;intn;cin>>n;vectorlntx1(n);for(au......
  • RK3568+鸿蒙教学实验平台鸿蒙认证设计方案
    RK3568/3288/3399+鸿蒙系统,广泛应用于工业平板/军工医疗等信创产业,支持软硬件定制!不仅搭载国产化系统,颜值在线,而且接口丰富,核心功能强劲,配套10.1寸液晶显示屏应用场景包括:智......
  • 实验三 函数应用编程
    1.任务1#include<stdio.h>#include<stdlib.h>#include<time.h>#include<windows.h>#defineN80voidprint_text(intline,intcol,chartext[]);voidprint_space......
  • 实验室服务彻底死机记录——硬件故障——主板pcie槽坏掉或显卡坏掉
    实验室的深度学习服务器这次是彻底坏掉了,以前死机都是会在log日志中找到些信息,这次死机死的干脆,什么log都没有就自动关机了,神奇的很,以前的服务器死机可能还算是假死,这次的死......
  • 实验4 类与数组、指针
    实验任务5vectorInt.hpp#pragmaonce#include<iostream>#include<cassert>usingnamespacestd;classvectorInt{public:vectorInt(intn);vectorIn......