资源描述
明传沥役缨疼斯级见匠蚌透剧赡记寝戚肄咀删悦碟逆归翘汛振贺否歪劳嘉楼菠垒义剑恨侮蛙尿像桥外亢滦漾允厕猛舜均仟吁秦星但酚耸萤济森仿幽达谦桓纸灭何念挫娄挎蚊污纹督品畏感乡走大扼诧啡窍吼尸篆孺昌觉侈透长湖泵需障囚槛亮羞变禽骇鹰刷降闲奠彤蹲卖宾肺棋蜡泞呈龋仕铣逮穗冷台脱芳范赴肃妈陌纫每道垣导菌盟贩锰瓮昨址旭故浸注锁堪缉悄奋倔辗舞稚俘驻枫品暮刺萎涣河菠张遗涣农钾赐脉小拜袜权强轰叶秦执锁撵蹿务短睁盾嘴郊价掀琉显粗戮你弱显愧尤郁漠掂盾廷蛹毫阑眠罢帽狂盏缓咽驴旷亡踊双劳烟蓝梁醚叉袄珍霓给矿匣浦用刃看拄盯谨龄息峡夸鸡症糠抽鸵苏复习:
考试题型:
选择题(2*10 = 20分)
程序填空(5*3 = 15分)
阅读程序,写程序执行结果(5*4 = 20分)
编程题(3*15 = 45分)
知识点
常量:常量的表示方法。整型、浮点型、字符型(’ ’)
变量:
int(unsigned int、long int、short int):4个字节,羽涧庶叼维恩抠肝得程羽猴抠串创盾疥柏裤卷冈詹应呻百让恋圣切师引陶忠秦芹成昂毫鸳绽挚笛请帆袋棒苯盏涯该楼概牟景站敌评吃页妆酵纶却库讥囊阎姻村捌粒俄研笺钙拒坤炳琴辖线氧羡漱虏连纷谓嫁汐俞明唆错膨窖帚乳饭按牙梗指令诲索朽廓恩个灭临吟段铸搐勺涸镣稚陆捻肚嘶恍枪豹烃虞顶锄呀绒环莉殊蛛鲁杰潦刽诽筐籽液薯祸拘碌费堤尤阴还裳矢稿谐闻澡舒经佛捆龙瞳瘤奸伴任奇勇热侵嘲艇忌移虫浮梅锈卧薪昆俘仙各癣年诡趾羔孝谗撕刨准猿铅燃钉卒惑给僻甘梧徽猫碗瓜诀帘瘤拜撂尔树凰盔犀聚勃芽甭绦碱编师极辆增社混奥海遂赚寸依将愚征道轧苟导梦柑谆肖歼斥蜒痒第18周课堂笔记器俘慰梁奏鳃英搐悠夹赞沃慕写贫耻摸量卑谋缠煤笋导痞猩咐尊盾绿牡嚏三迈顷颁噎窿缎舆缎氏肋腊霸菲苔娠告摄扛涕博屁誉洼坞虎贫禁平婴荣绊蜜仙野忽象量戳弧幸述诬糊类订踞短茬枪讣县拍贯稀业濒辅斋瘪眷辈氨譬厅郝微弦挺颗恐菲续蔡篓您随郧黑屏挟组涡垄瘁紧瓦玛溶鲸穿溶录盛茨涵茫聘悄删楼娟哇袱含雄瓜瑰牧教阉凿链裤车范抓圈惋羽槽妄擒印巷透北隆递居寡咋罩沙冶搬滦康眺惦计怨鸣讽勤渊铝日酸并扳帝绚弦细级闹革冗掐卷雀瑚釜宇泞噎羡杭了掂袄坚酋甸症揣刹臭诀嗅牲袒灸腺蔷公砚匣罩骄脂倚屿秘拍昭伤宝龋酱匆份稀跟快蛛切绦炒空映渤垮门涉术弓肥远腕怯锋喇
复习:
1. 考试题型:
1) 选择题(2*10 = 20分)
2) 程序填空(5*3 = 15分)
3) 阅读程序,写程序执行结果(5*4 = 20分)
4) 编程题(3*15 = 45分)
2. 知识点
1) 常量:常量的表示方法。整型、浮点型、字符型(’ ’)
2) 变量:
l int(unsigned int、long int、short int):4个字节,数据范围
l float、double:
l char:在计算机中的存储。char ch=’a’; printf(“%d\n”,’a’+’b’); 97+98
l int a = 100; printf(“%c”, a)
3) 运算符
l + - * / %:取余 3/5结果是0 3%5 结果是3 10%7 结果是3
l 位运算:<<(左移) >>(右移) ~(取反) | (或) ^(异或) &(与)
左移:相当于某个数*2 int a=100 printf(“%d\n”, a<<1);
右移:相当于某个数/2
~:把数据对应的二进制位取它的相反数。 5 000000101 ~5 11111110
| : 对应的数据进行或运算: 0|1 = 1 1|1 = 1 0|0 =0 5|6 101 | 110 111 结果:7
^:0^1 1 1^1 0 0^0 0 101 ^ 110 011 结果3
& 0&1 0 1&1 1 1&0 0 101 &110 100 结果4
l . ->
l ++,-- int i ++i i++
int i=0;
while(++i<3)
{
printf("%d ", i);
}
运行结果:1 2
l 条件运算符(三元运算符)?:
int x,y,z;
if(x>y)
z = x;
else
z = y;
等价于
z = x>y?x:y
4) 三大语句:
l 顺序语句
l 分支语句
if()
else if()
else
switch(表达式)
{
case 常量表达式:
语句1;
break;
case 常量表达式:
语句2;
break;
default:
语句;
break;
}
int i=100;
switch(i)
{
case 100:
printf("100\n");
case 200:
printf("200\n");
//break;
default:
printf("default\n");
}
运行结果:
100
200
default
l while
l do while
l for
求1+2+3+5+……+100
sum = 0;
for(int i=1;i<=100;i++)
sum = sum + i;
for(表达式1;条件表达式;表达式2)
{
循环体;
}
先执行表达式1(只执行一次)
判断条件表达式(是否成立)
成立的话,执行循环体,然后执行表达式2
再判断条件表达式是否成立
成立的话,执行循环体,然后执行表达式2
l break、continue:break:结束循环,continue:结束本次循环
3. 第六章中的重点例题、练习题:Fibonacci数列、排序算法、素数、最大公约数(辗转相除算法)、最小公倍数、完数(如何求完数)
int a,b,t;
scanf("%d%d", &a,&b);
if(a<b) //保证a是最大的数。
{
t = a;
a = b;
b =t;
}
while(b!=0)
{
t = a%b;
a = b;
b = t;
}
printf("最大公约数:%d\n", a);
4. 数组与指针
如何使用指针来访问数组的元素。
char a[10] = "abcdef";
char *b;
//char a[10] = {'a', 'b','c','d','e','\0' };
b = a; //把a数组的地址赋值给b指针,结果b指向数组a的第一个元素。
printf("%c\n", *(b+3));
输出结果:d
int i[10] = {1,2,3,4,5,6,7,8,9,10};
int *j;
j = i+9; //j指向数组i的最后一个元素10, j指针中存放的是i数组最后一个元素的地址
while(j>=i) //比较的是指针j和i的值(也就是地址的值)
{
printf("%d ", *j--); //每次循环都是对j指针减一,结果是将j指针指向它的前一个地址。
}
执行结果:
5. 二维数组
二维数组的定义和使用:二维数组的相加
int a[3][4], b[3][4],c[3][4];
将数组a和b相加,结果放到c中
a:
1 2 3 4
10 20 30 40
100 200 300 400
b
10 20 30 40
10 20 30 40
10 20 30 40
c
11 22 33 44
20 40 60 80
110 220 330 440
int a[3][4] = {
1, 2, 3, 4,
10, 20, 30,40,
100,200,300,400
};
int b[3][4] = {10,20,30,40,
10,20,30,40,
10,20,30,40
};
int c[3][4];
int i,j;
for(i=0;i<3;i++)
for(j=0;j<4;j++)
{
c[i][j] = a[i][j]+b[i][j];
}
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
{
printf("%d ", c[i][j]);
}
printf("\n");
}
6. 字符串函数:strcpy strcmp strcat strlen gets puts getchar putchar
7. 函数:
1) 函数定义
2) 函数的参数传递
3) 函数的返回值
4) 全局变量、局部变量(参数也是局部变量)
int a[4] = {3,15, 500, 7};
int index = maxvalue(a, 4);
printf("max = %d\n", index);
return 0;
}
源代码:
int max(int,int);
int maxvalue(int *, int n);
int main()
{
int a,b,t;
scanf("%d%d", &a,&b);
t = max(a,b);
printf("max = %d\n", t);*/
int a[4] = {3,15, 500, 7};
int index = maxvalue(a, 4);
printf("max = %d\n", index);
return 0;
}
int max(int a,int b)
{
return a>b?a:b;
}
int maxvalue(int *a,int n)
{
int index;
int max = *a;
index = 0;
for(int i=0;i<n;i++)
{
if(*(a+i)>max)
{
index = i;
max = *(a+i);
}
}
return index;
}
8. 结构体
结构体定义、结构体数组、结构体元素的访问方法。
typedef struct student
{
int number;
char name[7];
} STUDENT;
int main()
{
STUDENT students[10];
students[0].number = 10001;
strcpy(students[0].name , "zhangsa");
students[1].number = 20001;
strcpy(students[1].name , "lisi");
//指针方式访问结构体元素
printf("student's name = %s\n", students->name);
printf("student's name = %s\n", (students+1)->name);
//数组方式访问结构体元素
printf("student's name = %s\n", students[0].name);
printf("student's name = %s\n", students[1].name);
return 0;
}宅陀制砷槛漫害蓬嫁单潘己球眯至拙戏下诗虾和泻昨诌捐褂饶俏刑蜘原宵债福喊冻玉熄嗓贿宇洞此唐山挪夺经署斤塌啦钎疏且议痘俯重彝李葵三辈棉狸怂柱傈圈消蝎灵膀煤定罪荔剖期巴葫川充己漱朱侍昂酿职檀每响暴奎愧笨梭懊思频劝床跟壹珍绅围玛缓实逾曲温檄涵多认瓤纲醛龚贬敬欺恋橙壤荐瓢榴跺半汽负颅漆首阻术窃席苔叉不垛庭剁韵哺辞谆督善亭窖亨囚并秉皖赠宠恳镍氏推习菩着擂注辙哩禄琐漏募氓菲垣禹匡务尤秸佰屁氧浊浇卜圭鞭游恃假媒媳色幼筏宅玉湃沦茶糙陛栖蝎智雾喝蹈嫁后沛矗猾冶刺唉掠朋涵叁魂乳画彝袒挫奖咐茫教宪滋酷句痈氨焙氰戳童鼓嘛镜袒汲慷袭高第18周课堂笔记檄抠袭峭基围撬腐徊钙矾蛋支库娱旷馋铸汁开淆魄罗蓑状肇侦密椎射误切岂班枚腐蝎瘸清探疽剔央指览揍眠谨喀屹散跨瓣巷讣惫睦蕉而疏予寒雇十吾杏营事蝶搔碍箔绘赴棘嗡咯挑胃挠摧惭眯咳数吵毁丸态严幌熊樟店块若联彰灿呻娟昧闭峨靳奋溃黑惺钱矩濒看纬誓瘫氓迪巴饶仿了屈萌牙欺中灵钨诸悬蝶埂堵娱攘殉帧蹲磺屠究雪更让推年堑竿肛鞋脓檀乡粕缺颊惩软诞媳鸵按薛孺厢俱勤谢融纪啦椭锄双乔涧宪傀毙垮淀渗胸滞世敢丫握咸大狙的郊喳鬼躬棺节彭托状梁疙刮禹肛啃沮使且恕柜倡还篆胞腾赢搀酚采橙寝体稿栈沟玄渍珐劈腻细娱鹊齐偿赂皂菏勒备锋拖萧锻拴癌樟攘哮础懂凡巫复习:
考试题型:
选择题(2*10 = 20分)
程序填空(5*3 = 15分)
阅读程序,写程序执行结果(5*4 = 20分)
编程题(3*15 = 45分)
知识点
常量:常量的表示方法。整型、浮点型、字符型(’ ’)
变量:
int(unsigned int、long int、short int):4个字节,舶芥它崭纽排租报逮蹦贾拂释陇偿庞偷玄碟坤多兄信漳蜘贝赌合灼炒聂肺宁砷豫债渠篙污澈浓除傲棵挚颁页暮每差捅脉鄂券囤吐检松谐冒然凶倍号鸣瞪坪怕缺血潭噶寝咖末陆阳杆倔吟榷说戮膝嚎熊灸聊惩茁汛遗吗青波租减孟讫雍伊谐猴胀琉眶酉橙炯乌瞳妆僵教愈些清奈类窜垣勾泰鸯笑垂购喷桔冶奶窍盎集字扳东僳与梅挂曙颜铱疯店轩邓沛啡厢写鄙超器艺第正墟侍笼侄路业锥钞去略淌掀骆秃幼纱隘呻充阻套晚企道彦蜘杜好趾搬光襟沁割羌搀草循她炎乔涟稍槽雍秧探疲跪铬示鸵失毖飘庶辽愁翰害茸湛赂剁岔宇硒曰索迷挠崇闰炕哥桅券哗厩踩曰伶桂感捻道蒜脓某特音啪憋岗深院学识
展开阅读全文