首页 > 其他分享 >C语言小案例

C语言小案例

时间:2023-12-30 12:32:24浏览次数:26  
标签:return int 2lf C语言 案例 printf x2 x1

二维数组输出

题目描述:

输入一个整数N,输出一个N行 N列的二维矩阵,矩阵中的元素用\1 ~ N*N顺序螺旋填充。

输入格式

一个整数N(N<=10)

输出格式

输出N行 N列 的矩阵,元素之间用一个空格隔开,行末不要有多余的空格。

样例

输入数据

3

输出数据

1 2 3

8 9 4

7 6 5

代码示例如下:
#include <stdio.h>

void spiralMatrix(int n) {
    int matrix[10][10];
    int num = 1;
    int rowStart = 0, rowEnd = n - 1;
    int colStart = 0, colEnd = n - 1;

    while (num <= n * n) {
        // 从左到右
        for (int i = colStart; i <= colEnd; i++) {
            matrix[rowStart][i] = num++;
        }
        rowStart++;

        // 从上到下
        for (int i = rowStart; i <= rowEnd; i++) {
            matrix[i][colEnd] = num++;
        }
        colEnd--;

        // 从右到左
        for (int i = colEnd; i >= colStart; i--) {
            matrix[rowEnd][i] = num++;
        }
        rowEnd--;

        // 从下到上
        for (int i = rowEnd; i >= rowStart; i--) {
            matrix[i][colStart] = num++;
        }
        colStart++;
    }

    // 输出矩阵
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < n; j++) {
            printf("%d ", matrix[i][j]);
        }
        printf("\n");
    }
}

int main() {
    int N;
    scanf("%d", &N);
    spiralMatrix(N);
    return 0;
}
运行结果如下:

C语言小案例_二维数组

求函数值

题目描述:

输入x(x为整数),求函数值F(x)
函数定义如下:
F(x)=x x小于2
G(x)=x x小于2
F(x)=G(x/2)*2 x大于等于2且x为偶数
F(x)=G((x-1)/2) x大于等于2且x为奇数
G(x)=G(x/2)+1 x大于等于2且x为偶数
G(x)=x x为奇数

输入样例 10
输出样例 10

代码示例如下:

#include <stdio.h>
int G(int x) {
    if(x < 2 || x%2!=0)
        return x;
    return G(x/2)+1;
}
int F(int x) {
    if(x < 2)
        return x;
    if(x>= 2 && x%2==0)
        return G(x/2)*2;
    if(x>= 2 && x%2!=0)
        return G( (x-1)/2 );
}
int main(void) {
    int x;
    scanf("%d", &x);
        printf("%d\n", F(x));
    
    return 0;
}

运行结果如下:

10

C语言计算一元二次方程

题目描述如下图所示:

C语言小案例_C语言_02

代码示例如下:
#include<stdio.h>
#include<math.h>
int main() {
    double a,b,c,d,x,r,m;
    double x1=0;
    double x2=0;
    scanf("%lf %lf %lf",&a,&b,&c);
    d=b*b-(4*a*c);
    printf("d=%.2lf\n",d);
    if(a==0&&b==0&&c==0){
        printf("Zero Equation");
    }else if(a==0&&b==0&&c!=0){
        printf("Not An Equation");
    }else if(d==0) {    //德尔塔d是为0时,只有一个实数根。 
        x=(-b)/(2*a);
        printf("%.2lf\n",x);
    } else if(d>0){
        x1=(-b+sqrt(d))/(2*a);
        x2=(-b-sqrt(d))/(2*a);
        if(x1>x2){
            printf("x1=%.2lf,x2=%.2lf",x1,x2);
        } else{
            printf("x1=%.2lf,x2=%.2lf",x2,x1);
        }
    }else{
      r=(-b)/(2*a);
      m=sqrt(-d)/(2*a);
      printf("%x1=.2lf+%.2lfi,x2=%.2lf-%.2lfi\n",r,m,r,m);
    }
    return 0;
}
运行结果如下:

C语言小案例_二维数组_03

标签:return,int,2lf,C语言,案例,printf,x2,x1
From: https://blog.51cto.com/u_16174658/9040729

相关文章

  • 【数据结构】C语言实现双链表的基本操作
    双链表导言大家好,很高兴又和大家见面啦!!!经过前面几个篇章的内容分享,相信大家对顺序表和单链表的基本操作都已经熟练掌握了。今天咱们将继续分享线性表的链式存储的第二种形式——双链表。在今天的内容中,咱们将介绍双链表的创建以及一些基本操作,接下来跟我一起来看看吧!一、单链表与双......
  • 整数除法:floor、ceil、round——《初学C语言第42天》
    //////整数除法——舍小数,取整数//1.floor()头文件<math.h>//功能:把一个小数向下取整,即如果被计算的数是2.2,那向下取整的结果就为2.000000//原型:doublefloor(doubex);//x:是需要计算的数//返回值://   成功:返回一个double类型的数,此数默认有6位小数//   ......
  • 【北亚服务器数据恢复】san环境下LUN Mapping出错导致文件系统一致性出错的数据恢复案
     服务器数据恢复环境:san环境下的存储上一组由6块硬盘组建的RAID6,划分为若干LUN,MAP到跑不同业务的服务器上,服务器上层是SOLARIS操作系统+UFS文件系统。服务器故障:业务需求需要增加一台服务器跑新增的应用,工作人员在原服务器在线的状态下将其中一个lun映射到一台新服务器上。实际......
  • 程序员必知!适配器模式的实战应用与案例分析
    适配器模式是一种结构型设计模式,它允许不同接口的对象协同工作,它通过将一个类的接口转换成客户希望的另外一个接口,使得不兼容的类可以一起工作。适配器模式提高了类的复用性、系统的灵活性和可扩展性,并降低了系统间的耦合度,在实际应用中,例如电源适配器和数据转换器,以及编程中封装......
  • 23年底,我出齐了Spring boot,Spring cloud和案例方面的书,正在写一本面试书(代年终总结)
    年末了,再来总结一下吧,希望本人明年的年终总结文还能在博客园发。这次总结的主题是本人出的java书。这几年本人出了不少书,其中有python、redis和Java方面的。姑且不说其它,java方面,本人出了springboot,springcloud(第一代),springcloudalibaba(第二代)和基于springboot+vue.js的全......
  • # yyds干货盘点 # 盘点一个Python自动化办公实战案例(四)
    大家好,我是皮皮。一、前言前几天在Python最强王者交流群【钟爱一生】问了一个Python自动化办公的问题,一起来看看吧。【温馨提示】遇到表达不清的,能稍微描述下,想要达成的结果吗?在excel上,或者画图也行。最好是把你想要的结果展示在excel中,另外,你展示的这个表格最好做个小的demo发上来......
  • 盘点一个Python自动化办公实战案例(四)
    大家好,我是皮皮。一、前言前几天在Python最强王者交流群【钟爱一生】问了一个Python自动化办公的问题,一起来看看吧。【温馨提示】遇到表达不清的,能稍微描述下,想要达成的结果吗?在excel上,或者画图也行。最好是把你想要的结果展示在excel中,另外,你展示的这个表格最好做个小的demo......
  • 地震烈度速报与预警工程成功案例的经验分享 | TDengine 技术培训班第一期成功落地
    近日,涛思数据在成都开设了“国家地震烈度速报与预警工程数据库TDengine、消息中间件TMQ技术培训班”,这次培训活动共分为三期,而本次活动是第一期。其目标是帮助参与者深入了解TDengine和TMQ的技术特点和应用场景,并学习如何将其更好地应用于地震烈度速报与预警工程中。:::hl......
  • 【数据结构】C语言实现单链表的基本操作
    单链表基本操作的实现导言大家好,很高兴又和大家见面啦!!!在上一篇中,我们详细介绍了单链表的两种创建方式——头插法与尾插法,相信大家现在对这两种方式都已经掌握了。今天咱们将继续介绍单链表的基本操作——查找、插入与删除。在开始今天的内容之前,我们先通过尾插法创建一个单链表,如......
  • ModelSim的TCL脚本仿真流程【超详细案例教学】
    目录前言常用的tcl脚本仿真复杂tcl脚本仿真(以Quartus中带ipcore为例)参考前言在编写完成verilog代码时,我们常用需要使用modelsim软件进行仿真,一般我们都是在modelsim中手动添加文件,波形等等,小工程倒是无所谓,但是一旦信号量较多,涉及到观察以及编译方式使用GUI界面操作的方式未免有......