C 一个接一个地打印记录
我想打印如下数据:C 一个接一个地打印记录,c,C,我想打印如下数据: FirstName FamilyName (33 characters), Tel: xxxxxxxxxx, Age: xx, Level: xx, Salary: xxxxx.xx John Dilbert Tel: 6135202600, Age: 58, Level: 13, Salary: 450.34 Jane Smith Tel: 6135202600, Age: 47, Level: 10, Salary: 133450.00 比如说 John Dilbe
FirstName FamilyName (33 characters), Tel: xxxxxxxxxx, Age: xx, Level: xx, Salary: xxxxx.xx
John Dilbert Tel: 6135202600, Age: 58, Level: 13, Salary: 450.34
Jane Smith Tel: 6135202600, Age: 47, Level: 10, Salary: 133450.00
比如说
John Dilbert Tel: 6135202600, Age: 58, Level: 13, Salary: 450.34
Jane Smith Tel: 6135202600, Age: 47, Level: 10, Salary: 133450.00
我面临的主要问题是如何把电话放在前面。还有,如何设置浮动工资的格式,使小数位数一个接一个
当前我的输出如下所示:
FirstName FamilyName (33 characters), Tel: xxxxxxxxxx, Age: xx, Level: xx, Salary: xxxxx.xx
John Dilbert Tel: 6135202600, Age: 58, Level: 13, Salary: 450.34
Jane Smith Tel: 6135202600, Age: 47, Level: 10, Salary: 133450.00
代码:
void printData(struct person currentPerson){
printf("%s %-33sTel: %10s",currentPerson.firstName,currentPerson.familyName,currentPerson.telephone);
}
void printStudent(struct Student currentStudent){
printf("GPA:%3d, Courses:%3d, Tuition: %5f\n",currentStudent.GPA,currentStudent.coursesCount,currentStudent.tuitionFees);
}
大体上:
printData(person[i]);
printf(", ");
printStudent(person[i].student);
但结果仍然是错误的。为什么?如果要控制数据的宽度,请提供帮助,然后可以在printf格式字符串中使用宽度子说明符。例如:
printf("%5d", 2);
如果要控制数据的宽度,则可以在printf格式字符串中使用宽度子说明符。例如:
printf("%5d", 2);
最后一个双精度值呢?由于字符串的大小差异,姓氏后面的空格计数会不同吗?最后一个双精度值呢?由于字符串的大小差异,姓氏后面的空格计数会不同吗string@JohnKugelman姓氏之后会有不同的空间计数,因为尺寸差异string@JohnKugelman我添加了代码。但结果仍不尽如人意other@JohnKugelman姓氏之后会有不同的空间计数,因为大小的差异string@JohnKugelman我添加了代码。但结果仍然不是一个比另一个低