七天学会C语言-第一天(C语言基本语句)

news2024/11/26 12:17:00

在这里插入图片描述

一、固定格式

这个是C程序的基本框架,需要记住!!!

#include<stdio.h>
  int main(){

return 0;
}

二、printf 语句

简单输出一句C程序:

#include<stdio.h>
int main(){

    printf("大家好,");
    printf("我是");
    printf("沐尘而生!");

    return 0;
}

运行结果:
在这里插入图片描述

例 2:

#include<stdio.h>
int main(){

    printf("大家好,\n");
    printf("我是\n");
    printf("沐尘而生!\n");

    return 0;
}

运行结果:

在这里插入图片描述

例 3:使用"\t"

#include<stdio.h>
int main(){

    printf("大家好,");
    printf("我是\t");
    printf("沐尘而生!\n");

    return 0;
}

代码编写:

在这里插入图片描述

运行结果:
在这里插入图片描述

例 4:请编写一个C程序,输出以下信息:

****************
沐尘而生贼溜!
****************
#include<stdio.h>
int main()
{

    printf("***************\n");
    printf("沐尘而生贼溜!\n");
    printf("***************");
    return 0;
}

代码编写:
在这里插入图片描述
运行结果:

在这里插入图片描述

三、int、float、double、char 型数据

C语言中有多种数据类型,用于存储不同类型的数据

int(整数)

int 用于表示整数值。它通常占据4个字节,可以存储从-2,147,483,648到2,147,483,647之间的整数

int age = 25;

float(浮点数)

float 用于表示带有小数点的数值。它通常占据4个字节

float price = 12.99;

double(双精度浮点数)

double 用于表示更高精度的浮点数,通常占据8个字节

double pi = 3.14159265359;

char(字符)

char 用于表示单个字符

char grade = 'A';

综合一:

#include <stdio.h>

int main() {
    int a = 5, b, c, d, e, f; 
    b = a + 2;
    c = b - a; 
    d = a * c; 
    e = 0; 
    f = 0;

    if (d != 0) {
        e = a / d; 
        f = a % d; 
  }

    return 0;
}

四、用 printf 语句输出 int、float、double、char 型数据

要输出不同类型的数据,我们可以使用 printf 函数

输出整数:

int age = 25;
printf("年龄:%d\n", age);

输出浮点数:

float price = 12.99;
printf("价格:%f\n", price);

输出双精度浮点数:

double pi = 3.14159265359;
printf("π的值:%lf\n", pi);

输出字符:

char grade = 'A';
printf("成绩:%c\n", grade);

综合一:

#include <stdio.h> 

int main() {
    int a = 5, b, c, d, e, f; 
    b = a + 2;
    c = b - a; 
    d = a * c; 
    e = a / d; 
    f = a % d; 
    
    return 0;
}

综合二:


#include <stdio.h> 

int main() {
    double a, b, c, s; 
    a = 3.67; 
    b = 5.43; 
    c = 6.21;
    s = (a + b + c) / 3.0; // 注意使用3.0来获得浮点数结果

    printf("平均值:%lf\n", s); // 输出平均值

    return 0;
}


运行结果:

综合三:将大写转换为小写

#include <stdio.h>

int main() {
    char a = 'B', b = 'O', c = 'Y';
    
    // 将大写字符转换为小写字符
    a = a + 32;
    b = b + 32;
    c = c + 32;

    printf("a: %c, b: %c, c: %c\n", a, b, c); // 输出转换后的字符

    return 0;
}

运行结果:

printf 中的格式化字符串(比如 %d%f%lf%c)与要输出的数据类型相对应。

五、用 scanf 语句输入 int、float、double、char 型

要从用户获取输入,我们可以使用 scanf 函数

输入整数:

int age;
printf("请输入年龄:");
scanf("%d", &age);

输入浮点数:

float price;
printf("请输入价格:");
scanf("%f", &price);

输入双精度浮点数:

double pi;
printf("请输入π的值:");
scanf("%lf", &pi);

输入字符:

char grade;
printf("请输入成绩:");
scanf(" %c", &grade);

综合一:

#include <stdio.h>

int main() {
    int a = 5, b, c, d, e, f; 
    b = a + 2;
    c = b - a; 
    d = a * c; 
    e = a / d; 
    f = a % d;

    printf("a=%d, b=%d, c=%d\n", a, b, c); 
    printf("e=%d, f=%d\n", e, f);

    return 0;
}

运行结果:

综合二:求 123 与 456 的和

#include <stdio.h>

int main() {
    int a, b, sum; 
    a = 123; 
    b = 456;
    sum = a + b; 

    printf("和是%d\n", sum); 

    return 0;
}

运行结果:

综合三:

#include <stdio.h>

int main() {
    double a, b, c, s; 
    a = 3.67; 
    b = 5.43; 
    c = 6.21;
    s = (a + b + c) / 3;

    printf("设定的 a 是%f,b 是%f,c 是%f\n", a, b, c); 
    printf("求得的 s 是%f\n", s); 

    return 0;
}

运行结果:

综合四:

#include <stdio.h>

int main() {
    char a = 'B', b = 'O', c = 'Y'; 
    a = a + 32;
    b = b + 32; 
    c = c + 32;

    printf("小写字母依次是%c%c%c\n", a, b, c); 

    return 0;
}

运行结果:

六、putchar()语句、getchar()语句

putchar() 和 getchar() 是用于字符输入输出的函数。它们可以用于处理单个字符。

输出字符:

char letter = 'A';
putchar(letter); // 输出字符 'A'

输入字符:

char inputChar;
printf("请输入一个字符:");
inputChar = getchar(); // 从用户获取一个字符
putchar(inputChar); // 输出用户输入的字符

综合一:输入一个大写字母,可以输出一个小写字母。

#include <stdio.h>

int main() {
    char a, b;
    printf("请输入大写字母:\n"); 
    scanf("%c", &a);
    b = a + 32;
    printf("%c 的小写字母是 %c\n", a, b); 
    return 0;
}

运行结果:

七、𝐞^𝐱、log 等数学运算

在这里插入图片描述

C语言提供了丰富的数学函数库,可以进行各种数学运算,例如指数运算和对数运算

#include <math.h>
double base = 2.0;
double exponent = 3.0;
double result = pow(base, exponent); // 计算 2^3
printf("2的3次方:%lf\n", result);

double x = 10.0;
double logarithm = log(x); // 计算自然对数
printf("自然对数:%lf\n", logarithm);

综合一:给出三角形三边 a、b、c 的长,利用公式area=√𝐬(𝐬 − 𝐚)(𝐬 − 𝐛)(𝐬 − 𝐜),求该三角形的面积 area(公式中的 s= 𝐚+𝐛+𝐜 )

#include <stdio.h>
#include <math.h>

int main() {
    double a, b, c, s, area;

    printf("请输入三角形的三边长(以逗号分隔):\n");
    scanf("%lf,%lf,%lf", &a, &b, &c);
    
    s = (a + b + c) / 2;
    area = sqrt(s * (s - a) * (s - b) * (s - c));

    printf("a=%f\tb=%f\tc=%f\n", a, b, c);
    printf("面积=%f\n", area);

    return 0;
}
运行结果(以3,4,5为例):

综合二:假如沐尘而生的同事小翟的年薪增长率为−10%,请利用公式p=(𝟏 + 𝐫)𝐧 计算 10 年后他的年薪与今年相比增长了多少。(公式中的 r 为年增长率,n 为年数,p 为与今年相比的倍数)

#include <stdio.h>
#include <math.h>

int main() {
    double r, n, p;
    r = -0.1;
    n = 10;
    p = pow(1 + r, n);
    printf("p=%f\n", p);
    return 0;
}

运行结果:

八、三个例子:

1. 使用 %m.nf 格式控制符

  • %m.nf 是一种格式控制符,用于格式化输出浮点数。
  • m 表示最小字段宽度,即输出的数字占用的最少字符数。
  • n 表示小数部分的位数。
  • f 表示浮点数类型。

示例代码:

#include <stdio.h> 

int main() {
    double a, b, c;
    a = 3.67; 
    b = 5.43; 
    c = 6.21;
    printf("设定的 a 是%5.2f,b 是%-5.2f,c 是%7.4f\n", a, b, c);
    return 0;
}

运行结果:

设定的 a 是 3.67,b 是5.43,c 是 6.2100

2. 使用 %e 格式控制符

  • %e 是一种格式控制符,用于输出科学计数法表示的浮点数。
  • 它将一个浮点数以 x.xxxe±xx 的形式输出,其中 x 是数字,±xx 表示指数部分。

示例代码:

#include <stdio.h>

int main() {
    printf("小翟的身高是%10.2e 厘米\n", 183.456);
    return 0;
}

运行结果:

小翟的身高是  1.83e+02 厘米

3. 强制类型转换 (int)(表达式)

  • (int)(表达式) 是一种类型转换操作,它将表达式的结果强制转换为整数类型,并抹去小数部分。
  • 这通常用于将浮点数转换为整数,得到整数的部分。

示例代码:

#include <stdio.h>

int main() {
    double a;
    int ge, shi, bai;
    printf("请输入数字\n");
    scanf("%lf", &a);
    bai = (int)(a / 100);
    shi = (int)((a - bai * 100) / 10);
    ge = (int)(a - bai * 100 - shi * 10);
    printf("个位数字%d\n", ge);
    printf("十位数字%d\n", shi);
    printf("百位数字%d\n", bai);
    return 0;
}

运行结果(假设输入为123.456):

请输入数字
个位数字6
十位数字5
百位数字1

九、综合模块

请编写一个C程序,要求用户输入一个三角形的三边长(a、b、c),然后计算并输出以下内容:

1. 三角形的周长。
2. 三角形的面积(使用海伦公式)。
3. 三角形的类型(等边、等腰、或普通三角形)。

注意:

  • 请使用 %lf 作为 scanf 中读取浮点数的格式说明符。
  • 使用 %f 作为 printf 中打印浮点数的格式说明符。
  • 使用 pow 函数计算幂次。
  • 要考虑输入的边长是否满足构成三角形的条件。

代码演示:

#include <stdio.h>
#include <math.h>

int main() {
    double a, b, c;
    printf("请输入三角形的三边长 a, b, c(以空格分隔):\n");
    scanf("%lf %lf %lf", &a, &b, &c);

    // 判断输入是否构成三角形
    if (a + b > c && a + c > b && b + c > a) {
        // 计算三角形的周长
        double perimeter = a + b + c;
        printf("三角形的周长为:%f\n", perimeter);

        // 计算三角形的半周长
        double s = perimeter / 2;

        // 计算三角形的面积(使用海伦公式)
        double area = sqrt(s * (s - a) * (s - b) * (s - c));
        printf("三角形的面积为:%f\n", area);

        // 判断三角形的类型
        if (a == b && b == c) {
            printf("这是一个等边三角形。\n");
        } else if (a == b || a == c || b == c) {
            printf("这是一个等腰三角形。\n");
        } else {
            printf("这是一个普通三角形。\n");
        }
    } else {
        printf("输入的边长无法构成一个三角形。\n");
    }

    return 0;
}

运行结果(以输入2,2,4为例):

总结讲解:

  1. 用户被提示输入三角形的三边长(a、b、c)。
  2. 程序检查输入的边长是否满足构成三角形的条件。如果不满足条件,程序将输出错误消息并退出。
  3. 如果边长满足条件,程序计算三角形的周长并输出。
  4. 然后,程序计算三角形的半周长以用于后续的面积计算。
  5. 使用海伦公式,程序计算并输出三角形的面积。
  6. 最后,程序根据边长的相等性来判断三角形的类型,并输出相应的消息。

这个程序结合了输入、条件判断、数学计算和输出,是一个综合性的示例,涵盖了C语言的多个基本概念。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1014720.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

浅析Java责任链模式实现

一、概要 定义&#xff1a;责任链模式是一种行为设计模式&#xff0c; 允许你将请求沿着处理者链进行发送。收到请求后&#xff0c; 每个处理者均可对请求进行处理&#xff0c; 或将其传递给链上的下个处理者。 二、应用场景&#xff1a; 1.多条件流程判断&#xff1a;权限相关…

时序预测 | MATLAB实现BO-BiGRU贝叶斯优化双向门控循环单元时间序列预测

时序预测 | MATLAB实现BO-BiGRU贝叶斯优化双向门控循环单元时间序列预测 目录 时序预测 | MATLAB实现BO-BiGRU贝叶斯优化双向门控循环单元时间序列预测效果一览基本介绍模型搭建程序设计参考资料 效果一览 基本介绍 MATLAB实现BO-BiGRU贝叶斯优化双向门控循环单元时间序列预测。…

把握经济大势和个人财运密码必须读懂钱—现代金钱的魔力

原出处&#xff1a;天涯论坛之《把握经济大势和个人财运密码必须读懂钱—现代金钱的魔力》 原作者&#xff1a;真立派 原文完整版PDF&#xff08;可能很快就会被河蟹&#xff0c;建议先保存&#xff09;&#xff1a;https://pan.quark.cn/s/20c917683d8f 引子 过去一些年&…

数据结构入门 — 树的概念与结构

本文属于数据结构专栏文章&#xff0c;适合数据结构入门者学习&#xff0c;涵盖数据结构基础的知识和内容体系&#xff0c;文章在介绍数据结构时会配合上动图演示&#xff0c;方便初学者在学习数据结构时理解和学习&#xff0c;了解数据结构系列专栏点击下方链接。 博客主页&am…

【LeetCode-中等题】 151. 反转字符串中的单词

文章目录 题目方法一&#xff1a;双指针去除空格 题目 方法一&#xff1a;双指针去除空格 核心代码去除首尾以及中间多余空格(在原串上修改) //去除首尾以及中间多余空格(在原串上修改)public StringBuilder trimSpaces(String s) { int len s.length();StringBuilder str …

【结构型】代理模式(Proxy)

目录 代理模式(Proxy)适用场景代理模式实例代码&#xff08;Java&#xff09; 代理模式(Proxy) 为其他对象提供一种代理以控制对这个对象的访问。Proxy 模式适用于在需要比较通用和复杂的对象指针代替简单的指针的时候。 适用场景 远程代理 (Remote Proxy) 为一个对象在不同…

linux-线程条件变量(cond)

概述 与互斥锁不同&#xff0c;条件变量是用来等待而不是用来上锁的。条件变量用来自动阻塞一个线程&#xff0c;直到某特殊情况发生为止。通常条件变量和互斥锁同时使用 。 条件变量使我们可以睡眠等待某种条件出现。条件变量是利用线程间共享的全局变量进行同步的一种机制&a…

Vue2的学习

computed计算属性 概念 基于现有数据&#xff0c;计算出来的新属性&#xff0c;依赖的数据变化&#xff0c;会自动重新计算 语法 声明在computed配置项中&#xff0c;一个计算属性对应一个函数这是一个属性{{计算属性名}}&#xff0c;不是方法注意不要忘记return <body…

无涯教程-JavaScript - ROW函数

描述 ROW函数返回引用的行号。 语法 ROW ([reference]) 争论 Argument描述Required/OptionalReference 您想要其行号的单元格或单元格范围。 如果省略引用,则假定它是出现ROW函数的单元格的引用。 请参阅下面的注释。 Optional Notes 如果引用是一个单元格范围,并且如果将…

【RTOS学习】单片机中的C语言

&#x1f431;作者&#xff1a;一只大喵咪1201 &#x1f431;专栏&#xff1a;《RTOS学习》 &#x1f525;格言&#xff1a;你只管努力&#xff0c;剩下的交给时间&#xff01; 本喵默认各位小伙伴都会C语言&#xff0c;我们平时学习C语言都是在Windows环境下学习的&#xff0…

事半功倍,必看这4个Pandas神器

Pandas是我们日常处理表格数据最常用的包&#xff0c;但是对于数据分析来说&#xff0c;Pandas的DataFrame还不够直观&#xff0c;所以今天我们将介绍4个和Pandas相关的Python包&#xff0c;可以将Pandas的DataFrame转换交互式表格&#xff0c;让我们可以直接在上面进行数据分析…

【电子元件】常用电子元器件的识别之霍尔元件

目录 1. 霍尔元件的结构与特点1.1 霍尔元件的组成结构1.2 霍尔元件的霍尔效应 2. 霍尔元件的图形符号与型号2.1 1.图形符号2.2 2.型号说明 3. 半导体霍尔效应的原理3.1 半导体中的左手定则3.2 P型半导体霍尔效应的原理3.3 N型半导体霍尔效应的原理 4. 霍尔元件的电势计算与工作…

RabbitMQ深入 —— 交换机

前言 在这篇文章中&#xff0c;荔枝围绕交换机梳理RabbitMQ中交换机相关知识&#xff0c;主要包括&#xff1a;扇出交换机、直接交换机、主题交换机&#xff0c;根据不同的交换机引出相应的RabbitMQ模式。同样的本篇文章也是主要围绕如何通过交换机定向群体发送消息这一个问题来…

澳洲硕士申请QA

Q&A 申请一般问题 澳洲申请时间 澳洲分2月跟7月开学&#xff0c;不分rolling。随时申请&#xff0c;截止日期前申请就行&#xff0c;&#xff08;具体时间官网有写&#xff09; 研究生学位时长 它整体的要求一般就是如果说你要申请的这个专业是本专业&#xff0c;那他…

分类预测 | Matlab实现基于MIC-BP-Adaboost最大互信息系数数据特征选择算法结合Adaboost-BP神经网络的数据分类预测

分类预测 | Matlab实现基于MIC-BP-Adaboost最大互信息系数数据特征选择算法结合Adaboost-BP神经网络的数据分类预测 目录 分类预测 | Matlab实现基于MIC-BP-Adaboost最大互信息系数数据特征选择算法结合Adaboost-BP神经网络的数据分类预测效果一览基本介绍研究内容程序设计参考…

Linux内核中断机制

什么是中断&#xff1f; 中断是一种打断程序的正常执行流程的事件&#xff0c;这种事件以电信号的形式出现&#xff0c;可以由硬件设备或者CPU本身生成。 在中断发生后&#xff0c;正常的执行流被立即中止&#xff0c;转而执行中断处理程序(handler)。中断处理完成之后&#…

IT运维:使用数据分析平台监控Windows Eventlog

TIPS&#xff1a;本文鸿鹄版本&#xff1a;2.10.0及以上版本 概述 本文基于《IT运维&#xff1a;利用鸿鹄采集Windows event log数据》&#xff08;以下简称原文&#xff09;文章进行了细化与延伸。主要包括细化了安装步骤&#xff0c;增加了仪表板。 鸿鹄端配置 创建数据集与数…

[Linux入门]---搭建Linux环境

1.Linux环境的搭建方式 使用Linux操作系统的三种途径&#xff1a; 1.直接安装在物理机上&#xff0c;但是由于 Linux 桌面使用起来非常不友好&#xff0c;不推荐。 2.使用虚拟机软件&#xff0c;将 Linux 搭建在虚拟机上&#xff0c;但是由于当前的虚拟机软件(如 VMWare 之类的…

科研生产力:Zotero

目录 Zotero安装配置Zotero常用插件1. Zotero Connector2. Jasminum-茉莉花插件3. Zotero-scihub4. Zotero-pdf-translate5. Zotero-if6. Zotero-style7. Zotero-tag8. ZotFile9. zotero-better-notesZotero GPT 一些学习资源 Zotero安装配置 进入Zotero官网&#xff1a;https:…

前端用户体验设计:创造卓越的用户界面和交互

&#x1f482; 个人网站:【工具大全】【游戏大全】【神级源码资源网】&#x1f91f; 前端学习课程&#xff1a;&#x1f449;【28个案例趣学前端】【400个JS面试题】&#x1f485; 寻找学习交流、摸鱼划水的小伙伴&#xff0c;请点击【摸鱼学习交流群】 用户体验&#xff08;Us…