1,数组
是一块连续的存储单元,数据存放在逻辑上和物理上都是相邻的。
表示方法:
说明数组的类型: int short long double float char
int array[length] //说明类型 + 数组名称 + 【数组长度】
int a = 10;
#define N 5
int array[5]; //不可以, 因为a本质是一个变量
int array[N]; // 可以,因为此时的N与5等价
数组的简单使用
1,初始化:
int array[5];
//单个赋值初始化
array[0] = 0;array[1] = 1;array[2] = 2;array[3] = 3;
//定义的时候初始化
int arr[4] = {0,1,2,3};
//找到数组里面最大和第二大的数字
#include<stdio.h>
int main(){
int array[4] ={1,2,3,4};
for(int i = 0; i < 4; i++){
printf("请输入你想要的数..\n");
scanf("%d",&array[i]);
}
int max = array[0];
int second = 0;
for(int i = 0; i < 4; i++){
if(array[i] > max){
max = array[i];
second = max;
} else if(array[i] < max && array[i] > second){
second = array[i];
}
}
printf("数字最大的数为:%d\n", max);
printf("数字第二大的数为:%d\n", second);
return 0;
}
字符串数组
char str[10] = "hello";
//客家字符为5个,但是字符串数组后面有一个肉眼不可见的结束标准\0,就类似写文章的句号,一定跟在后面
//如果字符超出数组的长度,编译会给出警告,同时程序运行功能不正常
//修改单个字符
str[0] = H; //写法不对,因为编译器会认为H是一个新的变量
str[0] = 'H' //字符是单引号引起来的东西
数组和指针
1,指针是什么?
是一种新的数据类型,它存放的是某个存储单元的地址。
数组名和指针一样,都代表着存储单元的地址,由于这个特性,二者可以有很多使用方法。
练习题:
1,输入5个数,输出其平均数
#include<stdio.h>
int main(){
int array[5] = {0};
double sum = 0, av = 0;
int count=0;
printf("请输入你想要的数..\n");
for(int i = 0; i < 5; i++){
scanf("%d",&array[i]);
sum += array[i];
count++;
}
printf("平均数为%.2lf\n",1.0*sum/count);
return 0;
}
2,输入一个数N,求1-N之间,3的倍数的和
#include<stdio.h>
#include<stdlib.h>
int main(){
int N,i=0;
int number = 0,sum = 0;
int array[32] = {0};
printf("Please input a number N\n");
scanf("%d",&N);
for(int i = 0;i <=N;i++){
array[i] = i;
}
for(i =1;i< 32;i++){
if(array[i]%3 == 0 ){
number = array[i];
sum += number;
}
}
printf("%d",sum);
return 0;
}
3,输入一个数,输出该数的阶乘
#include<stdio.h>
int main(){
int N;
int number=1;
printf("Please enter a number:");
scanf("%d",&N);
for(int i = N; i > 0; i--){
number *= i;
}
printf("%d",number);
return 0;
}
利用递归函数求解
什么是函数?函数就是一段被服用的代码,能够完成某些具体的功能
函数分为:系统调用函数,库函数,用户自己编写的函数
函数的组成部分: 【main函数也是一个函数】
1,函数的返回值:写在最前面。
2.函数的函数名:写在括号前面。
3函数的参数:括号里面的东西。
4:函数主题:{}里面的部分。
5,return 语句:取决于函数是否有返回值
//函数举例
int add(int a,int b){
return 0;
}
函数使用时候:只需要写明函数名与参数即可
简单的函数定义与使用
#include
int add(int a,int b) {
return a+b;
}
int sub(int a,int b) //函数名sub,参数有两个
{
return a-b;
} int main() {
printf("5-3=%d\n",sub(5,3)); //指明要用sub函数,同时给sub函数相应的参数 printf("5+3=%d\n",add(5,3)); return 0;
}