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

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

时间:2023-10-30 17:35:11浏览次数:27  
标签:源代码 return 函数 int 编程 long C语言 func include

实验任务1

源代码task1.c

 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 void print_blank_lines(int n){
35     int i;
36     
37     for(i = 1; i <= n; ++i)
38         print("\n")
39 }
40 
41 void print_text(int line,int col,char text[]){
42     print_blank_lines(line-1);
43     print_spaces(col-1);
44     printf("%s",text);
45 }

 

运行结果

 功能

在屏幕中随机一个位置生成hi, November,重复执行十次

实验任务2

源代码task2_1.c

 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     
10     for(i = 1; i <= n; ++i)
11         printf("%d! = %lld\n",i,fac(i));
12         
13     return 0;
14 }
15 
16 long long fac(int n){
17     static long long p = 1;
18     
19     p = p * n;
20     
21     return p;
22 }

运行结果

 

源代码task2_1.c(改)

 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     
10     for(i = 1; i <= n; ++i)
11         printf("%d! = %lld\n",i,fac(i));
12         
13     return 0;
14 }
15 
16 long long fac(int n){
17     static long long p = 1;
18     
19     printf("p = %lld\n",p);
20     
21     p = p * n;
22     
23     return p;
24 }

运行结果

 源代码task2_2.c

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

运行结果

 一致

实验任务3

源代码task3.c

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

运行结果

 实验任务4

源代码task4_1.c(迭代)

 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 a, int b){
14     int s = 1;
15     int t = 1;
16     int ans,i,c;
17     
18     c = b;
19     
20     if(a < b)
21         return 0;
22     
23     else if(b == 0 || b == a)
24         return 1;
25         
26     else{
27         for(i = 1;i <= b; ++i){
28         s = s * a;
29         t = t * c;
30         a--;
31         c--;
32         ans = s / t;
33         }
34     
35         return ans;
36     }
37 }

运行结果

 

标签:源代码,return,函数,int,编程,long,C语言,func,include
From: https://www.cnblogs.com/chenziming114514/p/17798291.html

相关文章

  • go 函数
    函数:声明: func函数名字(参数列表)(返回值列表){}举例: funcadd(){} funcadd(aint,bint)int{} funcadd(aint,bint)(int,int){}特点: a.不支持重载,一个包不能有两个名字一样的函数. b.函数也是一种类型,一个函数可以赋值给变量(这个变量是......
  • 深入理解多线程编程和 JVM 内存模型
    文章目录1.理解进程和线程的概念进程(Process)线程(Thread)2.理解竞态条件和死锁竞态条件(RaceCondition)死锁(Deadlock)3.JVM内存模型堆(Heap)栈(Stack)方法区(MethodArea)本地方法栈(NativeMethodStack)PC寄存器(ProgramCounterRegister)垃圾回收4.常见的多线程编程模式生产者-消费者......
  • 适用批处理的softmax函数的输入矩阵为什么要转置
    #适用批输入的softmax函数defSoftmax(x):ifx.ndim==2:x=x.Tx=x-np.max(x,axis=0)y=np.exp(x)/np.sum(np.exp(x),axis=0)returny.T#为什么要转置原因是Numpy数组的扩张原理是把行向量复制扩张成矩阵例子如下......
  • Linux21--shell编程基础
    1bashshell介绍#介绍shell是一门解释型、弱类型、动态语言#类比shell语法<===>python语法bash解释器<===>python解释器平台<===>平台2变量2.1基本使用###交互式环境中[root@localhost~]#x=1#1定义变量中间不能有空......
  • 使用c#在指定的时间内等待函数执行结果
    在指定的时间内等待某个函数的执行结果的方法。该方法接受三个参数:等待的最大时间、等待的频率和要等待的函数。方法会在指定的时间内每隔一定频率检查函数的执行结果,如果在等待时间内函数返回了true,则表示等待成功,返回true;如果超过等待时间仍未返回true,则表示等待失败,返回false。......
  • PostgreSQL(kingbaseES) 中,可以使用 unnest 函数将一个包含多个值的字符串分割成多行
    在PostgreSQL中,您可以使用unnest函数将一个包含多个值的字符串分割成多行。unnest函数将一个数组(或者像我们的情况下是由STRING_TO_ARRAY函数生成的数组)展开为多行数据。假设您有一个表my_table,其中包含一个名为my_column的字符串列,其内容如下:my_column-----------......
  • 使用c#在指定的时间内等待函数执行结果
    在指定的时间内等待某个函数的执行结果的方法。该方法接受三个参数:等待的最大时间、等待的频率和要等待的函数。方法会在指定的时间内每隔一定频率检查函数的执行结果,如果在等待时间内函数返回了true,则表示等待成功,返回true;如果超过等待时间仍未返回true,则表示等待失败,返回false。......
  • 无涯教程-C语言 - 条件判断
    下面显示的是大多数编程语言中常见的典型决策结构的一般形式-C编程语言将任何非零和非空值假定为true,并且如果其值为零或null,则假定为false值Sr.No.Statement&描述1ifstatementif语句由布尔表达式和一个或多个语句组成。2if...elsestatement在if语句之后可......
  • 无涯教程-C语言 - 运算符
     C语言包含丰富的内置运算符,并提供以下类型的运算符-算术运算符关系运算符逻辑运算符按位运算符赋值运算符Misc运算符算术运算符下表显示了C语言支持的所有算术运算符。假设变量A=10,变量B=20,然后-运算符描述示例+相加A+B=30-相减A-B=-10*相乘A*B=20......
  • glob库函数使用方法
    glob模块是用来获取文件路径的一个常用模块。它可以根据用户指定的路径来搜索文件,然后返回符合规则的文件路径列表。一、glob库函数的基本用法glob库需调用glob.glob()函数并传入特定的路径规则。路径规则可以包含通配符,例如使用*来匹配任意个字符,使用?来匹配单个字符。以下是一......