初学编程C语言100个基础代码大全_第1页
初学编程C语言100个基础代码大全_第2页
初学编程C语言100个基础代码大全_第3页
初学编程C语言100个基础代码大全_第4页
初学编程C语言100个基础代码大全_第5页
已阅读5页,还剩24页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

初学编程C语言100个基础代码大全第一部分:语法入门(1-10个)——熟悉C语言基本结构说明:此部分代码聚焦“HelloWorld”、变量、输入输出、注释等基础,帮助快速上手C语言框架,每段代码可直接复制到编译器(如Dev-C++)运行。1.第一个C语言程序:HelloWorldc

#include<stdio.h>//引入输入输出头文件

intmain(){//主函数,程序入口

printf("HelloWorld!\n");//输出HelloWorld,\n表示换行

return0;//主函数返回0,代表程序正常结束

}2.定义并输出不同类型变量c

#include<stdio.h>

intmain(){

//定义不同类型变量:整型、浮点型、字符型

inta=10;//整型(整数)

floatb=3.14f;//单精度浮点型(小数)

doublec=3.14159;//双精度浮点型(精度更高的小数)

chard='A';//字符型(单个字符,用单引号)

//输出变量值,%d对应整型,%f对应float,%lf对应double,%c对应字符

printf("整型a=%d\n",a);

printf("单精度浮点型b=%f\n",b);

printf("双精度浮点型c=%lf\n",c);

printf("字符型d=%c\n",d);

return0;

}3.接收用户输入的单个变量(整型)c

#include<stdio.h>

intmain(){

intnum;//定义一个整型变量,用于存储用户输入的值

printf("请输入一个整数:");

scanf("%d",&num);//接收用户输入,&是取地址符,必须加

printf("你输入的整数是:%d\n",num);

return0;

}4.接收用户输入的两个变量(浮点型)并输出c

#include<stdio.h>

intmain(){

floatx,y;//定义两个单精度浮点型变量

printf("请输入两个小数(用空格分隔):");

scanf("%f%f",&x,&y);//接收两个输入,空格分隔

printf("你输入的两个数是:%f和%f\n",x,y);

return0;

}5.注释的使用(单行注释和多行注释)c

#include<stdio.h>

/*

这是多行注释:

作用:解释代码功能,方便自己和他人阅读

多行注释可以跨多行,用/*开头,*/结尾(中间无空格)

*/

intmain(){

//这是单行注释:用于解释单行代码,用//开头

inta=5;//定义变量a,赋值为5

printf("a的值是:%d\n",a);//输出a的值

return0;

}6.常量的定义(#define宏定义)c

#include<stdio.h>

#definePI3.14159//宏定义常量PI,常量的值不能修改

#defineMAX100//宏定义常量MAX,代表最大值100

intmain(){

printf("圆周率PI=%lf\n",PI);

printf("最大值MAX=%d\n",MAX);

//PI=3.14;//错误:常量不能被赋值修改

return0;

}7.常量的定义(const关键字)c

#include<stdio.h>

intmain(){

constintMIN=0;//const定义常量MIN,值不能修改

constfloatRATE=0.8;//const定义浮点型常量

printf("最小值MIN=%d\n",MIN);

printf("比例RATE=%f\n",RATE);

//MIN=1;//错误:const定义的常量不能修改

return0;

}8.基本数据类型转换(自动转换)c

#include<stdio.h>

intmain(){

inta=10;

floatb=3.5;

//自动转换:整型+浮点型,结果自动转为浮点型

floatsum=a+b;

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

printf("a+b=%f\n",sum);//输出结果为13.500000

return0;

}9.基本数据类型转换(强制转换)c

#include<stdio.h>

intmain(){

floata=3.9;

intb;

//强制转换:将浮点型a转为整型,舍弃小数部分(不是四舍五入)

b=(int)a;

printf("a=%f\n",a);//输出3.900000

printf("强制转换后b=%d\n",b);//输出3

return0;

}10.输出转义字符(换行、制表符等)c

#include<stdio.h>

intmain(){

//常见转义字符:\n(换行)、\t(制表符,相当于按Tab)、\"(输出双引号)

printf("姓名\t年龄\t性别\n");//\t分隔,排版整齐

printf("张三\t20\t男\n");

printf("李四\t19\t女\n");

printf("她说:\"我在学C语言!\"\n");//输出双引号

return0;

}第二部分:基础运算(11-30个)——掌握加减乘除、逻辑运算说明:此部分涵盖算术运算、赋值运算、逻辑运算、关系运算,是编写复杂程序的基础,重点理解运算优先级和表达式。11.算术运算(加减乘除、取余)c

#include<stdio.h>

intmain(){

inta=15,b=4;

printf("a+b=%d\n",a+b);//加法:19

printf("a-b=%d\n",a-b);//减法:11

printf("a*b=%d\n",a*b);//乘法:60

printf("a/b=%d\n",a/b);//除法(整型相除,舍弃小数):3

printf("a%%b=%d\n",a%b);//取余(余数):3(%是取余符号)

return0;

}12.自增、自减运算(前置和后置)c

#include<stdio.h>

intmain(){

inta=5;

//后置自增:先使用a的值,再让a加1

printf("a++=%d\n",a++);//输出5,此时a=6

//前置自增:先让a加1,再使用a的值

printf("++a=%d\n",++a);//输出7,此时a=7

intb=5;

printf("b--=%d\n",b--);//后置自减:输出5,b=4

printf("--b=%d\n",--b);//前置自减:输出3,b=3

return0;

}13.赋值运算(=、+=、-=、*=、/=、%=)c

#include<stdio.h>

intmain(){

inta=10;

a+=5;//等价于a=a+5→a=15

printf("a+=5后,a=%d\n",a);

a-=3;//等价于a=a-3→a=12

printf("a-=3后,a=%d\n",a);

a*=2;//等价于a=a*2→a=24

printf("a*=2后,a=%d\n",a);

a/=4;//等价于a=a/4→a=6

printf("a/=4后,a=%d\n",a);

a%=2;//等价于a=a%2→a=0

printf("a%%=2后,a=%d\n",a);

return0;

}14.关系运算(>、<、==、!=、>=、<=)c

#include<stdio.h>

intmain(){

inta=10,b=5;

//关系运算结果:真(1)、假(0)

printf("a>b=%d\n",a>b);//1(真)

printf("a<b=%d\n",a<b);//0(假)

printf("a==b=%d\n",a==b);//0(假,==是判断相等,=是赋值)

printf("a!=b=%d\n",a!=b);//1(真)

printf("a>=b=%d\n",a>=b);//1(真)

printf("a<=b=%d\n",a<=b);//0(假)

return0;

}15.逻辑运算(&&与、||或、!非)c

#include<stdio.h>

intmain(){

inta=1,b=0;//1代表真,0代表假

//与运算:两边都为真,结果才为真

printf("a&&b=%d\n",a&&b);//0(假)

//或运算:两边有一个为真,结果就为真

printf("a||b=%d\n",a||b);//1(真)

//非运算:取反,真变假,假变真

printf("!a=%d\n",!a);//0(假)

printf("!b=%d\n",!b);//1(真)

return0;

}16.运算优先级演示(先乘除后加减,先括号后其他)c

#include<stdio.h>

intmain(){

inta=2,b=3,c=4;

//优先级:括号>乘法>加法

intresult1=a+b*c;//2+3*4=14

intresult2=(a+b)*c;//(2+3)*4=20

printf("a+b*c=%d\n",result1);

printf("(a+b)*c=%d\n",result2);

//逻辑运算优先级:!>&&>||

intresult3=!a||b&&c;//0||1=1

printf("!a||b&&c=%d\n",result3);

return0;

}17.计算两个数的和、差、积、商、余(用户输入)c

#include<stdio.h>

intmain(){

intnum1,num2;

printf("请输入两个整数(用空格分隔):");

scanf("%d%d",&num1,&num2);

printf("和:%d+%d=%d\n",num1,num2,num1+num2);

printf("差:%d-%d=%d\n",num1,num2,num1-num2);

printf("积:%d*%d=%d\n",num1,num2,num1*num2);

if(num2!=0){//避免除数为0,报错

printf("商:%d/%d=%d\n",num1,num2,num1/num2);

printf("余:%d%%%d=%d\n",num1,num2,num1%num2);

}else{

printf("错误:除数不能为0!\n");

}

return0;

}18.计算圆的周长和面积(已知半径)c

#include<stdio.h>

#definePI3.14159//宏定义圆周率

intmain(){

floatr;//半径

printf("请输入圆的半径:");

scanf("%f",&r);

floatcircumference=2*PI*r;//周长公式:2πr

floatarea=PI*r*r;//面积公式:πr²

printf("圆的周长=%.2f\n",circumference);//%.2f表示保留2位小数

printf("圆的面积=%.2f\n",area);

return0;

}19.计算长方形的周长和面积(用户输入长和宽)c

#include<stdio.h>

intmain(){

floatlength,width;//长和宽,用浮点型(支持小数)

printf("请输入长方形的长和宽(用空格分隔):");

scanf("%f%f",&length,&width);

floatperimeter=2*(length+width);//周长公式:2*(长+宽)

floatarea=length*width;//面积公式:长*宽

printf("长方形的周长=%.2f\n",perimeter);

printf("长方形的面积=%.2f\n",area);

return0;

}20.计算三角形的面积(已知底和高)c

#include<stdio.h>

intmain(){

floatbase,height;//底和高

printf("请输入三角形的底和高(用空格分隔):");

scanf("%f%f",&base,&height);

floatarea=0.5*base*height;//面积公式:1/2*底*高

printf("三角形的面积=%.2f\n",area);

return0;

}21.温度转换(摄氏度转华氏度)c

#include<stdio.h>

intmain(){

floatcelsius,fahrenheit;//摄氏度、华氏度

printf("请输入摄氏度:");

scanf("%f",&celsius);

//转换公式:华氏度=摄氏度*9/5+32

fahrenheit=celsius*9/5+32;

printf("%.2f摄氏度=%.2f华氏度\n",celsius,fahrenheit);

return0;

}22.温度转换(华氏度转摄氏度)c

#include<stdio.h>

intmain(){

floatcelsius,fahrenheit;

printf("请输入华氏度:");

scanf("%f",&fahrenheit);

//转换公式:摄氏度=(华氏度-32)*5/9

celsius=(fahrenheit-32)*5/9;

printf("%.2f华氏度=%.2f摄氏度\n",fahrenheit,celsius);

return0;

}23.计算两个数的最大值(用关系运算)c

#include<stdio.h>

intmain(){

inta,b,max;

printf("请输入两个整数:");

scanf("%d%d",&a,&b);

//判断a和b的大小,将较大值赋给max

if(a>b){

max=a;

}else{

max=b;

}

printf("两个数的最大值是:%d\n",max);

return0;

}24.计算两个数的最小值(用三目运算符)c

#include<stdio.h>

intmain(){

inta,b,min;

printf("请输入两个整数:");

scanf("%d%d",&a,&b);

//三目运算符:条件?成立时的值:不成立时的值

min=(a<b)?a:b;

printf("两个数的最小值是:%d\n",min);

return0;

}25.计算三个数的最大值(嵌套if)c

#include<stdio.h>

intmain(){

inta,b,c,max;

printf("请输入三个整数(用空格分隔):");

scanf("%d%d%d",&a,&b,&c);

//嵌套if判断最大值

if(a>b){

if(a>c){

max=a;

}else{

max=c;

}

}else{

if(b>c){

max=b;

}else{

max=c;

}

}

printf("三个数的最大值是:%d\n",max);

return0;

}26.计算三个数的最小值(多条件判断)c

#include<stdio.h>

intmain(){

inta,b,c,min;

printf("请输入三个整数:");

scanf("%d%d%d",&a,&b,&c);

min=a;//假设a是最小值

if(b<min){

min=b;//如果b更小,更新min为b

}

if(c<min){

min=c;//如果c更小,更新min为c

}

printf("三个数的最小值是:%d\n",min);

return0;

}27.判断一个数是奇数还是偶数c

#include<stdio.h>

intmain(){

intnum;

printf("请输入一个整数:");

scanf("%d",&num);

//奇数:不能被2整除(num%2!=0);偶数:能被2整除(num%2==0)

if(num%2==0){

printf("%d是偶数\n",num);

}else{

printf("%d是奇数\n",num);

}

return0;

}28.判断一个数是正数、负数还是零c

#include<stdio.h>

intmain(){

intnum;

printf("请输入一个整数:");

scanf("%d",&num);

if(num>0){

printf("%d是正数\n",num);

}elseif(num<0){

printf("%d是负数\n",num);

}else{

printf("%d是零\n",num);

}

return0;

}29.计算两个数的平方和c

#include<stdio.h>

intmain(){

inta,b;

printf("请输入两个整数:");

scanf("%d%d",&a,&b);

intsquare_sum=a*a+b*b;//平方和=a²+b²

printf("%d的平方+%d的平方=%d\n",a,b,square_sum);

return0;

}30.计算两个数的平方差c

#include<stdio.h>

intmain(){

inta,b;

printf("请输入两个整数:");

scanf("%d%d",&a,&b);

intsquare_diff=a*a-b*b;//平方差=a²-b²

printf("%d的平方-%d的平方=%d\n",a,b,square_diff);

return0;

}第三部分:分支结构(31-45个)——if、if-else、switch-case说明:分支结构是程序“判断”的核心,根据不同条件执行不同代码,重点掌握if-else嵌套和switch-case的使用场景。31.简单if判断(判断成绩是否及格)c

#include<stdio.h>

intmain(){

intscore;

printf("请输入你的成绩:");

scanf("%d",&score);

//如果成绩≥60,输出及格

if(score>=60){

printf("成绩及格!\n");

}

//成绩<60,不执行任何操作

return0;

}32.if-else判断(判断成绩及格/不及格)c

#include<stdio.h>

intmain(){

intscore;

printf("请输入你的成绩:");

scanf("%d",&score);

if(score>=60){

printf("成绩及格!\n");

}else{

printf("成绩不及格,继续努力!\n");

}

return0;

}33.if-elseif-else判断(成绩分级)c

#include<stdio.h>

intmain(){

intscore;

printf("请输入你的成绩(0-100):");

scanf("%d",&score);

//多条件判断,按分数分级

if(score>=90&&score<=100){

printf("优秀\n");

}elseif(score>=80&&score<90){

printf("良好\n");

}elseif(score>=70&&score<80){

printf("中等\n");

}elseif(score>=60&&score<70){

printf("及格\n");

}elseif(score>=0&&score<60){

printf("不及格\n");

}else{

printf("成绩输入错误!\n");//处理非法输入

}

return0;

}34.嵌套if判断(判断一个数是否是正数且是偶数)c

#include<stdio.h>

intmain(){

intnum;

printf("请输入一个整数:");

scanf("%d",&num);

if(num>0){//外层判断:是否为正数

if(num%2==0){//内层判断:是否为偶数

printf("%d是正数且是偶数\n",num);

}else{

printf("%d是正数但不是偶数\n",num);

}

}else{

printf("%d不是正数\n",num);

}

return0;

}35.嵌套if判断(判断三角形类型:等边、等腰、普通)c

#include<stdio.h>

intmain(){

inta,b,c;

printf("请输入三角形的三条边长(用空格分隔):");

scanf("%d%d%d",&a,&b,&c);

//先判断能否构成三角形(任意两边之和大于第三边)

if(a+b>c&&a+c>b&&b+c>a){

if(a==b&&b==c){

printf("这是等边三角形\n");

}elseif(a==b||a==c||b==c){

printf("这是等腰三角形\n");

}else{

printf("这是普通三角形\n");

}

}else{

printf("这三条边不能构成三角形\n");

}

return0;

}36.switch-case判断(根据数字输出对应星期)c

#include<stdio.h>

intmain(){

intday;

printf("请输入星期(1-7):");

scanf("%d",&day);

//switch-case根据day的值,执行对应case

switch(day){

case1:

printf("星期一\n");

break;//break:跳出switch,避免执行后续case

case2:

printf("星期二\n");

break;

case3:

printf("星期三\n");

break;

case4:

printf("星期四\n");

break;

case5:

printf("星期五\n");

break;

case6:

printf("星期六\n");

break;

case7:

printf("星期日\n");

break;

default://当所有case都不匹配时,执行default

printf("输入错误!请输入1-7之间的数字\n");

}

return0;

}37.switch-case判断(根据成绩分级,简化版)c

#include<stdio.h>

intmain(){

intscore;

printf("请输入成绩(0-100):");

scanf("%d",&score);

//简化:将分数除以10,得到十位数字,对应分级

switch(score/10){

case10:

case9://90-100,共用一个输出

printf("优秀\n");

break;

case8:

printf("良好\n");

break;

case7:

printf("中等\n");

break;

case6:

printf("及格\n");

break;

case5:

case4:

case3:

case2:

case1:

case0://0-59,共用一个输出

printf("不及格\n");

break;

default:

printf("成绩输入错误!\n");

}

return0;

}38.switch-case判断(简单计算器:加减乘除)c

#include<stdio.h>

intmain(){

floata,b,result;

charop;//存储运算符(+、-、*、/)

printf("请输入运算表达式(格式:aopb,如1+2):");

scanf("%f%c%f",&a,&op,&b);//注意%c前不加空格,避免读取空格

switch(op){

case'+':

result=a+b;

break;

case'-':

result=a-b;

break;

case'*':

result=a*b;

break;

case'/':

if(b!=0){

result=a/b;

}else{

printf("错误:除数不能为0!\n");

return1;//返回1,代表程序异常结束

}

break;

default:

printf("错误:运算符不正确(仅支持+、-、*、/)\n");

return1;

}

printf("%.2f%c%.2f=%.2f\n",a,op,b,result);

return0;

}39.判断一个数是否能被3和5同时整除c

#include<stdio.h>

intmain(){

intnum;

printf("请输入一个整数:");

scanf("%d",&num);

//能被3和5同时整除→能被15整除

if(num%3==0&&num%5==0){

printf("%d能被3和5同时整除\n",num);

}else{

printf("%d不能被3和5同时整除\n",num);

}

return0;

}40.判断一个数是否是闰年(普通闰年和世纪闰年)c

#include<stdio.h>

intmain(){

intyear;

printf("请输入年份:");

scanf("%d",&year);

//闰年判断规则:

//1.普通闰年:能被4整除但不能被100整除

//2.世纪闰年:能被400整除

if((year%4==0&&year%100!=0)||(year%400==0)){

printf("%d年是闰年\n",year);

}else{

printf("%d年不是闰年\n",year);

}

return0;

}41.根据身高体重判断体型(BMI指数)c

#include<stdio.h>

intmain(){

floatheight,weight,bmi;

printf("请输入你的身高(米)和体重(千克)(用空格分隔):");

scanf("%f%f",&height,&weight);

bmi=weight/(height*height);//BMI公式:体重(kg)/身高(m)²

printf("你的BMI指数是:%.2f\n",bmi);

//根据BMI判断体型

if(bmi<18.5){

printf("偏瘦\n");

}elseif(bmi<24){

printf("正常\n");

}elseif(bmi<28){

printf("超重\n");

}else{

printf("肥胖\n");

}

return0;

}42.判断一个数是否是质数(素数,大于1且只能被1和自身整除)c

#include<stdio.h>

intmain(){

intnum,i,flag=1;//flag=1表示默认是质数,flag=0表示不是

printf("请输入一个大于1的整数:");

scanf("%d",&num);

if(num==2){

printf("%d是质数\n",num);

return0;

}

//循环判断:从2到num-1,看是否有能整除num的数

for(i=2;i<num;i++){

if(num%i==0){

flag=0;//找到能整除的数,不是质数

break;

}

}

if(flag==1){

printf("%d是质数\n",num);

}else{

printf("%d不是质数\n",num);

}

return0;

}43.嵌套if判断(判断一个数是否是正偶数且能被4整除)c

#include<stdio.h>

intmain(){

intnum;

printf("请输入一个整数:");

scanf("%d",&num);

if(num>0){

if(num%2==0){

if(num%4==0){

printf("%d是正偶数且能被4整除\n",num);

}else{

printf("%d是正偶数但不能被4整除\n",num);

}

}else{

printf("%d是正数但不是偶数\n",num);

}

}else{

printf("%d不是正数\n",num);

}

return0;

}44.switch-case判断(根据月份判断季节)c

#include<stdio.h>

intmain(){

intmonth;

printf("请输入月份(1-12):");

scanf("%d",&month);

switch(month){

case3:

case4:

case5:

printf("春季\n");

break;

case6:

case7:

case8:

printf("夏季\n");

break;

case9:

case10:

case11:

printf("秋季\n");

break;

case12:

case1:

case2:

printf("冬季\n");

break;

default:

printf("输入错误!请输入1-12之间的数字\n");

}

return0;

}45.if-else判断(判断输入的字符是大写字母、小写字母还是数字)c

#include<stdio.h>

intmain(){

charch;

printf("请输入一个字符:");

scanf("%c",&ch);

//大写字母:A-Z(ASCII码65-90)

if(ch>='A'&&ch<='Z'){

printf("%c是大写字母\n",ch);

}

//小写字母:a-z(ASCII码97-122)

elseif(ch>='a'&&ch<='z'){

printf("%c是小写字母\n",ch);

}

//数字:0-9(ASCII码48-57)

elseif(ch>='0'&&ch<='9'){

printf("%c是数字\n",ch);

}

else{

printf("%c是其他字符\n",ch);

}

return0;

}第四部分:循环结构(46-65个)——for、while、do-while说明:循环结构用于重复执行一段代码,重点掌握三种循环的区别、循环控制(break、continue),以及循环嵌套的使用。46.for循环(输出1-10的整数)c

#include<stdio.h>

intmain(){

inti;

//for循环格式:for(初始化;循环条件;循环后操作)

for(i=1;i<=10;i++){

printf("%d",i);//输出1-10,空格分隔

}

printf("\n");//换行

return0;

}47.for循环(输出10-1的整数,倒序)c

#include<stdio.h>

intmain(){

inti;

//倒序循环:初始化i=10,条件i>=1,每次i减1

for(i=10;i>=1;i--){

printf("%d",i);//输出10-1

}

printf("\n");

return0;

}48.for循环(计算1-10的和)c

#include<stdio.h>

intmain(){

inti,sum=0;//sum初始化为0,用于存储和

for(i=1;i<=10;i++){

sum+=i;//等价于sum=sum+i

}

printf("1-10的和是:%d\n",sum);//输出55

return0;

}49.for循环(计算1-100的偶数和)c

#include<stdio.h>

intmain(){

inti,sum=0;

//方法1:循环所有数,判断是否为偶数

for(i=1;i<=100;i++){

if(i%2==0){

sum+=i;

}

}

printf("1-100的偶数和是:%d\n",sum);//输出2550

return0;

}50.for循环(计算1-100的奇数和,优化版)c

#include<stdio.h>

intmain(){

inti,sum=0;

//方法2:直接循环奇数,减少判断(效率更高)

for(i=1;i<=100;i+=2){

sum+=i;

}

printf("1-100的奇数和是:%d\n",sum);//输出2500

return0;

}51.for循环(计算n的阶乘,n由用户输入)c

#include<stdio.h>

intmain(){

intn,i;

longlongfactorial=1;//阶乘结果可能很大,用longlong类型

printf("请输入一个正整数n:");

scanf("%d",&n);

for(i=1;i<=n;i++){

factorial*=i;//

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论