C语言入门:在Linux环境下的简单操作,输入、输出和计算都在里面

本文介绍了如何在Linux环境下使用C语言进行基本操作,包括创建并编译helloworld程序,理解基本数据类型,运用算术、关系和逻辑运算符,声明和初始化变量,以及进行输入和输出操作。同时,文章还讲解了变量交换、闰年判断、三角形构成条件等实际应用示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在Linux环境下显示helloworld

先建立一个源文件,取名为 helloworld.c
helloworld.c 为源文件
编辑内容:
3-8-1
接下来对源文件进行编译
gcc helloworld.c 为编译过程
默认生成编译文件名为a.out(可执行文件)
执行用 ./a.out 直接运行文件即可
3-8-2
gcc helloworld.c -o hello   编译helloworld生成名为hello的文件

编译后会生成两个文件
3-8-3

源程序中:
#include <stdio.h> 是一个文件,在C语言中称为头文件,里面有些函数提供给我们直接使用。
main() 称为主函数,是C语言中默认的入口函数,在默认情况下运行程序时系统会先调用程序中的main函数。

注释:

// 单行注释
/*
多行注释
*/

1. 基本数据类型

%d   整数
%f    小数

打印个人信息:

#include <stdio.h>

int main(){
        printf("姓名:张三\n");
8        printf("年龄:%d岁\n",25);
        printf("身高:%dcm\n",175);
        printf("体重:%dkg\n",60);
        printf("体温:%f度\n",37.5);
        return 0;
}

结果为:

姓名:张三
年龄:25岁
身高:175cm
体重:60kg
体温:37.500000

2. 运算符

算数运算符

算数运算符表示为
+
-
*
/
%取余

求10000秒是几小时几分钟几秒:

#include <stdio.h>

int main(){
        printf("%d小时\n",10000/3600);
        printf("%d分钟\n",10000%3600/60);
        printf("%d秒\n",10000%60);
        return 0;
}

结果为:

2小时
46分钟
40

关系运算符

关系运算符表示为
>大于
<小于
==等于
!=不等于
>=大于等于
<=小于等于

判断奇偶,判断是否能整除:

#include <stdio.h>

int main(){
        printf("%d\n",93%2 == 0);
        printf("%d\n",93%7 == 0);
        return 0;
}

结果为:

0
0

注意:
C语言中不能连等,1<100<10 会判断为1
因为 1<100 的结果是真为1,进而 1<10 的结果真为1

逻辑运算符

与    &&
或    ||
非   

所以:
要想判断1<100<10是否成立应书写为:
1<100 && 100<10

比较运算和逻辑运算结果:成立(真)为1,不成立(假)为0

闰年判断,2021年是否为闰年:

#include <stdio.h>

int main(){
        printf("%d\n",2021%4 == 0 && 2021%100 != 0 || 2021%400 == 0);
        return 0;
}

结果为:

0

三角构成,给三个边,是否能构成三角形:

#include <stdio.h>

int main(){
        printf("%d\n",10+20>23 && 10+23>20 && 20+23>10);
        return 0;
}

结果为:

1

优先级

! > 算术运算符 > 关系运算符 > && > ||
括号能改变优先级

优先级学习,看看结果是多少:

#include <stdio.h>

int main(){
        printf("%d\n",!100+10);
        printf("%d\n",!0+10);
        return 0;
}

结果为:

10
11

3. 变量

变量名、赋值、初始化

类型 变量名;
int a;
float b;

赋值:=
a = 10;
b = 1.2;

10000秒是 多少小时 多少分钟 多少秒:

#include <stdio.h>

int main(){
        int s;
        s = 10000;
        printf("%d小时\n",s/3600);
        printf("%d分钟\n",s%3600/60);
        printf("%d秒\n",s%60);
        return 0;
}

其中s变量

初始化: 生成变量时就赋了值
10000秒是 多少小时 多少分钟 多少秒:

#include <stdio.h>

int main(){
        int s = 10000;
        printf("%d小时\n",s/3600);
        printf("%d分钟\n",s%3600/60);
        printf("%d秒\n",s%60);
        return 0;
}

变量既要要定义也要赋值

华氏温度转摄氏度:
F=C*1.8+32
C=(F-32)/1.8

#include <stdio.h>

int main(){
        int C = 36;
        float F;
        F = C*1.8+32;
        printf("%f\n",F);
        return 0;
}

结果为:

96.800003

变量交换

x和y的值交换:

#include <stdio.h>

int main(){
        int x=1;
        int y=2;
        int z;
        z = x;
        x = y;
        y = z;
        printf("x=%d y=%d\n",x,y);
        return 0;
}

结果为:

x=2 y=1

变量命名:

  1. 字母、数字、下划线
  2. 开头必须是字母和下划线
  3. 区分大小写
  4. 不能使用C语言关键字

4. 输入

输入n,输出n:

#include <stdio.h>

int main(){
        int n;
        scanf("%d",&n);
        printf("n=%d\n",n);
        return 0;
}

结果为:

234
n=234

判断年份是否是闰年:

#include <stdio.h>

int main(){
        int year;
        printf("本程序用于判断年份是否是闰年\n");
        printf("请输入年份");
        scanf("%d",&year);
        printf("%d年是否是闰年(1闰年,0平年)%d\n",year,year%4 == 0 && year%100 != 0 || year%400 == 0);
        return 0;
}

结果为:

本程序用于判断年份是否是闰年
请输入年份2021
2021年是否是闰年(1闰年,0平年):0

计算两个数的和差积商余:

#include <stdio.h>

int main(){
        int a;
        int b;
        printf("请输入两个整数\n");
        scanf("%d",&a);
        scanf("%d",&b);
        printf("和为:%d\n",a+b);
        printf("差为:%d\n",a-b);
        printf("积为:%d\n",a*b);
        printf("商为:%d\n",a/b);
        printf("余为:%d\n",a%b);
        return 0;
}

结果为:

请输入两个整数
10
3
和为:13
差为:7
积为:30
商为:3
余为:1

输入一个年月日组成的数字,按照XXXX年XX月XX日打印出来:

#include <stdio.h>

int main(){
        int date;
        scanf("%d",&date);
        int year = date/10000;
        int mouth = date%10000/100;
        int day = date%100;

        printf("%d年%d月%d日\n",year,mouth,day);
        return 0;
}

结果为:

20210305
202135

5. 灵活用语法

  1. 多变量动作
    多个变量同时定义 int a,b;
    多个变量同时赋相同的值 a=b=10;
    多个变量同时初始化 int a=10,b=2;

  2. 自加 / 自减
    C+=A相当于C=C+A

  3. 自加1 / 自减1
    前缀自增/自减 ++A相当于A=A+1
    后缀自增/自减 A++ 进行两步:
                  1.A的值+1
                  2.A++的值不变
    优先级高于算术运算符

无奖知识问答:
请听题:
i=1,j=2
k = i++ + ++j + i++
问k=?
提示:1+3+2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值