【发布时间】:2015-11-14 06:47:36
【问题描述】:
我刚刚完成了一个计算体重指数表的程序。但是,我无法按预期打印表格。我试图更改 for 循环位置,但它给了我相同的结果。
如果你执行代码,你就会明白我的意思。
实际输出:
预期输出:
我的代码:
#include <stdio.h>
int main(void){
float kg;
float m;
float col;
float bmi;
float cm;
printf(" BMI");
for(kg=50; kg <= 105 ;kg=kg+5) {
printf(" %.0fkg",kg);
}
printf("\n");
for(cm=140; cm <= 220 ;cm=cm+5) {
printf("%.0fcm\n",cm);
}
for(col=1; col <= 12 ;col++) {
for(m=1.4; m <= 2.2 ;m=m+0.05) {
for(kg=50 ;kg <= 105 ;kg=kg+5) {
bmi = kg/(m*m);
printf(" %.1f",bmi);
}
printf("\n");
}
break;
}
return 0;
}
【问题讨论】:
-
只是对未来编辑问题的说明,标题应该总结您的问题并包含最重要的问题。不要将标题放在第一句话的前半部分,然后继续问题中的句子。标题和问题主体在语法上应该是独立的。
-
打印完第一列后,不能返回。因此,您必须在外循环中作为第一件事打印行标签(高度)。您可能还想查看
printf格式的宽度规范。 -
并在此处发布输出和预期输出。
-
@MOehm 我试过了,但它给了我另一个随机表