#include <stdio.h> #include <stdlib.h> int main() { int n; printf("请输入需要查看几个学生成绩的个数\n"); scanf("%d",&n);//输入,用于下面for循环中的n // int parray[n];//这种写法,很多教材中说的是非法的 int *parray = (int *) malloc (n * sizeof(int)); //定义parray指针变量,malloc用于开辟内存空间 如果输入的是5,n=5那么开辟5个整型变量的内存空间 if(parray==NULL)//如果内存空间为空,说明开辟失败 { printf("开辟空间失败\n"); } int i; for(i=0;i<n;i++)//输入n个学生的成绩 { printf("请输入第%d个学生的成绩:\n",(i+1)); scanf("%d",&parray[i]); } for (i=0;i<n;i++)//遍历出n个学生的成绩 { printf("第%d个学生的成绩是%d\n",(i+1), parray[i]); //n+1指0+1个(中国人第一个数是一,外国人第一个数是0),后面是地址中的值 } system("pause"); return 0; }
如有不足之处请批评指正