-
在 C++ 中,函数要想使用,必须要先声明。因此函数不能定义在main函数前。
函数分为函数头和函数体两部分:
函数头:
函数体:
示例:计算两个数的平均数:
#include <iostream>
int avg(int a, int b)
{
return a + b / 2;
}
int main(int argc,char **argv)
{
int a = 10;
int b = 20;
int c = avg(a, b); //函数调用
return 0;
}
查看全部 -
用循环输出一个n*m的矩形:
#include <iostream> int main(int argc,char **argv) { for (int i=1;i<6;i++){ for(int j=1;j<9;j++){ std::cout<<"* "; } std::cout<<"\n"; } return(0); }
查看全部 -
break语句和continue语句的区别:
(1)break 语句,可以直接跳出循环,执行下一阶段的程序。
(2)continue语句, 是结束本次循环,进行下一次循环。
查看全部 -
1.do-while 循环:
do{
} while(表达式 A)
语义:先做一次循环体,再判断表达式,如果为真则继续执行循环体;如果为假则结束。2.例:需求:当 a 等于 12 的时候,就跳过b = a + b;,直接执行b = a - b;。如果 a 不等于 12,就依次执行b = a + b; b = a - b。
代码:
do { if(a == 12){ break; } b = a + b; } while(false); b = a - b;
查看全部 -
switch case语句特殊的地方在于当它匹配到相应的 case 之后,会将后面所有的 case 从句都执行一次,直到碰到一个 break 语句。
查看全部 -
1.while(表达式A) {
}
语义:1. 先执行"表达式A",判断"表达式A"的返回值是否是 true,如果它的值为真 (非0),则执行循环体,否则结束循环。
2. 重复执行 1。2.while循环和for循环最显著不一样的地方,就是while循环 没有那么多前置规则,看上去更加灵活一些。
查看全部 -
输出一个数组内所有的变量及其地址。
#include <iostream> int main(int argc,char **argv) { int array[10]; for(int i=0;i<10;i++){ printf("array[%d]: %d\t,地址是: %p\n", i, array[i],&array[i]); } return(0); }
查看全部 -
输出一个数组内所有的变量及其地址。
#include <iostream> int main(int argc,char **argv) { int array[10]; for(int i=0;i<10;i++){ printf("array[%d]: %d\t,地址是: %p\n", i, array[i],&array[i]); } return(0); }
查看全部 -
for(短句A;短句B;短句C)
语义:1. 先执行“短句A”
2. 再执行“短句B”,如果它的值为真(非0),则执行循环体,否则结束循环
3. 执行完循环体后再执行“短句C”
4. 重复执行步骤 2 和 3,直到“短句B”的值为假,就结束循环。
查看全部 -
成绩判断:
#include <iostream> #include <stdio.h> int main(int argc,char **argv) { int mu=85; if (mu>90){ std::cout<<"小慕的成绩为:优"<<std::endl; } else if(75<=mu<90){ std::cout<<"小慕的成绩为:良"<<std::endl; } else if(60<=mu<75){ std::cout<<"小慕的成绩为:中"<<std::endl; } else if(mu<60){ std::cout<<"小慕的成绩为:差"<<std::endl; } return(0); }
查看全部 -
练习3:定义一个学生成绩的结构体,要求可以存放包含小数的数学,英语,语文成绩。
#include <stdio.h> #include <iostream> struct Score { int chinese; int english; float math; }; int main(int argc,char **argv) { struct Score sc; std::cout<<"定义了一个记录学生成绩的结构体:"<<"Score"<<std::endl; return(0);}
练习4:定义一个春夏秋冬四季的枚举类型。
enum Season { spring, summer, autumn, winter, }; #include <iostream> int main(int argc,char **argv) { Season season = Season::summer; std::cout<<"夏季是:"<<summer<<std::endl; return 0;}
查看全部 -
作业:
练习1:如何将一个数组在初始化的时候,把所有元素都初始化为 0?
#include <iostream>
int main(int argc,char **argv)
{
int a[3] = {};
std::cout<<"a[0]:"<<a[0]<<"\n"<<"a[1]:"<<a[1]<<"\n""a[2]:"<<a[2]<<"\n""a[3]:"<<a[3]<<"\n";
return 0;
}
练习2:如何将一个数组在初始化的时候,把所有元素都初始化为 1?
#include <stdio.h>
#include <iostream>
int main(int argc,char **argv)
{
int a[4] = {1, 1, 1, 1};
std::cout<<"a[0]:"<<a[0]<<"\n"<<"a[1]:"<<a[1]<<"\n"<<"a[2]:"<<a[2]<<"\n"<<"a[3]:"<<a[3]<<"\n"<<std::endl;
return 0;
}
查看全部 -
如何访问数组中的元素?首先要知道数组第一个元素的地址,因为数组中元素的地址都是等差的,所以只要在第一个元素的地址上加上相应元素的偏差,就可以拿到其他元素的地址。
第一个元素的地址可以通过数组名来获得。
数组名是一个指向数组首元素的指针。但是这个指针是常量,不能对其进行修改。
使用指针的加减法来访问对应的元素:
#include <stdio.h>
int main(int argc,char **argv)
{
int array[5];
*(array + 2) = 1;
return 0;
} //代码中的 *(array + 2) = 1; 就等价于 array[2] = 1;
查看全部 -
#include<iostream>
#include<stdio.h>
int main(int argc,char **argv)
{
int a = 1;
int b = 2;
int x = b;
b = a;
a = x;
printf("输出a的值是 %d\n输出b的值是 %d",a,b);
return 0;
}
查看全部 -
指针和数组:
查看全部
举报