cpp
P.244-253
cpp还是熟悉的配方还是熟悉的味道,时不时的小幽默,严谨工整的代码,一个字,perfect。
函数是一个看不见内部构造的黑盒子,只要输入参数就能见效。今天学的很顺畅啊,如果可以真想好好研究这本ccp感觉就是好,但很可惜只能算作初级知识。
1.每个函数三处:函数原型(有分号),函数调用(有分号),函数定义(无分号)。
2.void starbar(void); 第一个void说明没有返回值,第二个说明没有参数。
3.starbar中的count是局部变量,相当于再在两个不同的程序里编译,即可以在main()里使用count并没有关系,但使用前要重新定义。
1.void abc (int x,int y,int z)说明使用三个参数且都为整形(可以省略x,y,z),另外(int x,y,z)错误,必须分别定义。除非void abc(x,y,z)再下一行int x,y,z。
1.int imin说明返回int。
2.可以将imin(evil1,evil2)直接看成一个常量,可以直接用在其他运算式子里。
3.imin 第二个版本
3.imin 第三个版本
cpp还是熟悉的配方还是熟悉的味道,时不时的小幽默,严谨工整的代码,一个字,perfect。
函数是一个看不见内部构造的黑盒子,只要输入参数就能见效。今天学的很顺畅啊,如果可以真想好好研究这本ccp感觉就是好,但很可惜只能算作初级知识。
好,书好导致没什么好吐槽的,干活吧!
1.P.244 lethead1.c
#include <stdio.h>
#define NAME "GIGATHINK,INC."
#define ADDRESS "101 Megabuck Plaza"
#define PLACE "Megapolis, CA 94904"
#define WIDTH 40
void starbar (void); //函数原型 有封号
int main (void)
{
starbar ();
printf ("%s\n",NAME);
printf ("%s\n",ADDRESS);
printf ("%s\n",PLACE);
starbar(); //使用函数
return 0;
}
void starbar(void) //定义函数 无封号
{
int count;
for (count=1;count<=WIDTH;count++)
putchar('*');
putchar('\n');
}
注意:
1.每个函数三处:函数原型(有分号),函数调用(有分号),函数定义(无分号)。
2.void starbar(void); 第一个void说明没有返回值,第二个说明没有参数。
3.starbar中的count是局部变量,相当于再在两个不同的程序里编译,即可以在main()里使用count并没有关系,但使用前要重新定义。
2.P.247 lethead2
#include <stdio.h>
#include <string.h> //strlen()
#define NAME "GIGATHINK,INC."
#define ADDRESS "101 Megabuck Plaza"
#define PLACE "Megapolis, CA 94904"
#define WIDTH 40
#define SPACE ' '
void show_n_char(char ch, int num);
int main(void)
{
int spaces;
show_n_char('*',WIDTH); //用符号常量做参数
putchar('\n');
show_n_char(SPACE,12); //用符号常量做参数
printf ("%s\n",NAME);
spaces=(WIDTH-strlen(ADDRESS))/2; //计算要跳过多少个空格
show_n_char(SPACE,spaces); //用一个变量做参数
printf ("%s\n",ADDRESS);
show_n_char(SPACE,(WIDTH-strlen(PLACE))/2);
printf ("%s\n",PLACE); //用一个表达式做参数
show_n_char('*',WIDTH);
putchar('\n');
return 0;
}
void show_n_char(char ch, int num)
{
int count;
for (count=1;count<=num;count++)
putchar(ch);
}
注意:
1.void abc (int x,int y,int z)说明使用三个参数且都为整形(可以省略x,y,z),另外(int x,y,z)错误,必须分别定义。除非void abc(x,y,z)再下一行int x,y,z。
3.lesser P.250
#include <stdio.h>
int imin (int, int);
int main(void)
{
int evil1,evil2;
printf ("Enter a pair of integers (q to quit):\n");
while (scanf("%d %d",&evil1,&evil2)==2)
{
printf ("The lesser of %d and %d is %d.\n",
evil1,evil2,imin(evil1,evil2));
printf ("Enter a pair of integers (q to quit):\n");
}
printf ("Bye.\n");
return 0;
}
int imin (int n,int m)
{
int min;
if (n<m)
min=n;
else
min=m;
return min;
}
注意:
1.int imin说明返回int。
2.可以将imin(evil1,evil2)直接看成一个常量,可以直接用在其他运算式子里。
3.imin 第二个版本
int imin (int n,int m)
{
return (n<m)?n:m;
}
3.imin 第三个版本
int imin (int n,int m)
{
if (n<m)
return n;
else
return m;
}
即可以使用多个return
4.imin第四个版本(密)
int imin (int n,int m)
{
if (n<m)
return n;
else
return m;
printf("Kevin is likely totally fail in love with the little little girl.")
}
return语句导致printf()语句永远不会执行,那个little little girl应该也永远不会知道Kevin先生的小小心思吧。
咳咳,蓝桥杯什么的,不存在的,溜了溜了。