第七章知识点

1.数组:相同数据类型的有序集合,在内存中连续存放。

一般形式:类型名 数组名[数组长度]
2.数组长度是一个常量
3.数组是一个地址常量,存放数组内存的首地址。例如:a[0]地址为4010,则a[2]地址为4010+类型字节长度*2.
4.数组引用:一般形式:数组名[下标]。合理取值范围[0,数组长度-1](数组下标从0开始,不能越界)
5.一维数组初始化:类型名 数组名[数组长度]={初值表};(如果对全部元素都赋予初值,数组长度可以省略)(只有静态数组可以初始化,静态数组的元素默认初始化为0,动态数组没有初始化的元素为随机值)
6.动态数组auto int a[ ];等价于int a[ ];
7.二维数组定义形式:数组名[行长度] [列长度]; 
8.二位数组的赋值形式:1.分行赋值:类型名 数组名 [行长度] [列长度] = {{初值表0},{初值表1},···,{初值表k},···}(如果依次给省略:{1,2,3,0,0,0,4,5,6}等价于{{1,2,3},{    },{4,5,6}})2.顺序赋值:类型名 数组名 [行长度] [列长度] = {初值表};
9.二维数组在内存中按行优先方式存放。
10.主对角线——i==j;上三角形——i<=j;下三角形——i>=j;副对角线——i+j==N-1;行列互换可用到。
11.'\0'表示空操作,无法输入,因此输入字符串时,需要事先设定一个输入结束符。一旦输入它,表示字符串结束输入,并将输入结束符转换为结束符'\0'。在'\0'前都是字符串的有效字符,一般用它来控制循环。(例如:happy的有效长度为5,存储它的字符串长度至少为6。{'h','a','p','p','y','\0'})

12.字符串由有效字符和字符串结束符'\0'组成。


1.计算天数 :

#include <stdio.h>
int day_of_year(int year,int month,int day);
int main(void) {
    int year,month,day;
    printf("enter year:");
    scanf("%d",&year);
    printf("enter month:");
    scanf("%d",&month);
    printf("enter day:");
    scanf("%d",&day);
    printf("剩余%d天",day_of_year(year,month,day));
    return 0;
}

int day_of_year(int year,int month,int day){
    int k,leap;
    int tab[2][13]={
        {0,31,28,31,30,31,30,31,31,30,31,30,31},
        {0,31,29,31,30,31,30,31,31,30,31,30,31}
    };
    leap=(year%4==0&&year%100!=0)||(year%400==0);
        for(k=1;k<month;k++){
    day=day+tab[leap][k];
    }
    return day;
}

2.判断回文

#include <stdio.h>
#define max 80
int main(void) {
    int i,k;
    char line[max];
    printf("enter a string:");
    k=0;
    while((line[k]=getchar())!='\n'){
        k++;
    }
    line[k]='\0'; //存入结束符号'\0'
    i=0;
    k=k-1;
    while(i<k){
        if(line[i]!=line[k]){
        break;
    }
    i++;
    k--;
}
    if(i>=k){
        printf("yes\n");
    }else{
        printf("no\n");
    }
    return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值