C 如何显示数组中存储的所有元素?
如何显示数组中存储的所有元素?我只想显示所有输入的元素 这是我的代码:C 如何显示数组中存储的所有元素?,c,C,如何显示数组中存储的所有元素?我只想显示所有输入的元素 这是我的代码: #include<stdio.h> #include<conio.h> #include<string.h> struct studinfo{ char remarks, name[100]; float first, second, finalave; }; int main() { struct studinfo stud; int
#include<stdio.h>
#include<conio.h>
#include<string.h>
struct studinfo{
char remarks, name[100];
float first, second, finalave;
};
int main()
{
struct studinfo stud;
int i, n;
char temp;
printf("Enter Number of Student/s to be Stored: ");
scanf("%d", &n);
for (i = 0; i < n; i++)
{
printf("\nEnter Student Name: ");
scanf("%c", &temp);
scanf("%[^\n]", stud.name);
printf("Enter 1st Sem Average: ");
scanf("%f", &stud.first);
printf("Enter 2nd Sem Average: ");
scanf("%f", &stud.second);
stud.finalave = (stud.first + stud.second) /2 ;
printf("\nThe Final Average: %f", stud.finalave);
printf("\n");
}
for (i = 0; i < n; i++)
{
if (stud.finalave > 1.0 && stud.finalave <= 1.25 )
{
stud.remarks = 'S';
}
else if (stud.finalave > 1.5 && stud.finalave <= 1.75)
{
stud.remarks = 'A';
}
else if (stud.finalave > 2.0 && stud.finalave <= 2.5)
{
stud.remarks = 'B';
}
else if (stud.finalave > 2.75 && stud.finalave <= 3.0)
{
stud.remarks = 'C';
}
else if (stud.finalave >= 3.00)
{
stud.remarks = 'F';
}
}
#包括
#包括
#包括
结构studinfo{
字符备注,名称[100];
浮动第一,第二,最后;
};
int main()
{
结构studinfo stud;
inti,n;
焦炭温度;
printf(“输入要存储的学生人数:”;
scanf(“%d”和“&n”);
对于(i=0;i1.0&&stud.finalave 1.5&&stud.finalave 2.0&&stud.finalave 2.75&&stud.finalave=3.00)
{
stud.备注='F';
}
}
这就是显示错误的原因:
printf("\n");
printf("Name\t\tAverage\t\tRemarks\t\tScholarship");
for (i = 0; i < n; i++)
{
printf("\n%s\t%f\t%c", stud.name, stud.finalave, stud.remarks);
}
}
printf(“\n”);
printf(“名称\t\t平均值\t\t标记\t\t标记”);
对于(i=0;i
我对该代码的预期输出是,所有输入的元素都将显示出来,但结果表明,只检测到最后输入的元素。我该怎么办
首先,定义一个结构数组,如
struct studinfo stud[n]
在替换“n”时,可以使用任何变量。然后在获取输入时,使用stud[i]。name
此处i
表示数组的索引。
对于显示,您可以使用与获取输入类似的stud[i].name
#include<stdio.h>
#include<conio.h>
#include<string.h>
struct studinfo{
char remarks, name[100];
float first, second, finalave;
};
int main()
{
int i, n;
char temp;
printf("Enter Number of Student/s to be Stored: ");
scanf("%d", &n);
struct studinfo stud[n];
for (i = 0; i < n; i++)
{
printf("\nEnter Student Name: ");
scanf("%c", &temp);
scanf("%[^\n]", stud[i].name);
printf("Enter 1st Sem Average: ");
scanf("%f", &stud[i].first);
printf("Enter 2nd Sem Average: ");
scanf("%f", &stud[i].second);
stud[i].finalave = (stud[i].first + stud[i].second) /2 ;
printf("\nThe Final Average: %f", stud[i].finalave);
printf("\n");
}
for (i = 0; i < n; i++)
{
if (stud[i].finalave > 1.0 && stud[i].finalave <= 1.25 )
{
stud[i].remarks = 'S';
}
else if (stud[i].finalave > 1.5 && stud[i].finalave <= 1.75)
{
stud[i].remarks = 'A';
}
else if (stud[i].finalave > 2.0 && stud[i].finalave <= 2.5)
{
stud[i].remarks = 'B';
}
else if (stud[i].finalave > 2.75 && stud[i].finalave <= 3.0)
{
stud[i].remarks = 'C';
}
else if (stud[i].finalave >= 3.00)
{
stud[i].remarks = 'F';
}
}
printf("\n");
printf("Name\t\tAverage\t\tRemarks\t\tScholarship");
for (i = 0; i < n; i++)
{
printf("\n%s\t%f\t%c", stud[i].name, stud[i].finalave, stud[i].remarks);
}
}
#包括
#包括
#包括
结构studinfo{
字符备注,名称[100];
浮动第一,第二,最后;
};
int main()
{
inti,n;
焦炭温度;
printf(“输入要存储的学生人数:”;
scanf(“%d”和“&n”);
结构studinfo stud[n];
对于(i=0;i1.0&&螺柱[i].finalave 1.5&&螺柱[i].finalave 2.0&&螺柱[i].finalave 2.75&&螺柱[i].finalave=3.00)
{
螺柱[i]。备注='F';
}
}
printf(“\n”);
printf(“名称\t\t平均值\t\t标记\t\t标记”);
对于(i=0;i
为了澄清一些困惑,您认为第二组信息存储在哪里?或者,一旦你开始进入第二组,你认为第一组在哪里生存?