在for循环中添加新行.C编程



嗨,这是我上大学的第一年,我们有一个关于数组的C编程作业。我设法写我的代码,但我唯一的问题是添加间距或新行,而仍然在for循环内,用户仍然可以输入。空格或新行在number[2]之后,从而将number[3]number[4]与其他部分分开。

期望的输出是:

Enter number [0]: 70
Enter number [1]: 89
Enter number [2]: 90    (Enter Key)
Enter number [3]: 76
Enter number [4]: 78 
number [0]: 70
number [1]: 89
number [2]: 90    

number [3]: 76
number [4]: 78

Highest Grade : 90
Lowest Grade  : 70

Average Grade:

这是我的代码。(对不起,我是初学者,空格或格式不好)

int main(){

int Agrades[5];
int BGrades=5;
int average=0;
int highest, lowest;
for (int i=0; i<BGrades; ++i){
printf("Enter Number[%d]:",i);
scanf("%d",&Agrades[i]);
}
for (int i=0; i<BGrades; ++i){
printf("nNumber[%d]:%d",i, Agrades[i]);
}
for (int i=0; i<BGrades; ++i)
average+=Agrades[i];
average= average/5;
lowest=highest=Agrades[0];
for(int i=1; i<5; i++)
{
if(lowest>Agrades[i])
lowest=Agrades[i];   
if(highest<Agrades[i])
highest=Agrades[i];       
}
printf("nnHighest Grade: %d", highest);
printf("nLowest Grade: %d", lowest);
printf("nnAverage Grade: %d", average);

return 0;
}

下面是我所做的代码的输出:输入图片描述

一个简单的if检查就可以了

for (int i = 0; i < BGrades; ++i)
{
printf("nNumber[%d]:%d", i, Agrades[i]);
if (i == 2)
{
puts("n");    // or printf("n"); to skip just 1 line
}
}

else如果你希望在用户输入时添加n字符,那么最好使用字符串实现,在输入阶段添加n,然后在打印它们时将字符串解析为整型,或者如果数据类型不是问题,则将它们作为字符串打印。

如果您希望实现第二个版本,请指定以便我可以修改我的答案

当前输出为:

>> gcc -o test test.c
>> ./test
Enter Number[0]:1
Enter Number[1]:2
Enter Number[2]:3
Enter Number[3]:4
Enter Number[4]:5
Number[0]:1
Number[1]:2
Number[2]:3

Number[3]:4
Number[4]:5
Highest Grade: 5
Lowest Grade: 1
Average Grade: 3

相关内容

  • 没有找到相关文章

最新更新