#include <stdio.h>
pac()
{
int i,j,k,size;
char ns[size];
int nss[size];
printf("ENTER THE NUMBER OF STUDENTS: ");
scanf("%d",size);
for(i=0;i<size;i++)
{
printf("ENTER THE NAME OF STUDENT: ");
scanf("%c",ns[i]);
}
for(j=0;j<size;j++)
{
printf("ENTER THE MARKS OF THE STUDENT: ");
scanf("%d",nss[j]);
}
for(k=0;k<size;k++)
{
printf("%c",ns[i]);
}
}
main()
{
pac();
}
我知道错误太小,但我是 C 的新手,所以请告诉我错误。在第一次输入学生人数后,此代码中存在段错误。
改变
scanf("%d",size);
^You missed & operator here.
到
scanf("%d", &size);
现在因为您正在使用 VLA,所以您需要在获取 size
的值之后放置您的 VLA 声明。
printf("ENTER THE NUMBER OF STUDENTS: ");
scanf("%d", &size);
char ns[size];
int nss[size];
我是一名优秀的程序员,十分优秀!