首页 > 编程语言 >实验3 C语言函数应用编程

实验3 C语言函数应用编程

时间:2023-11-04 15:33:37浏览次数:26  
标签:10 函数 int 编程 long C语言 char func ans

任务1

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #include <time.h>
 4 #include <windows.h>
 5 #define N 80
 6 
 7 void print_text(int line, int col, char text[]);  
 8 void print_spaces(int n);  
 9 void print_blank_lines(int n); 
10 
11 int main() {
12     int line, col, i;
13     char text[N] = "hi, November~";
14     
15     srand(time(0)); 
16     
17     for(i = 1; i <= 10; ++i) {
18         line = rand() % 25;
19         col =  rand() % 80;
20         print_text(line, col, text);
21         Sleep(1000);  
22     }
23     
24     return 0; 
25 }
26  
27 void print_spaces(int n) {
28     int i;
29     
30     for(i = 1; i <= n; ++i)
31         printf(" ");
32 }
33 
34 
35 void print_blank_lines(int n) {
36     int i;
37     
38     for(i = 1; i <= n; ++i)
39         printf("\n");
40  } 
41 
42 
43 void print_text(int line, int col, char text[]) {
44     print_blank_lines(line-1);       
45     print_spaces(col-1);            
46     printf("%s", text);         
47 }

实现了随机生成“hi,November~”在屏幕上的功能。

任务2

 1 # include <stdio.h>
 2 long long fac(int n);
 3 
 4 int main(){
 5     int i,n;
 6     
 7     printf("enter n :");
 8     scanf("%d",&n);
 9     for(i=1;i<=n;++i)
10         printf("%d!=%lld\n",i,fac(i));
11         
12         return 0;
13 } 
14 
15 long long fac(int n){
16     static long long p=1;
17     
18     p= p*n;
19     printf("%lld\n",p); 
20     return p;
21 }

 1 #include <stdio.h>
 2 int func(int, int); 
 3 int main() {
 4     int k = 4, m = 1, p1, p2;
 5     p1 = func(k, m); 
 6     p2 = func(k, m);
 7      
 8     printf("%d, %d\n", p1, p2);
 9     
10     return 0;
11 } 
12 int func(int a, int b) {
13     static int m = 0, i = 2;
14     i += m + 1;
15     m = i + a + b;
16 return m;
17 }

 

任务3

 1 #include <stdio.h>
 2 long long func(int n); 
 3 int main() {
 4     int n;
 5     long long f;
 6     
 7     while (scanf("%d", &n) != EOF) {
 8         f = func(n); 
 9         printf("n = %d, f = %lld\n", n, f);
10     } 
11     
12     return 0;
13 } 
14 
15 long long func(int n){
16     long long int ans;
17     if(n==1)
18         ans=1;
19     else
20         ans=2*(func(n-1)+1)-1;
21     return ans;
22 }

 

任务4

 1 #include <stdio.h>
 2 int func(int n, int m);
 3 
 4 int main() {
 5     int n, m;
 6     
 7     while(scanf("%d%d", &n, &m) != EOF)
 8         printf("n = %d, m = %d, ans = %d\n", n, m, func(n, m));
 9         
10     return 0;
11 } 
12 
13 int func(int n,int m){
14     int ans;
15     if(n<m)
16     ans=0;
17     else{
18         if(n==m||m==0)
19         ans=1;
20         else
21         ans=func(n-1,m)+func(n-1,m-1);
22     }
23     return ans;
24 }

 

任务5

 

 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 void hano(unsigned int n,char from,char temp,char to);
 4 void move(unsigned int n,char from,char to);
 5 long long func(unsigned int n);
 6 int main()
 7 {
 8     unsigned int n;
 9     scanf("%u",&n);
10     hano(n,'A','B','C');
11     printf("共进行了%lld次",func(n));
12     return 0;
13 }
14 void hano(unsigned int n,char from,char temp,char to){
15     if(n==1){
16         move(n,from,to);
17     }
18     else{
19         hano(n-1,from,to,temp);
20         move(n,from,to);
21         hano(n-1,temp,from,to);
22     }
23 }
24 void move(unsigned int n,char from,char to){
25     printf("%u:%c-->%c\n",n,from,to);
26 }
27 
28 long long func(unsigned int n){
29     long long int ans;
30     if(n==1)
31         ans=1;
32     else
33         ans=2*(func(n-1)+1)-1;
34     return ans;
35 }

 

任务6

 

 1 #include <stdio.h>
 2 #include <math.h>
 3 long func(long s);   
 4 
 5 int main() {
 6 
 7     long s, t;
 8 
 9     printf("Enter a number: ");
10     while (scanf("%ld", &s) != EOF) {
11         t = func(s); 
12         printf("new number is: %ld\n\n", t);
13         printf("Enter a number: ");
14     }
15 
16     return 0;
17 }
18 long func(long s) {
19     
20 
21     long t=0,ans = 0;
22     int i;
23     while (s > 0) {
24          i = s % 10;
25         if (i % 2 == 1) {
26             ans = ans * 10 + i;
27         }
28         s /= 10;
29     }
30     while(ans>0){
31         t=ans%10+t*10;
32         ans/=10;
33     }

 

 

 

标签:10,函数,int,编程,long,C语言,char,func,ans
From: https://www.cnblogs.com/xaiye00/p/17803884.html

相关文章

  • 高精度加法(C语言实现)
    高精度加法(C语言实现)介绍众所周知,整数在C和C++中以int,long,longlong三种不同大小的数据存储,数据大小最大可达2^64,但是在实际使用中,我们仍不可避免的会遇到爆longlong的超大数运算,这个时候,就需要我们使用高精度算法,来实现巨大数的运算。高精度的本质是将数字以字符串的形式......
  • x86平台SIMD编程入门(3):浮点指令
    1、算术指令算术类型函数示例备注加_mm_add_sd、_mm256_add_ps减_mm_sub_sd、_mm256_sub_ps乘_mm_mul_sd、_mm256_mul_ps除_mm_div_sd、_mm256_div_ps平方根_mm_sqrt_sd、_mm256_sqrt_ps倒数_mm_rcp_ss、_mm_rcp_ps、_mm256_rcp_ps快速计算......
  • C语言小案例
    1.设计一个递归函数,计算Ackerman的值。Ackerman函数定义如下:       n+1                 m=0A(m,n)=A(m-1,1)             m≠0,n=0       A(m-1,A(m,n-1))        m≠0,n......
  • x86平台SIMD编程入门(2):通用指令
    1、重解释转换虽然128位的XMM寄存器在硬件上只是256位YMM寄存器的下半部分,但在C++中它们是不同的类型。有一些intrinsic函数可以将它们重新解释为不同的类型,如下表所示,行代表源类型,列代表目标类型。__m128__m128d__m128i__m256__m256d__m256d__m128=_mm_castps_......
  • JavaScript如何定义类与函数如何实现继承自Object类实现方法------前端
    HTML页面用于展示<!DOCTYPEhtml><!--这是HTML的注释--><htmllang="en"id="myHtml"> <head> <!--这里不是设置了编码,而是告诉浏览器,用什么编码方式打开文件避免乱码--> <metacharset="UTF-8"> <metaname="viewport"......
  • x86平台SIMD编程入门(1):SIMD基础知识
    1、简介SIMD(SingleInstruction,MultipleData)是一种并行计算技术,它通过向量寄存器存储多个数据元素,并使用单条指令同时对这些数据元素进行处理,从而提高了计算效率。SIMD已被广泛应用于需要大量数据并行计算的领域,包括图像处理、视频编码、信号处理、科学计算等。许多现代处理......
  • 【教3妹学编程-算法题】117. 填充每个节点的下一个右侧节点指针 II
    2哥 :3妹,听说你昨天去面试了,怎么样啊?3妹:嗨,别提了,让我回去等通知,估计是没有通知了,还浪费我请了一天假。2哥 :你又请假了啊,你是怎么跟你那个严厉的老板请假的。3妹:我说我2哥生病了,嘿嘿~2哥:一猜就是说我生病了,自从你找工作,我这一年都病了十几回了……3妹:没办法,假不好请嘛,我尽快......
  • 教3妹学编程-算法题】2914. 使二进制字符串变美丽的最少修改次数
    3妹:呜呜,烦死了,脸上长了一个痘2哥 :不要在意这些细节嘛,不用管它,过两天自然不就好了。3妹:切,你不懂,影响这两天的心情哇。2哥 :我看你是不急着找工作了啊,工作那么辛苦,哪还有时间想这些啊。3妹:说到找工作,我又要去刷题了。2哥:我给你出一道关于美丽的题吧,让你的心情美丽美丽~ 1题目......
  • 【教3妹学编程-算法题】数组中两个数的最大异或值
    3妹:“太阳当空照,花儿对我笑,小鸟说早早早,你为什么背上炸药包”2哥 :3妹,什么事呀这么开心呀。3妹:2哥你看今天的天气多好啊,阳光明媚、万里无云、秋高气爽,适合秋游。2哥:是啊,都快立冬了,天气还是这么热。今年的冬天比以往来的要晚一些。3妹:晚来也是要来的,看天气预报下周要降温,估计没几......
  • UE4中的C++编程简介
    对官方文档的学习链接利用UE创建一个C++基类在编辑器中可以选择父类,根据这个父类我们可以创建一个基类用于后续的蓝图类制作。以Actor父类为例创建基类,其头文件会包含一个构造函数,一个Tick函数的重载和一个BeginPlay函数的重载。BeginPlay函数告诉Actor以可运行状态进入了游戏......