C语言及程序设计提高例程-17 一维数组的定义和引用

简介: 贺老师教学链接  C语言及程序设计提高 本课讲解引用一维数组元素的方法#include <stdio.h>int main( ){ int a[500],i; int total=0, ave; for(i=0; i<500; i++) { scanf("%d", &a[i]); total+=

贺老师教学链接  C语言及程序设计提高 本课讲解


引用一维数组元素的方法

#include <stdio.h>
int main( )
{
    int a[500],i;
    int total=0, ave;
    for(i=0; i<500; i++)
    {
        scanf("%d", &a[i]);
        total+=a[i];
    }
    ave=total/500;
    printf("%d\n", ave);
    return 0;
}


数组应用示例:当年第几天?
定义一个函数,其参数为年、月、日的值,返回这一天为该年的第几天。
未用数组的方案
#include <stdio.h>
int days(int y, int m, int d);
int main()
{
    int year, month, day;
    printf("输入年月日:");
    scanf("%d %d %d", &year, &month, &day);
    printf("这是该年的第%d天\n", days(year, month, day));
    return 0;
}
int days(int y, int m, int d)
{
    int i, sum=d;
    //加上前m-1月的天数
    for(i=1; i<m; i++)
    {
        switch(i)
        {
        case 2:
            sum+=((y%4==0&&y%100!=0)||y%400==0)?29:28;
            break;
        case 4:
        case 6:
        case 9:
        case 11:
            sum+=30;
            break;
        default:
            sum+=31;
            break;
        }
    }
    return sum;
}


使用数组的方案
#include <stdio.h>
int days(int y, int m, int d);
int main()
{
    int year, month, day;
    printf("输入年月日:");
    scanf("%d %d %d", &year, &month, &day);
    printf("这是该年的第%d天\n", days(year, month, day));
    return 0;
}
int days(int y, int m, int d)
{
    int i, sum=d;
    int a[13]= {0,31,28,31,30,31,30,31,31,30,31,30,31};
    for(i=1; i<m; i++)
        sum+=a[i];
    if(m>2&&((y%4==0&&y%100!=0)||y%400==0)) //若闰年……
        sum++;
    return sum;
}


目录
相关文章
|
6天前
|
C语言
PTA 浙大版《C语言程序设计(第3版)》题目集 习题8-4 报数 (20分)
PTA 浙大版《C语言程序设计(第3版)》题目集 习题8-4 报数 (20分)
|
6天前
|
C语言
C语言 浙大版《C语言程序设计(第3版)》题目集 练习8-8 移动字母 (10分)
C语言 浙大版《C语言程序设计(第3版)》题目集 练习8-8 移动字母 (10分)
|
6天前
|
C语言
浙大版《C语言程序设计(第3版)》题目集 练习8-2 计算两数的和与差 (10分)
浙大版《C语言程序设计(第3版)》题目集 练习8-2 计算两数的和与差 (10分)
|
6天前
|
C语言
pta浙大版《C语言程序设计(第3版)》 习题6-4 使用函数输出指定范围内的Fibonacci数 (20分)
pta浙大版《C语言程序设计(第3版)》 习题6-4 使用函数输出指定范围内的Fibonacci数 (20分)
|
6天前
|
C语言
PTA 浙大版《C语言程序设计(第3版)》题目集 习题8-6 删除字符 (20分)
PTA 浙大版《C语言程序设计(第3版)》题目集 习题8-6 删除字符 (20分)
|
算法 编译器 程序员
C语言学习笔记—P11(数组<2>+图解+题例+三子棋游戏<初级>)
C语言学习笔记(数组<2>+图解+题例+三子棋游戏<初级>)
106 0
C语言学习笔记—P11(数组<2>+图解+题例+三子棋游戏<初级>)
|
存储 C语言
C语言学习笔记—P10(数组<1>+图解+题例)
C语言学习笔记(数组<1>+图解+题例)
101 0
C语言学习笔记—P10(数组<1>+图解+题例)
|
C语言
C语言学习笔记——数组(二)
C语言学习笔记——数组
136 0
C语言学习笔记——数组(二)
|
C语言
C语言学习笔记——数组(一)
C语言学习笔记——数组
139 0
C语言学习笔记——数组(一)
|
机器学习/深度学习 C语言 编译器
【C语言】学习笔记4——数组
我直接把控制语句和循环跳过了。大致看了一下,讲得太繁琐了。这部分在后面用C写数据结构就可以练得很熟了。 1. 数组: 由数据类型相同得一系列元素组成。内存上是一片连续得存储单元。 2. 声明 int nums[5] // 内含5个int类型元素的数组 float ...
973 0