c - 添加学生人数
问题描述
试图制作一个存储学生信息的程序,到目前为止,当用户应该选择应该存储的学生数量时,我遇到了一个问题。也许我错过了一些东西,但我找不到它,当我在这种情况下不使用 n(要存储的学生人数)作为 10 时,它工作正常,然后 10 名学生注册但现在我想改变它,所以用户应该选择要添加多少学生。
在用户选择学生人数后,它会跳过“存储信息”部分并跳到最后,所以我的猜测是问题一定是 n。
struct student
{
char name[50], number[13], gender[6], program[50], age[3], email[100];
int roll;
} s[10];
main();
int i, n;
printf("Enter how many students to add:\n");
scanf("%s", &n);
// storing information
i = 0;
for (i; i < n; ++i)
{
s[i].roll = i + 1;
printf("\nFor roll number%d\n", s[i].roll); //number of the student
printf("Enter name: \n");
scanf("%s", s[i].name);
printf("Enter personal number (yyyymmdd-xxxx):\n");
scanf("%s", &s[i].number);
printf("Enter gender (male or female):\n");
scanf("%s", &s[i].gender);
printf("Enter program of student: \n");
scanf("%s", &s[i].program);
printf("Enter age of student: \n");
scanf("%s", &s[i].age);
printf("Enter email of student: \n");
scanf("%s", &s[i].email);
printf("\n");
}
printf("Displaying Information:\n");
解决方案
struct student
{
char name[50], number[13], gender[6], program[50], age[3], email[100];
int roll;
} s[10];
int main(){
int i, n;
printf("Enter how many students to add:\n");
// the problem was here
scanf("%d", &n);
// storing information
i = 0;
for (i; i < n; ++i)
{
s[i].roll = i + 1;
printf("\nFor roll number%d\n", s[i].roll); //number of the student
printf("Enter name: \n");
scanf("%s", s[i].name);
printf("Enter personal number (yyyymmdd-xxxx):\n");
scanf("%s", &s[i].number);
printf("Enter gender (male or female):\n");
scanf("%s", &s[i].gender);
printf("Enter program of student: \n");
scanf("%s", &s[i].program);
printf("Enter age of student: \n");
scanf("%s", &s[i].age);
printf("Enter email of student: \n");
scanf("%s", &s[i].email);
printf("\n");
}
printf("Displaying Information:\n");}
%s 格式用于字符串,%d 用于整数
推荐阅读
- javascript - 获取输入类型“文本”的动态值
- bash - 使用命令行数据块提交具有不同参数的作业
- c# - 如何概括代码以在 WPF 应用程序中每个窗口只允许一个实例
- vhdl - Basys2 FPGA板上的VHDL简单七段显示
- apache-spark - 如何在流式传输 Dataframe 时读取和显示示例(10)记录?
- javascript - 按对象数组分组
- typescript - StaticInjectorError(Platform: core)[Config]:NullInjectorError: No provider for Config!NullInjectorError:StaticInjectorError(AppModule)[配置]:
- flutter - 当我实现启动画面时,应用程序崩溃了
- django - 如何以编程方式设置格式化程序?
- applescript - 使用 Applescript 删除随机字符链