C语言2顺序结构例题总结及练习.docx

上传人:b****0 文档编号:17839600 上传时间:2023-08-04 格式:DOCX 页数:19 大小:23.14KB
下载 相关 举报
C语言2顺序结构例题总结及练习.docx_第1页
第1页 / 共19页
C语言2顺序结构例题总结及练习.docx_第2页
第2页 / 共19页
C语言2顺序结构例题总结及练习.docx_第3页
第3页 / 共19页
C语言2顺序结构例题总结及练习.docx_第4页
第4页 / 共19页
C语言2顺序结构例题总结及练习.docx_第5页
第5页 / 共19页
C语言2顺序结构例题总结及练习.docx_第6页
第6页 / 共19页
C语言2顺序结构例题总结及练习.docx_第7页
第7页 / 共19页
C语言2顺序结构例题总结及练习.docx_第8页
第8页 / 共19页
C语言2顺序结构例题总结及练习.docx_第9页
第9页 / 共19页
C语言2顺序结构例题总结及练习.docx_第10页
第10页 / 共19页
C语言2顺序结构例题总结及练习.docx_第11页
第11页 / 共19页
C语言2顺序结构例题总结及练习.docx_第12页
第12页 / 共19页
C语言2顺序结构例题总结及练习.docx_第13页
第13页 / 共19页
C语言2顺序结构例题总结及练习.docx_第14页
第14页 / 共19页
C语言2顺序结构例题总结及练习.docx_第15页
第15页 / 共19页
C语言2顺序结构例题总结及练习.docx_第16页
第16页 / 共19页
C语言2顺序结构例题总结及练习.docx_第17页
第17页 / 共19页
C语言2顺序结构例题总结及练习.docx_第18页
第18页 / 共19页
C语言2顺序结构例题总结及练习.docx_第19页
第19页 / 共19页
亲,该文档总共19页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

C语言2顺序结构例题总结及练习.docx

《C语言2顺序结构例题总结及练习.docx》由会员分享,可在线阅读,更多相关《C语言2顺序结构例题总结及练习.docx(19页珍藏版)》请在冰点文库上搜索。

C语言2顺序结构例题总结及练习.docx

C语言2顺序结构例题总结及练习

C语言—2.顺序结构

序号:

学习内容与目标:

顺序结构

■数据类型

■标识符、常量与变量

■数据输入/输出处理

■运算符与表达式

■顺序结构程序设计

第2章顺序结构流程及应用——知识小结

知识点

知识细节或者格式

示例

字符、标识符关键字

基本字符:

英文字符、数字、其它可显示字符

0-9,a-z,A-Z,+-/*%&

特殊符号:

空格、回车换行、制表符

标识符:

标识变量、常量、函数的符号

Sum,total,i

关键字:

系统留用的标识符

If,for,while,do,int,long

常用

数据类型

整型:

int,short,long,unsigned

inta,b,c

实型:

float,double

floatf1,f2

字符型:

char

charc1,c2

常量

变量

常量:

程序运行过程中始终不变的量,直接常量可以直接使用,符号常量必须先定义后使用

直接常量:

1,200,3500,0x12,835.6,77.2,0.618,‘a’,‘A’,‘$’,“Hello”,“Welcome”

符号常量:

#definePI3.14159

变量:

程序运行过程中可变的量,变量必须先定义,后使用

inta,b,c

a=1;

运算符

表达式

算术运算符:

+,-,*,/,%

关系运算符:

>,<,>=,<=,==,!

=

逻辑运算符:

&&,||,!

赋值运算符:

=,+=,-=,*=,/=

自增/减运算符:

++,--

a+1,i%2

x>=0,y%100!

=0

x>=0&&x<=100

sum+=i

i++

表达式:

用运算符将变量、常量、函数、表达式连接起来所构成的式子

注意:

1)运算的操作数:

单还是双

2)运算的优先级别与结合性:

先算什么,后算什么

3)运算结果的取值范围:

整数、实数、0和1

程序结构

顺序结构:

无条件按语句排列的先后顺序执行的程序结构;

选择结构:

有条件地选择需要执行的语句;

循环结构:

根据一定条件重复执行指定语句

顺序结构的特点:

1)一条直路;

2)无岔路;

3)无环路;

4)关注动作的先后次序

例题

Ex201

用编程的形式打印学生入学的姓名,性别,年龄,学号和入学成绩

/***************************************************

问题2.2(第25页):

学生入学数据保存

知识点说明:

1)printf函数:

用于屏幕输出信息;

2)字符串:

用双引号作定界符的一串字符;

3)\n:

转义字符(参考第24页表2-3),换行符;

4)格式化输出:

(格式控制,输出项列表)

-%d输出项以十进制整数格式输出;

-要点:

格式项要与输出项一一对应

****************************************************/

#include"stdio.h"

voidmain()

{

intiAge=20,iNum=201;/*变量定义及初始化*/

charchSex='m';/*f:

female(女);m:

male(男)*/

floatfScore,fMoney;

fScore=580.5;/*变量赋值*/

printf("Tony'spersonalinformation\n");/*屏幕输出:

Tony'spersonalinformation,然后换行*/

printf("Name:

Tony\n");

printf("ID:

%d\n",iNum);/*屏幕格式化输出:

ID:

201*/

printf("Age:

%d\nSex:

%c\nScore:

%f\n",iAge,chSex,fScore);/*屏幕格式化输出,年龄的信息*/

getch();

}

Ex202

转义字符输出演示

/***************************************************

问题2.3(第26页):

转义字符输出

知识点说明:

1)转义字符:

第24页表2-3列出各种转义字符的说明;

2)\t:

后续输出的内容从下一个制表位开始;

3)\n:

后续输出的内容从下一行开始(换行)

****************************************************/

#include"stdio.h"

voidmain()

{

charch1,ch2,ch3;

ch1='n';/*字符变量赋

值,单字符数据用单引号作定界符*/

ch2='e';

ch3='\167';/*八进制数167代表的字符w*/

printf("%c%c%c\n",ch1,ch2,ch3);/*以字符格式输出*/

printf("%c\t%c\t%c\n",ch1,ch2,ch3);/*应用转义字符\t*/

printf("%c\n%c\n%c\n",ch1,ch2,ch3);/*应用转义字符\n*/

getch();

}

Ex203

计算tom上半年与下半年奖学金之和

/***************************************************

问题2.4(第27页):

格式化输入

知识点说明:

1)scanf()函数:

用于接收键盘输入数据,(格式控制,输入项地址列表)

-格式控制,控制输入项的格式;

-输入项地址列表,指定输入的内容存放到何处;

-输入数据时,数据项之间,通过按空格键或回车键来分隔

2)&:

地址运算符

****************************************************/

#include"stdio.h"

voidmain()

{

intiPrize1,iPrize2,iSum;

printf("Pleaseinputtwoprizes:

");

scanf("%d%d",&iPrize1,&iPrize2);/*格式输入两项数据*/

iSum=iPrize1+iPrize2;

printf("Tom'sprizeis%d",iSum);

getch();

}

Ex204

/***************************************************

问题2.5(第28页):

单字符输入输出

知识点说明:

1)getchar()函数:

用于接收键盘输入的一个字符;

2)putchar(ch)函数:

用于显示输出一个字符;

****************************************************/

#include"stdio.h"

voidmain()

{

charch;

printf("从键盘输入一个小写字母");

ch=getchar();/*从键盘接收一个小写字母*/

ch=ch-32;/*小写字母转换为大写字母*/

putchar(ch);/*输出大写字母*/

getch();

}

Ex205

输入一个数,求该数个位,十位,百位上的数之和

/***************************************************

问题2.6(第31页):

3位数,数位求和

知识点说明:

1)%求模(求余)运算,两整数相除,求余数

2)/除法运算,整数相除,结果为整数,实数相除,结果为double型数

举例:

123

1)123%10123除以10的余数为3(个位);

2)123/10123除以10商为12;

3)123/10%1012除以10的余数为2(十位);

4)123/100123除以100商为1(百位)

****************************************************/

#include"stdio.h"

voidmain()

{intiNum;

inti1,i2,i3,iSum;

printf("pleaseinputainteger(100-999):

");

scanf("%d",&iNum);

i1=iNum%10;/*求个位数*/

i2=iNum/10%10;/*求十位数*/

i3=iNum/100;/*求百位数*/

iSum=i1+i2+i3;

printf("Thesumis:

%d",iSum);

getch();

}

Ex206

/***************************************************

问题2.7(第32页):

计算球体体积

知识点说明:

1)define符号常量定义

2)float浮点型,用于存实数数据

****************************************************/

#include"stdio.h"

#definePAI3.1415926/*定义符号常量PAI*/

voidmain()

{

floatfRadius,fVolume;/*定义浮点变量*/

printf("pleaseinputtheball'sradius:

");

scanf("%f",&fRadius);/*输入一个浮点格式的数*/

fVolume=(float)4/3*PAI*fRadius*fRadius*fRadius;/*将整数4强制转换为浮点型数4.0*/

printf("Theball'svolume:

%f",fVolume);

getch();

}

Ex207

自增自减运算符的运用

/***************************************************

问题2.8(第33页):

自增自减运算

知识点说明:

1)iY=iX++*4:

相当于iY=iX*4;iX=iX+1;

2)iY=++iX*4;相当于iX=iX+1;iY=iX*4;

3)自增自减运算

****************************************************/

#include"stdio.h"

voidmain()

{intiX,iY;

iX=2;

iY=iX++*4;/*先做*运算,后做=运算,再做++运算*/

printf("iX=%d,iY=%d\n",iX,iY);

iX=2;

iY=iX--*4;

printf("iX=%d,iY=%d\n",iX,iY);

iX=2;

iY=++iX*4;/*先做++运算,后做*运算,再做=运算*/

printf("iX=%d,iY=%d\n",iX,iY);

iX=2;

iY=--iX*4;

printf("iX=%d,iY=%d\n",iX,iY);

getch();

}

Ex208

函数法F(X)=3*x^3+2*x^2+x+1

/***************************************************

问题2.9(第34页):

求函数值

知识点说明:

1)数学多项式的表达:

用算术表达式

2)运算符的结合性:

同优先级的运算符,必须按结合性顺序运算

例:

表达式3*iX*iX*iX+2*iX*iX+iX+1按运算优先级和结合性可以写成:

(((((3*iX)*iX)*iX)+((2*iX)*iX))+iX)+1

****************************************************/

#include"stdio.h"

voidmain()

{intiX,iY;

printf("请输入自变量值:

");

scanf("%d",&iX);

iY=3*iX*iX*iX+2*iX*iX+iX+1;/*用算术表达式表示函数中的多项式*/

printf("函数值是:

%d",iY);

getch();

}

Ex209

赋值运算符和赋值表达式用法演示

/***************************************************

问题2.10(第36页):

赋值运算符和赋值表达式

知识点说明:

1)要注意赋值运算符的结合性:

从右到左结合;

例:

1)iY=iX=2*iA+6;按运算优先级和结合性可以写成:

iY=(iX=(2*iA+6));

2)iC=iB=iA=4;可以写成:

iC=(iB=(iA=4));

注:

()也是运算符,而且其优先级最高,所以运算时要

“先算括号内的,再算括号外的”

****************************************************/

#include"stdio.h"

voidmain()

{intiA,iB,iC,iX,iY;

iA=2;

iY=iX=2*iA+6;

printf("\niA=%d",iA);/*输出赋值表达式iA的值*/

printf("\niX=2*iA+6is%d",iX=2*iA+6);/*输出赋值表达式iX=2*iA+6的值*/

printf("\niY=%d",iY);/*输出变量iY的值*/

iC=iB=iA=4;/*表达式iB=iA=4赋给iC*/

printf("\niB=iA=4is%d",iB=iA=4);/*输出表达式iB=iA=4的值*/

printf("\niA=%d,iB=%d,iC=%d",iA,iB,iC);/*输出变量iA,iB,iC的值*/

getch();

}

Ex210

逗号运算符和逗号表达式用法演示

/***************************************************

问题2.11(第36页):

逗号运算符和逗号表达式

知识点说明:

1)格式:

表达式,表达式,......,表达式

2)运算优先级:

最低

3)运算结合性:

从左到右

****************************************************/

#include"stdio.h"

voidmain()

{intiA=2,iB=3;

intiX,iY;

floatfC;

iX=(iA*2+1,iY=iB+2,iA*iY);/*iX取得的值为表达式iA*iY的值*/

fC=(iA+5,2.0*iX);/*fC取得的值为表达式2.0*iX的值*/

printf("iX=%d,iY=%d\n",iX,iY);

printf("fC=%f\n",fC);

getch();

}

Ex211

/***************************************************

问题2.12(第39页):

温度转换,将华氏温度转换为摄氏温度

知识点说明:

1)变量定义;

2)格式输入scanf函数;

3)算术表达式与赋值语句;

4)摄氏温度=5/9(华氏温度-32)

****************************************************/

#include"stdio.h"

voidmain()

{floatfF,fC;

printf("PleaseinputthedegreesFahrengeit:

");

scanf("%f",&fF);

fC=5.0/9*(fF-32);

printf("ThedegreesCelsiusis%f\n",fC);

getch();

}

Ex212

/***************************************************

问题2.13(第39页):

变量交换,交换两个变量的值。

知识点说明:

1)变量定义;

2)格式输出printf函数;

3)赋值语句

****************************************************/

#include"stdio.h"

voidmain()

{intiX,iY;

intiTemp;

iX=1,iY=2;/*2个变量分别赋值*/

printf("iX=%d,iY=%d\n",iX,iY);/*显示2个变量的值*/

iTemp=iX;/*以下3句进行变量值得交换*/

iX=iY;

iY=iTemp;

printf("iX=%d,iY=%d\n",iX,iY);

getch();

}

Ex213

/***********************************

Function:

自增、自减、复合赋值运算的应用

1)a++

2)a--

3)a+=2

************************************/

#include"stdio.h"

#include"conio.h"

#include"math.h"

main()

{

inta=5;

intb,c,d;

floatx1,x2;

printf("before,ais:

%d\n",a);

a++;

/*a--;

a+=2;*/

printf("after,ais:

%d",a);

getch();

}

学习过程

任务1(P201.c):

已知圆的半径为5,求该圆的周长和面积。

任务2(P202.c):

输入两个数,求它们的和、差、积、商以及余数。

任务3(P203.c):

从键盘上输入一个4位数,求该数个位、十位、百位、千位上的数的和。

任务4(P204.c):

输入三个实数a,b,c(满足a≠0且b2-4ac≥0),解一元二次方程ax2+bx+c=0。

注:

1)求根公式:

2)平方根函数sqrt(),头文件math.h

任务5(P205.c):

从键盘上输入一个小写字母,将其本身及相对应的大写字母输出。

有2种方法将小写字母转换为大写字母:

1)用toupper(c)函数,加头文件string.h;

2)或者,利用字母的ASCII编码大小关系,例如:

大写A的编码是65,小写a是97。

任务6(P206.c):

发工资现金2187元,用100元、50元、20元、10元、5元和1元的票子,问各多少张?

 

答案:

P201

#include"stdio.h"

intmain()

{

intiNum,r=5,c,s;

printf("r=%d\nc=%f\ns=%f",5,2*3.14*r,3.14*r*r);

getch();

}

P202

#include"stdio.h"

voidmain()

{

inta,b,A,B,C,D;

printf("Pleaseinputab:

");

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

A=a+b;

B=a-b;

C=a*b;

D=a%b;

printf("a+b=%d\t,\na-b=%d\t,\na*b=%d\t,\na8Yb=%d\t",A,B,C,D);/*为使模运算‘%‘不被%d干扰,改为8Y;*/

getch();

}

P203

#include"stdio.h"

voidmain()

{

intiNum;

inti1,i2,i3,i4,iSum;

printf("pleaseinputainteger(1000-9999):

");

scanf("%d",&iNum);

i1=iNum%10;

i2=iNum/10%10;

i3=iNum/100%10;

i4=iNum/1000;

iSum=i1+i2+i3+i4;

printf("thesumis:

%d",iSum);

getch();

}

P203

#include"stdio.h"

#include"math.h"

voidmain()

{inta,b,c;

floatx1,x2;

printf("pleaseenter3nombers");

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

x1=(-b+sqrt(b^2-4*a*c))/(2*a);

x2=(-b-sqrt(b^2-4*a*c))/(2*a);

printf("%f%f",x1,x2);

getch();

}

P204

#include"stdio.h"

#include"math.h"

voidmain()

{inta,b,c;

floatx1,x2;

printf("pleaseenter3nombers");

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

x1=(-b+sqrt(b*b-4*a*c))/(2*a);

x2=(-b-sqrt(b*b-4*a*c))/(2*a);

printf("%f%f",x1,x2);

getch();

}

P205

#include"stdio.h"

voidmain()

{chars;

printf("pleaseenteranecharacteramonys-z:

");

s=getchar();

s=s-32;

printf("%c",s);

getchar();

getch();

}

P206

1:

#include"stdio.h"

#include"conio.h"

main()

{inta,b,c,d,e,f;

a=2187/100;

b=2187%100/50;

c=2187%100%50/20;

d=2187%100%50%20/10;

e=2187%100%50%20%10/5;

f=2187%100%50%20%10%5/1;

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

getch();

}

2

#include"stdio.h"

#include"conio.h"

voidmain()

{inta,b,c,d,e,f,k1,k2,k3,k4,k5;

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2