美文网首页
网易c++------课时46---指针2

网易c++------课时46---指针2

作者: heiqimingren | 来源:发表于2020-11-01 21:12 被阅读0次
image.png
image.png

123


image.png
12
image.png

=============================

image.png
void main()
{
    int *a = NULL;
    int n, i;
    printf("输入整数n(n<40): ");
    scanf("%d", &n);
    /*动态分配n个整数单元存储空间,并将其首地址赋给a。 */
    a = (int *)malloc(n*sizeof(int));
    if (a==NULL) //分配内存失败,则给出错误信息后退出。
    {
        printf("内存不足");
        exit(0);  //程序直接退出。
    }
    //下面将指针a当数组使用
    a[0] = 1;
    a[1] = 1;   //斐波那契级数的初值
    for (i = 2; i < n;i++)
    {
        a[i] = a[i - 1] + a[i - 2];  //计算斐波那挈级数
    }
    for (i = 0; i < n;i++)
    {
        if ((i+1)%5==0)         //每行输出5个数
        {
            printf("%-12d\n", a[i]);
        }
        else
        {
            printf("%-12d", a[i]); //格式符中的“-”表示输出数据左对齐
        }
    }
    printf("\n");
    free(a);      //释放所分配的内存空间
}

====================


image.png

课堂练习:从键盘输入数据的个数n,

#include<stdio.h>
#include<stdlib.h>    //清屏命令在这里。
#include <windows.h> //延时10毫秒-sleep,gotoxy函数
#include <iostream>
#include <conio.h>       //getch()----不用按回车,就可以输入字符。    
#include <graphics.h>      //EasyX库,所使用的!
#include <math.h>         //三角函数
#include <algorithm>      //sort函数排序方法,https://blog.csdn.net/BIGKALA/article/details/81624691,这是方法适用的地址

using namespace std;

void main()
{
    int *a = NULL;
    int n, i;
    printf("输入整数n(n<40): ");
    scanf("%d", &n);
    /*动态分配n个整数单元存储空间,并将其首地址赋给a。 */
    a = (int *)malloc(n*sizeof(int));
    if (a==NULL) //分配内存失败,则给出错误信息后退出。
    {
        printf("内存不足");
        exit(0);  //程序直接退出。
    }
    //下面将指针a当数组使用,进行对数组a的赋值操作。
    for (i = 0; i < n;i++)
    {
        printf("输入一个整数: ");
        scanf("%d", &a[i]);     //一定要加上符号&
    }

    //=====================这是升序写法
    sort(a, a + n);     //这是升序写法
    for (i = 0; i < n; i++)
    {
        cout << a[i] << endl;
    }
    //==========这是升序写法==============



    free(a);      //释放所分配的内存空间
}


image.png

====================

image.png
image.png

11

image.png

12


image.png
image.png
image.png
image.png

=================


image.png

===================
编写函数,实现求一维数组a[5]的平均值


image.png
void main()
{
    int a[5] = { 1, 2, 3, 4, 5 };
    int numsLen = sizeof(a) / sizeof(int);   //该数组的元素个数
    for (int i = 0; i < numsLen; i++) {
        cout << a[i] << '\t';
    }
    cout << endl;
    int sum = 0;
    for (int i = 0; i < numsLen; i++){
        sum += a[i];
    }
    cout << "数列的和为:" << sum << "\t平均值为:" << sum / numsLen << endl;
    system("pause");
}

编写函数,对于一维数组a[5],生成一维数组b[5];如果XXX


image.png
void main()
{
    int a[5] = { 1, 2, 3, 5, -4 };
    int b[5];
    for (int i = 0; i < 5;i++)
    {
        if (a[i]>0)
        {
            b[i] = 1;
        }
        else if (a[i]<0 )
        {
            b[i] = 0;
        }
    }
    for (int i = 0; i < 5;i++)
    {
        cout << b[i] << endl;
    }
}

================


image.png

11


image.png

相关文章

网友评论

      本文标题:网易c++------课时46---指针2

      本文链接:https://www.haomeiwen.com/subject/ybtbpktx.html