image.png
123
image.png
12
image.png
=============================
image.pngvoid 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.pngimage.png
11
image.png12
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
网友评论