C课堂讲稿_c课堂讲稿
C课堂讲稿由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“c课堂讲稿”。
黄朝辉
*** 2011-2-21讲稿
一、为什么学习编程
1、计算机基本组成运算器、控制器、存储器、输入/出
运算器:专门对二进制数据进行运算的场所
算术运算/逻辑运算
ALU
存储器:存放原始数据/结果/程序的场所
存储器分成很多个“小房间”,存储单元
存放在存储单元中的数据以二进制形式
二进制位(Bit)为存储器的最小单位
8位二进制称为1个字节(Byte)
字节是容量的基本单位
例:有一存储器有16个存储单元,每个单元是
8位二进制位,该存储器容量?16B
1KB=1024B
1MB=1024KB 1GB=1024MB 存储器中的每个存储单元有各自的地址 称为存储单元地址
控制器:分析每条指令、严格按照指令的要求
自动发出各种控制信号,控制计算机各
部件协调工作
2、计算机基本工作原理
想像一个正规加工厂生产新产品的基本过程:
1)请技术人员设计新产品
2)请技术人员写出生产该新产品的生产步骤
(只是书面材料)2011-02-25讲稿 6+7
(1)把6从存—》运
(2)把7从存—》运
(3)进行“加”运算
(4)把结果—》存 指令
程序 软件
由人编写出程序、存储程序、程序控制
CPU: Intel: 计算机存储器分为内存与外存 CPU只与内存交换数据 外存数据以成批形式与内存交换 外存:软磁盘、硬盘、光盘、U盘
内存:ROM、RAM(断电后信息丢失)软件分为系统软件和应用软件
系统软件中有一重要软件:操作系统
二、计算机语言
1101 0110
1101 0111
1111
1100 #0101 机器语言程序 汇编语言程序
LD 06H
LD 07H
ADD
SAVE #05H 高级语言程序
Let a=6 Let b=7 Let c=a+b Print c End
2011-02-28讲稿
一、语言处理程序(解释/编译)
二、简单C语言程序介绍 例: main(){int a,b,c;a=6;b=7;c=a+b;printf(“%d”,c);} 基本术语:
main()函数、函数体、语句、语句的结束标示
三、如何用TC编辑/运行C源程序
四、基本数据类型
整型、实型、字符型 如:整型:12、75、-
9、0 实型:6.5、7.23、0.0000000625 6.25E-8 字符型:以单撇号为定界的一个字符: 如:’a’、’P’
如:”a”、’ak’均是无效
五、计算机中的数的表示:
1、无符号数
(57)10=(00111001)22、有符号数
约定:对于有符号数,最高位作为符号位
“+”用“0”代表
“-”用“1”代表
这种方法表示的数称为机器数 机器数所对应的实际值称为真值
3、机器数的表示方法有三种编码表示“ 1)原码:其实就是机器数的编码表示 2)反码:正数的反码与原码一样
负数的反码是在其原码基础上,符号位
不变,数值位逐位求反 3)补码:正数的补码与原码是一样的负数的补码是在其反码基础上,最低位
+1得到
(+57)10=(00111001)2(+57)10=(+00111001)2
=(00111001)机器数 =(00111001)原 =(00111001)反 =(00111001)补(-57)10=(00111001)2(-57)10=(-00111001)2
=(10111001)机器数 =(10111001)原 =(11000110)反 =(11000111)补 已知补码,如何求原码
六、对于8位的二进制,表示的数的范围
无符号数:0-255 有符号数:原码:-127--+127
反码:-127--+127
补码:-128--+127
七、为什么C语言在函数体的开始部分需要进行数据类型定义
整型:int
实型:float
double
字符型:char 例: main(){int a,b,c;a=6;b=7;c=a+b;printf(“%dn”,c);} 例: main(){int a,b,c;a=32755;b=258;c=a+b;/* 有问题? printf(“%dn”,c);} 例: main(){long a,b,c;a=32755;b=258;c=a+b;/* 有问题? printf(“%dn”,c);} 例: main(){long a,b,c;a=6;b=7;c=a+b;printf(“%dn”,c);}
作业:
1、求23+782、求95-573、求22*1034、求123/56 main(){int a,b;float c;
*/ */ a=123;b=56;c=a/b;printf(“%dn”,c);} 2011-03-02讲稿
一、常量与变量
1、常量:
整型:
6、13
实型:3.2、6.25E12
字符型:’a’、’K’
2、变量: 例: main(){int a,b,c;a=6;b=7;c=a+b;a=29;printf(“%dn”,c);}
变量名:命名规则以字母或下划线开头,后续字母、数字或下划线
如:a b c
x
_x
x8 正确
8x x.7 错误
变量在使用之间要先定义,后使用
变量的值以后入为主
定义注意事项: 例: main(){int a b,c;/* error */ a=6;b=7;c=a+b;printf(“%dn”,c);} 例: main(){int a;b;c;/* error */ a=6;b=7;c=a+b;printf(“%dn”,c);}
另:若一行语句简短,可在一行中书写多条语句 例: main(){int a,b,c;a=6;b=7;c=a+b;printf(“%dn”,c);} 2011-03-07讲稿
一、如何给变量赋初值
1、在定义变量的同时,给部分变量赋具体值(初
始化)如: main(){int a,b,c;a=23;b=56;c=a+b;„„ } 如: main(){int a=23,b,c;b=56;c=a+b;„„ } 如: main(){int a=23,b=56,c=a+b;/* error */ „„ } 如: main(){int a=b=15,c;/* error */ c=a+b;„„ }
2、利用赋值号
格式: 变量名=具体值或表达式 如:
a=16 执行功能:将赋值号右侧的数赋予左侧的变量;
若赋值号右侧是具体值,则直接赋值;
若赋值号右侧是表达式,则先算表达式的值,再赋值;
若赋值号右侧表达式中出现变量,则在此之
前,该变量应有具体值 如:
a=23+48 如:
a=10;
c=a+15;如:
x=12;
x=x+1;注意事项:1)赋值号左侧只能是唯一的变量 如: x=45
a+b=18
/* error */ 2)赋值号非等号
二、初学者如何编写程序
找出主要解决的问题(直奔主题)例: main(){int a,b,c;a=23;b=46;c=a+b;printf(“%dn”,c);}
例: main(){int a,b,c;c=a+b;a=23;b=46;printf(“%dn”,c);} 例:若一用户当月的用水量为20吨,按单价为1.2
元/吨计,该用户应缴多少? main(){float t,d,s;t=20;d=1.2;s=t*d;printf(“%fn”,s);} 例:若当天的气温为110华氏,求对应的摄氏。main(){float f,c;f=110;c=5/9*(f-32);printf(“%fn”,c);} 例:若一圆半径为1.3,求该圆的周长、面积,以及对
应的球体的体积。
方法一:∏这一符号程序设计中无法识别,直接写出
具体值 main(){float r,l,s,v;r=1.3;l=2*3.141592*r;s=3.141592*r*r;v=4/3*3.141592*r*r*r;printf(“%fn”,l);printf(“%fn”,s);printf(“%fn”,v);} 方法二:∏这一符号程序设计中无法识别,再用一变量
存放 main(){float r,l,s,v,p;p=3.141592;r=1.3;l=2*p*r;s=p*r*r;v=4/3*p*r*r*r;printf(“%fn”,l);printf(“%fn”,s);printf(“%fn”,v);} 方法三:∏这一符号程序设计中无法识别,利用符号常量
表示
#define P 3.141592 main(){float r,l,s,v;r=1.3;l=2*P*r;s=P*r*r;v=4/3*P*r*r*r;printf(“%fn”,l);printf(“%fn”,s);printf(“%fn”,v);}
三、输出函数printf()格式:printf(格式控制,输出项表)格式控制符:
%d
%f
%c %d:以整型数据的实际宽度输出 %5d:占5个宽度,不足前补空格
如:
a=26;printf(“%5dn”,a);%-5d:占5个宽度,不足后补空格 例:
a=23;b=75;printf(“%dn”,a);printf(“%dn”,b);例:
a=23;b=75;printf(“%d%dn”,a,b);例:
a=23;b=75;printf(“%5d%5dn”,a,b);非格式控制符原样输出 例:
a=23;b=75;printf(“a=%d,b=%dn”,a,b);例:
#define P 3.141592 main(){float r,l,s,v;r=1.3;l=2*P*r;s=P*r*r;v=4/3*P*r*r*r;printf(“l=%f,s=%f,v=%fn”,l,s,v);} %f : %5.3f: %-7.2f:
作业:
1、若一用户当月的用水量为27吨,按单价为1.2
元/吨计,该用户应缴多少?
2、若当天的气温为110华氏,求对应的摄氏。
3、若一圆半径为1.8,求该圆的周长、面积,以及对
应的球体的体积。(两种方法)
4、已知一子弹的初速度为120米/秒,其加速度为1000
米/秒2,求经过22秒后子弹的射程为多少?
5、上机验证下列两程序的结果: 例: main(){int a,b,c;a=23;b=46;c=a+b;printf(“%dn”,c);} 例: main(){int a,b,c;c=a+b;a=23;b=46;printf(“%dn”,c);}
6、若一圆半径为1.8,求该圆的周长、面积,以及对
应的球体的体积。(要求友好提示)
2011-03-11讲稿
一、C语言表达式中数据类型的转换 例: main(){char t,k;int x,y;t=’A’;k=’B’;x=t+32;y=k+32;printf(“%d,%dn”,x,y);printf(“%c,%cn”,x,y);}
知识点: ASCII码
转换规则:
1、类型一致,结果保持一致
2、不同类型之间运算时,自动从低级向高级转换
3、也可以利用强制类型转换方式 如:(int)a
(float)65(int)(a+b)
例:若当天的气温为110华氏,求对应的摄氏。main(){float f,c;f=110;c=5/9*(f-32);printf(“%fn”,c);}
例:若当天的气温为110华氏,求对应的摄氏。main(){float f,c;f=110;c=5.0/9*(f-32);printf(“%fn”,c);}
例:若当天的气温为110华氏,求对应的摄氏。main(){float f,c;f=110;c=5*(f-32)/9;printf(“%fn”,c);} 例: main(){float a;int x;a=23;x=(int)a mod 6;„„ }
二、输入函数scanf()格式:scanf(格式控制,输入项)执行功能:(略)
利用输入函数实现程序编写的优势:实现人机交互 注意问题:
例:若已知用户当月的用水量,按单价为1.2
元/吨计,该用户应缴多少? main(){float t,d,s;scanf(“%f”, &t);d=1.2;s=t*d;printf(“t=%f
s=%fn”,t,s);} 例:若输入当天的气温(华氏),求对应的摄氏。main(){float f,c;clrscr();printf(“Please input f:”);scanf(“%f”,&f);c=5.0/9*(f-32);printf(“f=%f
c=%fn”,f,c);}
作业:
1、重新编写温度转换问题
2、重新缩写圆及球体问题
3、重新缩写子弹射程问题
4、利用输入函数编写水费问题
5、利用输入函数编写温度转换问题
6、利用输入函数编写圆的有关计算问题
2011-03-14讲稿
一、利用if语句实现选择(分支)结构程序设计 if语句格式:
if(条件判断)
紧跟语句;
后续语句;
执行功能:条件成立,执行紧跟语句,接着执行后续语句;
否则,执行后续语句。例: main(){int x,y;printf(“x=”);scanf(“%d”,&x);y=x+10;printf(“x=%d
y=%dn”,x,y);}
例:求 y=x+10(x>=0)main(){int x,y;printf(“x=”);scanf(“%d”,&x);if(x>=0)y=x+10;printf(“x=%d
y=%dn”,x,y);
/* error }
例:求 y=x+10(x>=0)main(){int x,y;printf(“x=”);scanf(“%d”,&x);if(x>=0){y=x+10;
printf(“x=%d
y=%dn”,x,y);
} }
知识点:
复合语句
空语句
;
注意事项:
例:求 y=x+10(x>=0)main(){int x,y;printf(“x=”);
*/ scanf(“%d”,&x);if(x>=0);
/* 有问题 */ y=x+10;printf(“x=%d
y=%dn”,x,y);
}
if„„else语句格式:
if(条件判断)
紧跟语句1;
else
紧跟语句2;
后续语句;
执行功能:条件成立,执行紧跟语句1,接着执行后续语句;
否则,执行紧跟语句2,接着执行后续语句。
例:求 y=x+10(x>=0)
y=x+100(x=0){y=x+10;
printf(“x=%d
y=%dn”,x,y);
} else
{y=x+100;
printf(“x=%d
y=%dn”,x,y);
} } 简化: main(){int x,y;printf(“x=”);scanf(“%d”,&x);if(x>=0)y=x+10;else
y=x+100;printf(“x=%d
y=%dn”,x,y);}
例:若已知用户当月的用水量,按单价为1.2
元/吨计,该用户应缴多少? main(){float t,d,s;scanf(“%f”, &t);if(t>=0)
{d=1.2;
s=t*d;
printf(“t=%f
s=%fn”,t,s);
} else
printf(“Data is error!”);}
二、运算符与表达式:
1、算术运算符:+-
*
/
算术表达式:(23+a)/8
算术表达式的结果:
2、关系运算符:>
>=
!= 关系表达式:
23>56
12>9
13!=0 关系表达式的结果:逻辑值代表真
0 代表假 但在判断时,非0代表真
3、逻辑运算符:
&&
||!
并且
或
非
逻辑表达式:
x>0 && x
逻辑表达式结果:逻辑值
4、赋值运算符:
=
赋值表达式:
x=25
赋值表达式结果即为赋的具体值
赋值语句:
x=25;例: main(){int a=b=c=25;
/* error */ „„ } 例: main(){int a,b,c;
a=b=c=25;„„ }
==
例:求:y=1(x>0)
y=0(x=0)
y=-1(x0)
{y=1;
printf(„„);
} else
{if(x=0)/* error,right:x==0 */
{y=0;
printf(„„);
} else {y=-1;
printf(„„x,y);}
} }
作业:
1、求y=x+10(x>=0)
2、求y=x+10(x>=0)
y=x+100(x
3、水费问题的升级
4、圆及球体有关计算问题的升级
5、输入当天气温(华氏),求对应的摄氏度,若摄氏度>=25
显示(Hot),否则显示(Cold)
2011-03-28讲稿 例: main(){int x,y;printf(“x=”);scanf(“%d”,&x);if(x=15)
printf(“Yes!n”);else
printf(“No!n”);} 例: main(){int x,y;printf(“x=”);scanf(“%d”,&x);if(x=0)
printf(“Yes!n”);else
printf(“No!n”);}
一、if的嵌套结构
例:求一元二次方程的解。#include #include main(){float a,b,c,d,x1,x2;printf(“Input a,b,c=”);scanf(“%f,%f,%f”,&a,&b,&c);if(a!=0)
{d=b*b-4*a*c;if(d>=0)
{if(d>0)
{x1=(-b+sqrt(d))/(2*a);
x2=(-b-sqrt(d))/(2*a);
printf(“x1=%f,x2=%fn”,x1,x2);
}
else
{x1=-b/(2*a);
printf(“x1=x2=%fn”,x1);
}
} else
{printf(“Delta
} } else
{printf(“a=0,Don’t caln”);
} }
例:输入一用户当月的用水量,单价按以下规则计,求该用户应缴多少?
d=1.2
t
d=1.5
10
d=2.5
20
d=5
30=0)
{if(t
{d=1.2;
} else
{if(t
{d=1.5;
}
else
{if(t
d=2.5;
else
d=5;
}
} s=t*d;printf(„„);
} else
printf(“Data is error!n”);}
例:输入一同学单门课程成绩值,将其按五个等级进行转换:
90以上
A Grade 80-90
B Grade 70-80
C Grade 60-70
D Grade 60以下
E Grade main(){int s;printf(“s=”);scanf(“%d”,&s);if(s>=0 && s
{if(s>=90)
printf(“A Grade!n”);else
{if(s>=80)
printf(“B Grade!n”);
else
{if(s>=70)
printf(“C Grade!n”);
else
{if(s>=60)
printf(“D Grade!n”);
else
printf(“E Grade!n”);
}
}
}
} else
printf(“Data is error!n”);}
三、并列的if„„elseif„„elseif„„else语句 格式:
if()语句;
elseif()语句;
elseif()语句;
„„
else 语句;执行功能:略
例:输入一用户当月的用水量,单价按以下规则计,求该用户应缴多少?
d=1.2
t
d=1.5
10
d=2.5
20
d=5
30=0){if(t
d=1.2;elseif(t
d=1.5;elseif(t
d=2.5;else
d=5;s=t*d;printf(„„);
} else
printf(“Data is error!n”);}
例:输入一同学单门课程成绩值,将其按五个等级进行转换:
90以上
A Grade 80-90
B Grade 70-80
C Grade 60-70
D Grade 60以下
E Grade
main(){int s;printf(“s=”);scanf(“%d”,&s);if(s>=0 && s
{if(s>=90)
printf(“A Grade!n”);elseif(s>=80)
printf(“B Grade!n”);elseif(s>=70)
printf(“C Grade!n”);elseif(s>=60)
printf(“D Grade!n”);else
printf(“E Grade!n”);
} else
printf(“Data is error!n”);}
四、利用switch语句实现多分支程序编写 格式:
switch(表达式)
{case 常量:
语句;
case 常量:
语句;
case 常量:
语句;„„ default:
语句;
} 执行功能:略
例:输入一同学单门课程成绩值,将其按五个等级进行转换:
90以上
A Grade 80-90
B Grade 70-80
C Grade 60-70
D Grade 60以下
E Grade
main(){int s;printf(“s=”);scanf(“%d”,&s);if(s>=0 && s
{switch(s/10)
{case 10:
case 9:
printf(“A Grade!n”);
break;
case 8:
printf(“B Grade!n”);
break;
case 7:
printf(“C Grade!n”);
break;
case 6:
printf(“D Grade!n”);
break;
default:
printf(“E Grade!n”);
}
} else
printf(“Data is error!n”);}
作业:
1、求一元二次方程的解
2、利用if嵌套编写:输入一用户当月的用水量,单价按以下规则计,求该用户应缴多少? d=1.2
t
d=1.5
10
d=2.5
20
d=5
30
3、利用if嵌套编写:输入一同学单门课程成绩值,将其按五个等级进行转换:
90以上
A Grade 80-90
B Grade 70-80
C Grade 60-70
D Grade 60以下
E Grade4、利用并列elseif编写:输入一用户当月的用水量,单价按以下规则计,求该用户应缴多少? d=1.2
t
d=1.5
10
d=2.5
20
d=5
30
5、利用并列elseif编写:输入一同学单门课程成绩值,将其按五个等级进行转换:
90以上
A Grade 80-90
B Grade 70-80
C Grade 60-70
D Grade 60以下
E Grade6、利用switch语句编写:输入一同学单门课程成绩值,将其按五个等级进行转换:
90以上
A Grade 80-90
B Grade 70-80
C Grade 60-70
D Grade 60以下
E Grade
2011-04-02讲稿
一、例:输入一个4位的整数,输出各数位上的数码。main(){int x,a;scanf(“%d”,&x);a=x/1000;b=(x-a*1000)/100;„„ }
二、知识点:
逻辑运算符:
&&
||
!例:
int a,b,c,d,m,n;
a=1;b=2;c=3;d=4;m=1;n=1;
(m=(a>b))&&(n=(c>d));
m=0
n=1
三、if的常用算法
1、例:输入两任意数,输出最大数 main(){int a,b;scanf(“%d,%d”,&a,&b);if(a>b)
printf(“%dn”,a);else printf(“%dn”,b);}
例:输入4任意数,输出最大数 main(){int a,b,c,d,max;scanf(“%d,%d,%d,%d”,&a,&b,&c,&d);max=a;if(b>max)
max=b;if(c>max)
max=c;if(d>max)
max=d;printf(“%dn”,max);}
2、例:输入两任意数,按降序排列输出 main(){int a,b;scanf(“%d,%d”,&a,&b);if(a>b)
printf(“%d,%dn”,a,b);else printf(“%d,%dn”,b,a);}
例:输入4个任意数,按降序排列输出 main(){int a,b,c,d,t;scanf(“%d,%d,%d,%d”,&a,&b,&c,&d);if(a
{t=a;a=b;b=t;} if(a
{t=a;a=c;c=t;} if(a
{t=a;a=d;d=t;} if(b
{t=b;b=c;c=t;} if(b
{t=b;b=d;d=t;} if(c
{t=c;c=d;d=t;} printf(“%d>%d>%d>%dn”,a,b,c,d);}
知识点:
2、例:实现两变量值的交换 main(){int a,b,t;a=12;b=21;t=b;b=a;a=t;printf(“%d,%dn”,a,b);}
知识点:复合赋值运算符 例:
int x=12;
x=x+26;或写成x+=26;
x*=23+9 相当于: x=x*(23+9);
四、循环控制结构 例: main(){int x;x=0;x=x+1;printf(“%dn”,x);x=x+1;printf(“%dn”,x);x=x+1;printf(“%dn”,x);x=x+1;printf(“%dn”,x);x=x+1;printf(“%dn”,x);„„ }
利用while语句实现循环控制 格式:
while()
{循环体;
} 执行功能:略
简化版: 例: main(){int x;x=0;while(x
printf(“%dn”,x);
} }
例:x=1+1+1+„„+1(加到11为止)main(){int x;x=0;while(x
printf(“%dn”,x);
} } 例: main(){int x;x=0;while(x
x=x+1;} } 例: main(){int x;x=0;while(x
} printf(“%dn”,x);}
例:x=3+3„„+3(加到60为止)main(){int x;x=0;while(x
printf(“%dn”,x);
} }
例:x=13+13„„+13(加57次)main(){int x;x=0;while(x
printf(“%dn”,x);
} }
例:x=13+13„„+13(加57次)main(){int x,i;x=0;i=0;/* 计数器
*/ while(i
printf(“%dn”,x);
} }
作业:
1、输入一个4位的整数,输出各数位上的数码。
2、输入任意6个整数,输出其中的最大数。
3、输入任意6个整数,输出其中的最小数。
4、输入任意5个整数,按降序排列输出。
5、输入任意5个整数,按升序排列输出。
6、利用while语句输出1---100。
7、求s=7+7+7+„„+7(加到210为止)
8、求s=12+12+12+„„+12(加76次)
2011-04-08讲稿
一、自加或自减
格式:
变量++
或
变量— 执行功能:略 例:
main(){int i;i=25;i=i+1;/* 或
i++;*/ „„ }
注意事项:只能是变量 如:
23++
(a+b)++ 如:
i++
与
++i 区别
1、当单独表示时,无区别
例: int i=36;i++;printf(„„,i);例: int i=36;++i;printf(„„,i);
2、当与其他变量或表达式进行运算时,i++表示先用i的值 参与运算,然后自加;而++i则先自加,再用当前i的值参与 运算。例: int i,a;i=2;a=16+(i++);a=? i=?例: int i,a;i=2;a=16+(++i);a=? i=?例: int i,a;i=2;a=i++;a=? i=?例: int i,a;i=2;a=++i;a=? i=?例: int i,a;i=2;a=(i++)+(i++)+(i++);a=? i=?例: int i,a;i=2;a=(++i)+(++i)+(++i);a=? i=?
二、for循环控制语句 格式:
for(循环控制变量=初始值;条件;循环控制变量步长控制)
循环体; 执行功能:略
例:x=13+13„„+13(加10次)main(){int x,i;x=0;for(i=1;i
{x=x+13;
} printf(„„);} or: main(){int x,i;x=0;i=1;for(;i
{x=x+13;
} printf(„„);} OR: main(){int x,i;x=0;for(i=1;i
{x=x+13;
} printf(„„);} OR: main(){int x,i;x=0;for(i=1;i
{x=x+13;
} printf(„„);}
知识点:逗号运算符 int a,b,c;a=3;b=5;c=a+b;c=? OR: int a,b,c;c=(a=3,b=5,a+b);c=?
三、循环结构程序举例
1、例:输入10个数,求最大数 main(){int x,max, scanf(“%d”,&x);max=x;scanf(“%d”,&x);if(x>max)
max=x;scanf(“%d”,&x);if(x>max)
max=x;scanf(“%d”,&x);if(x>max)
max=x;„„ }
简化版: main(){int x,max,i;scanf(“%d”,&x);max=x;for(i=1;i
{scanf(“%d”,&x);
if(x>max)
max=x;
} printf(„„,max);}
下列程序行吗? main(){int x,max,i;for(i=1;i
{scanf(“%d”,&x);
if(x>max)
/* 有问题 */
max=x;
} printf(„„,max);} 下列程序有问题? main(){int x,max,i;scanf(“%d”,&x);max=x;for(i=1;i
{if(x>max)
max=x;
} printf(„„,max);}
例:输入10位同学成绩,求最高分 main(){int x,max,i=1,k;printf(“Please Input No:%d’s score:”,i);scanf(“%d”,&x);max=x;k=i;for(i=2;i
{ printf(“Please Input No:%d’s score:”,i);scanf(“%d”,&x);
if(x>max)
{max=x;
k=i;
}
} printf(“Max is %d,it’s at %dn”,max,k);}
例:输入一同学单门课程成绩值,将其按五个等级进行转换:
90以上
A Grade 80-90
B Grade 70-80
C Grade 60-70
D Grade 60以下
E Grade
main(){int s,i;for(i=1;i
scanf(“%d”,&s);
if(s>=0 && s
{if(s>=90)
printf(“A Grade!n”);elseif(s>=80)
printf(“B Grade!n”);elseif(s>=70)
printf(“C Grade!n”);elseif(s>=60)
printf(“D Grade!n”);else
printf(“E Grade!n”);
}
else
printf(“Data is error!n”);
}
}
作业:
1、利用for语句编写:s=13+13+13+„„+13(加20次)
2、输入任意20个数,求最大数;
3、输入任意20个数,求最小数;
4、输入10位同学成绩,输出最低分及对应的序号。