《基本语法备查》PPT课件.ppt

上传人:wuy****n92 文档编号:71073769 上传时间:2023-02-01 格式:PPT 页数:60 大小:304.50KB
返回 下载 相关 举报
《基本语法备查》PPT课件.ppt_第1页
第1页 / 共60页
《基本语法备查》PPT课件.ppt_第2页
第2页 / 共60页
点击查看更多>>
资源描述

《《基本语法备查》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《基本语法备查》PPT课件.ppt(60页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、C语言概念实习01 C语言基本语法备查(一)语言基本语法备查(一)VC环境的使用C程序基本结构C数据类型C语言中的输入与输出在VC下创建C语言源文件n创建工作区创建工作区nFile-New-”workspace”,输入工作区名字输入工作区名字n创建新工程创建新工程nFile-New-”Projects-Win 32 Console”Application,输入项目名字,并加入到工作区中输入项目名字,并加入到工作区中n创建创建C语言源文件语言源文件nFile-New-Files-”C+Source File”,输入输入文件名文件名(一定要加后缀一定要加后缀.c),并加入到项目中,并加入到项目中C

2、语言的基本结构s程序一程序一/*the first program*/*the first program*/main()main()printf(printf(“welcomewelcome”););C语言的基本结构语言的基本结构s程序程序二二/*another program*/*another program*/main()main()int a,b,m;int a,b,m;scanf(scanf(“%d%d%d%d”,&a,&b);,&a,&b);m=m=max(a,b);max(a,b);printf(printf(“较大数是:较大数是:%dn%dn”,m);,m);int max(

3、int x,int y)int max(int x,int y)int r;int r;if(x y)r=x;if(x y)r=x;else r=y;else r=y;return r;return r;输入:2 5 C C数数据据类类型型基本类型基本类型构造类型构造类型指针类型指针类型空类型空类型void定义类型定义类型typedef数值类型数值类型字符类型字符类型char枚举类型枚举类型enum整整 型型浮点型浮点型单精度型单精度型float双精度型双精度型double短整型短整型short长整型长整型long整型整型int数组数组结构体结构体struct共用体共用体unionC语言的数据

4、类型语言的数据类型运算符和表达式运算符和表达式C运运算算符符算术运算符:(算术运算符:(+-*/%+-+-*/%+-)关系运算符:(关系运算符:(=!=!=)逻辑运算符:(!逻辑运算符:(!&|&|)位运算符位运算符 :(:(|&|&)赋值运算符:(赋值运算符:(=)条件运算符:(条件运算符:(?:?:)逗号运算符:(逗号运算符:(,)指针运算符:(指针运算符:(*&)求字节数求字节数 :(:(sizeofsizeof)强制类型转换:(类型)强制类型转换:(类型)分量运算符:(分量运算符:(.-.-)下标运算符:(下标运算符:()其它其它 :(:(()-()-)C语言中的输入输出格式输出函数格

5、式输出函数-printf格式:printf(“格式控制串”,输出列表)数据类型数据类型关键字关键字修饰符修饰符输出示例输出示例整型整型int%dprintf(“%d”,a);printf(“%d%d%d”,x,y,z);长整型长整型long%ldprintf(“%ld”,b);printf(“%ld%ld”,d1,k2);字符型字符型char%cprintf(“%c”,ch);printf(“%c%c%c%c”,c1,c2,c3,c4);双精度浮点型双精度浮点型double%lfprintf(“%lf”,m);printf(“%lf%lf”),cm,cn);单精度浮点型单精度浮点型float%

6、fprintf(“%f”,f1);printf(“%f%f%f”,f1,f2,f3);不同数据类型变量的混合输出不同数据类型变量的混合输出printf(“%f%c%d%ld%lf”,f3,ch,x,k2,m);格式输出函数格式输出函数-printf格式:printf(“格式控制串”,输出列表)vprintf(“两个数为:两个数为:%d和和%d n”,a,b);例:设例:设a,b,c变量的值均已赋好,变量的值均已赋好,a=5,b=7,c=8要求屏幕要求屏幕 输出输出“三个数为:三个数为:5,7和和8,较大的为:,较大的为:8”。#include main()int a,b,c;a=5;b=7;c

7、=8;printf(“三个数为:三个数为:%d,%d和和%d,较大的为:,较大的为:%dn,a,b,c,c);练习:练习:将上题将上题a,b,c变成变成float类型变量,赋值类型变量,赋值分别为分别为 a=3.5,b=3.7,c=3.8应该如何修改?应该如何修改?main()int a,b,c;a=5;b=7;c=8;printf(“三个数为:三个数为:%d,%d和和%d,较大的为:,较大的为:%dn,a,b,c,c);float a=3.5;b=3.7;c=3.8;printf(“三个数为:三个数为:%f,%f和和%f,较大的为:,较大的为:%fn,a,b,c,c);格式格式:scanf(

8、:scanf(“格式控制串格式控制串”,地址表地址表)格式输入函数格式输入函数-scanf地址表:地址表:变量的地址,常用取地址运算符变量的地址,常用取地址运算符&格式修饰符:同格式修饰符:同printf函数的完全一致函数的完全一致scanf(“%d%d”,&a,&b);例:已知三个例:已知三个int类型变量类型变量a,b,c,从键盘输入它,从键盘输入它们的值分别为们的值分别为3,4,5,并且输出。,并且输出。#include main()int a,b,c;printf(请输入三个变量的值:请输入三个变量的值:n);scanf(%d%d%d,&a,&b,&c);printf(“三个数为:三个

9、数为:%d,%d和和%d n,a,b,c);练习:将上题练习:将上题a变成变成float类型类型,b,c变成变成char类型变量,从键盘分别输入类型变量,从键盘分别输入 3.5,A,B应该如何修改?应该如何修改?例题例题1#include main()double chang,kuan,zhouchang,mianji;chang=3.2;kuan=2.1;zhouchang=2*(chang+kuan);mianji=chang*kuan;printf(“周长是周长是%lf,面积是,面积是%lf”,zhouchang,mianji);已知长方形的长和宽分别是已知长方形的长和宽分别是3.2和和

10、2.1,求其周长和面积。,求其周长和面积。例题例题2#include main()double chang,kuan,zhouchang,mianji;printf(“请输入长:请输入长:”);scanf(“%lf”,&chang);printf(“请输入宽:请输入宽:”);scanf(“%lf”,&kuan);zhouchang=2*(chang+kuan);mianji=chang*kuan;printf(“周长是周长是%lf,面积是,面积是%lf”,zhouchang,mianji);从键盘输入长方形的长和宽,从键盘输入长方形的长和宽,然后求其周长和面积并输出。然后求其周长和面积并输出。

11、1、在屏幕上显示一句话、在屏幕上显示一句话 hello neusoft!2、在屏幕上显示、在屏幕上显示 *编写程序编写程序编写程序编写程序 3、已知圆的半径是、已知圆的半径是5.6,求其直径、,求其直径、周长、面积并输出;周长、面积并输出;4、从键盘输入圆的半径,求其直径、从键盘输入圆的半径,求其直径、周长、面积并输出;周长、面积并输出;5、求、求5位同学的位同学的c语言平均成绩。语言平均成绩。02 C语言基本语法备查(二)语言基本语法备查(二)选择结构选择结构-if,swichif,swich循环结构循环结构-for,whilefor,while课堂实践与讲解课堂实践与讲解 if 语句if语

12、句的三种形式语句的三种形式(1)if(表达式)(表达式)语句语句(2)if(表达式)(表达式)语句语句1 else 语句语句2(3)if-else if-else形式 if(表达式表达式1)语句语句1 else if(表达式表达式2)语句语句2 else if(表达式表达式m)语句语句m else 语句语句n例例1:从键盘输入一个整数,若整数是奇数,输出从键盘输入一个整数,若整数是奇数,输出“odd number!”;否则,输;否则,输出出“even number!”。#include#include main()定义变量定义变量a;输入一个整数的值;输入一个整数的值;判判断断a是否为偶数是否

13、为偶数如果如果a是奇数是奇数 输出输出“odd number!”否则否则 输出输出“even number!”;#include#includevoid root()int a;printf(“请输入一个整数请输入一个整数:”);scanf(“%d”,&a);if(a%2=1)printf(“odd number!”);else printf(“even number!”);输入一个整数的值(输入一个整数的值(a)编写程序编写程序 1、输入两个整数,输出其中的较大者。、输入两个整数,输出其中的较大者。2、从键盘输入一个百分制的成绩,要求、从键盘输入一个百分制的成绩,要求输出成绩等级。输出成绩等

14、级。90分及以上为分及以上为A,80-89分为分为B,70-79分为分为C,60-69分为分为D,60以下为以下为E。3、找出、找出5位同学中位同学中c语言成绩高于平均值的成绩。语言成绩高于平均值的成绩。判断判断2位同学位同学c语言成绩与平均成绩的比较结果。语言成绩与平均成绩的比较结果。main()int st1,st2;double avg;printf(请输入两位学生的请输入两位学生的C语言成绩:语言成绩:n);scanf(%d%d,&st1,&st2);avg=(st1+st2)/2.0;printf(平均成绩:平均成绩:%.2lfn,avg);if(st1avg)printf(st1成

15、绩为成绩为%d大于平均成绩大于平均成绩n,st1);else if(st1=avg)printf(st1成绩为成绩为%d等于平均成绩等于平均成绩n,st1);else printf(st1成绩为成绩为%d小于平均成绩小于平均成绩n,st1);if(st2avg)printf(st2成绩为成绩为%d大于平均成绩大于平均成绩n,st2);else if(st2=avg)printf(st2成绩为成绩为%d等于平均成绩等于平均成绩n,st2);else printf(st2成绩为成绩为%d小于平均成绩小于平均成绩n,st2);从键盘输入一个百分制的成绩,要求输出成绩等级。从键盘输入一个百分制的成绩,

16、要求输出成绩等级。80分及以上为分及以上为A,60-79分为分为B,60以下为以下为C。main()int core;printf(请输入一个百分制的成绩请输入一个百分制的成绩:n);scanf(%d,&core);if(core100|core=80)printf(A n);else if(core=60)printf(B n);else printf(C n);switch 语句switch语句是实现多个分支的选择语句语句是实现多个分支的选择语句switch (switch (表达式表达式)case case 常量表达式常量表达式 1 1:语句:语句1 1 case case 常量表达式常

17、量表达式 2 2:语句:语句2 2 case case 常量表达式常量表达式 n n:语句:语句n n default default :语句:语句n+1n+1 switch语句的执行语句的执行入口:入口:v如果表达式的值与某一个如果表达式的值与某一个case后边的常量表达式相等,后边的常量表达式相等,就从这个就从这个case开始,依次执行其后边的每条语句开始,依次执行其后边的每条语句v如果所有的如果所有的case语句都不匹配时,就从语句都不匹配时,就从default开始,开始,依次执行依次执行default后边的每条语句后边的每条语句出口出口v如执行到如执行到break语句,跳出整个语句,跳

18、出整个switch语句语句v如没有遇到如没有遇到break语句,则整个语句,则整个switch的语句执行完的语句执行完毕后跳出毕后跳出switch语句语句switch 语句语句main()int i=2;switch(i)case 0:printf(i=0);break;case 1:printf(i=1);break;case 2:printf(i=2);break;case 3:printf(i=3);break;default:printf(default);结果:结果:i=2switch 语句语句-例题例题编写程序编写程序 1、从键盘输入一个百分制的成绩,要求输出成绩等级。、从键盘输入

19、一个百分制的成绩,要求输出成绩等级。90分及以上为分及以上为A,80-89分为分为B,70-79分为分为C,60-69分为分为D,60以下为以下为E。要求用要求用switch语句语句 实现。实现。要求:要求:1 要有容错机制(有效输入为要有容错机制(有效输入为0100)2 界面要求尽可能友好界面要求尽可能友好while语句语句whilewhile语句语句while(表达式表达式e1)语句语句s1;s1;e1 真真假假例题例题:求求s=1+2+3+10;s=s+ii=i+1s=0,i=1输出s当当i=10时,循时,循环执行环执行这两条这两条语句语句 i=10s=s+i;i=i+1;解决该问题的解

20、决该问题的N-S图图 定义变量定义变量i,s;i=1,s=0;输出输出s的值的值 例题例题:求求s=1+2+3+10;main()int i,s;/定义循环变量定义循环变量i和累加变量和累加变量si=1;/循环变量赋初始值循环变量赋初始值s=0;/累加变量根据实际赋初始值累加变量根据实际赋初始值 while(i=10)/i从从1变到变到10(即当即当i=10都需要循环都需要循环)s+=i;/累加累加i+;/循环变量改变值循环变量改变值printf(“s=%d”,s);循环结构的三个要素:循环结构的三个要素:1、循环条件:循环条件:循环结构中的条件表达式如循环结构中的条件表达式如while(i=

21、10)其中,其中,i=10就是循环条件。就是循环条件。2、循环体:循环体:在每个循环周期均要执行一次的语在每个循环周期均要执行一次的语句序列。如句序列。如while下用下用 括起来的语句序列。括起来的语句序列。3、循环变量:循环变量:能够决定控制条件是真是假的量,能够决定控制条件是真是假的量,如上例中的变量如上例中的变量i。一般来说,在循环体中要一般来说,在循环体中要有改变循环变量的语句,使得循环条件可以有改变循环变量的语句,使得循环条件可以为假,即循环可以结束而不是无限循环(死为假,即循环可以结束而不是无限循环(死循环)。循环)。while语句语句编写程序编写程序1、求、求11000内所有能

22、被内所有能被3整除的整数。整除的整数。2、从键盘上接收、从键盘上接收10个数,求和。要求:个数,求和。要求:(1)、先提示)、先提示“请输入第请输入第1个数:个数:”,输入第一,输入第一个数后再提示个数后再提示“请输入第请输入第2个数个数”,依次类推;,依次类推;(2)、输入完十个数后,输出十个数求和的结果。)、输入完十个数后,输出十个数求和的结果。3、求出、求出5位同学的平均位同学的平均c语言成绩。语言成绩。要求:要求:(1)先提示)先提示“请输入第请输入第1个学生的成绩:个学生的成绩:”,输,输入第一个数后再提示入第一个数后再提示“请输入第请输入第2个学生的成绩个学生的成绩”,依次类推;依

23、次类推;(2)输入完五个数后,再进行计算)输入完五个数后,再进行计算for语句forfor语句语句语法:语法:for(e1;e2;e3)语句语句s1;语法上要求语法上要求s1是一条语句,是一条语句,若有多条语句,必须用若有多条语句,必须用 ,使之成为一条复合语句,从使之成为一条复合语句,从而满足语法要求。而满足语法要求。e2 e1;真真假假e3;s1;for语句执行流程语句执行流程main()int i,s;s=0;for(i=1;i=100;i+)s+=i;/循环体循环体 printf(“s=%d”,s);例题:求例题:求s=1+2+3+100;用用for语句语句实现。实现。例题:输出例题:

24、输出11000内所有能被内所有能被7整除的整数。整除的整数。for语句实现语句实现#include main()int i;for(i=1;i=1000;i+)if(i%7=0)printf(“%4d”,i);printf(“game overn”);例题:输出例题:输出11000内所有能被内所有能被7整除整除的整数。的整数。while实现实现main()int i;i=1;/初始化循环变量初始化循环变量,只执行一次只执行一次 while(i=1000)/循环条件循环条件if(i%7=0)/循环体循环体printf(“%4d”,i);i+;/每次执行循环体后,修改循环变量每次执行循环体后,修改

25、循环变量 printf(“game over”);编写程序编写程序 1、顺序输出、顺序输出az;2、顺序输出、顺序输出ZA;3、求、求n!,!,n从键盘输入。从键盘输入。顺序输出顺序输出az;#include main()char ch=a;for(ch=a;ch=z;ch+)printf(%4c,ch);求求n!,!,n从键盘输入。从键盘输入。#include main()int n,i,res=1 ;printf(请输入一个整数请输入一个整数n:);scanf(%d,&n);for(i=1;i=n;i+)res=res*i;printf(%d,res);编写程序编写程序求出求出n位同学的平

26、均位同学的平均c语言成绩语言成绩及学生数量。及学生数量。要求:要求:(1)先提示)先提示“请输入第请输入第1个学生的成绩:个学生的成绩:”,输入第一个数后再提示,输入第一个数后再提示“请输入第请输入第2个学生的成绩个学生的成绩”,依次类推;,依次类推;(2)直到输入)直到输入-1后,再进行计算后,再进行计算(3)程序输入具有一定的容错机制)程序输入具有一定的容错机制(0100),但是不影响程序的执行),但是不影响程序的执行多重循环多重循环循环的嵌套循环的嵌套假设外循共循环假设外循共循环m次,内循环共循环次,内循环共循环n次,次,则:则:n 内外循环用到的循环变量名不能相同内外循环用到的循环变量

27、名不能相同n 外循环每循环外循环每循环1次,内循环需要完成整个次,内循环需要完成整个n次循环次循环n 内循环的循环体共执行内循环的循环体共执行mn次次main()int i,j;for(i=1;i=2;i+)for(j=1;j=3;j+)printf(i=%d,j=%d n,i,j);666666666666666666666666main()int i,j;int n;printf(请输入行数:请输入行数:n);scanf(%d,&n);for(i=1;i=n;i+)for(j=1;j=6;j+)printf(6);printf(n);main()int i,j;int n,m;printf

28、(请输入行数:请输入行数:n);scanf(%d,&n);printf(请输入列数:请输入列数:n);scanf(%d,&m);for(i=1;i=n;i+)for(j=1;j=m;j+)printf(6);printf(n);输出输出n行行m列列”6”main()int i,j;int n,m;while(1)printf(请输入行数:请输入行数:n);scanf(%d,&n);printf(请输入列数:请输入列数:n);scanf(%d,&m);for(i=1;i=n;i+)for(j=1;j=m;j+)printf(6);printf(n);循环输出循环输出n行行m列列”6”例题:例题:

29、在屏幕上输出如下图形:在屏幕上输出如下图形:122333444455555666666.其中行数由键盘输入。其中行数由键盘输入。程序参考程序参考#include main()int i,n,j;printf(“input n:”);scanf(“%d”,&n);for(i=1;i=n;i+)for(j=1;j=i;j+)printf(“%d”,i);printf(“n”);printf(“game over!”);在屏幕上输出如下图形:在屏幕上输出如下图形:*其中行数由键盘输入。其中行数由键盘输入。1121231234.在屏幕上输出如下图形:在屏幕上输出如下图形:1*1=1 1*2=2 2*2

30、=4 1*3=3 2*3=6 3*3=9 1*4=4 2*4=8 3*4=12 4*4=16 1*5=5 2*5=10 3*5=15 4*5=20 5*5=25 1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36 1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49 1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=24 7*8=56 8*8=64 1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=36 7*9=63 8*9=72 9*9=81鸡兔共有鸡兔共有30只,脚共

31、有只,脚共有90只,只,编程求鸡兔各有多少只?编程求鸡兔各有多少只?main()/第第i行输出行输出i个个iint i,j,n;printf(请输入行数请输入行数:);scanf(%d,&n);for(i=1;i=n;i+)for(j=1;j=i;j+)printf(“*);printf(n);在屏幕上输出如下图形:在屏幕上输出如下图形:*其中行数由键盘输入。其中行数由键盘输入。编写程序编写程序 在屏幕上输出如下图形:在屏幕上输出如下图形:1*1=1 1*2=2 2*2=4 1*3=3 2*3=6 3*3=9 1*4=4 2*4=8 3*4=12 4*4=16 1*5=5 2*5=10 3*5

32、=15 4*5=20 5*5=25 1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36 1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49 1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=24 7*8=56 8*8=64 1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=36 7*9=63 8*9=72 9*9=81main()/第第i行输出行输出i组组 1i *iint i,j;for(i=1;i=9;i+)for(j=1;j=i;j+)printf(%d*%d=%2d ,j,i,i*j);printf(n);main()int i,j;for(i=1;i=30;i+)for(j=1;j=30;j+)if(2*i+4*j)=90&(i+j)=30)printf(共有鸡共有鸡%d只,兔子只,兔子%d只只n,i,j);鸡兔共有鸡兔共有30只,脚共有只,脚共有90只,只,编程求鸡兔各有多少只?编程求鸡兔各有多少只?

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com