求
根据提示,编写一个程序, 对用户录入的产品信息进行格式化。下面是我写的
#include<stdio.h>
int main(void)
{
int item,purchase;
float unit;
printf("Enter item number:\n");
scanf("%d",&item);
printf("Enter unit price:\n");
scanf("%f",&unit);
printf("Enter purchase date (mm/dd/yy):\n");
scanf("%d %d %d",&purchase); //这里为什么输入三个%d不行啊
printf("Item Unit Purchase\n");
printf("%d $ %.2f %02d%02d%02d",item,unit,purchase) ; //这里出来的数字和我输入的不同
return 0;
}
最后是这样的
Enter item number:
Enter unit price:
Enter purchase date (mm/dd/yy):
Item Unit Purchase
385 $ 12.50 12032015
本帖最后由 jackz007 于 2022-11-29 15:13 编辑
scanf("%d %d %d",&purchase); //这里为什么输入三个%d不行啊
你才写了 3 个 %d,是不是还是感觉有点少???
不要搞错了,写代码是在 "别人屋檐" 下,可不是在 "父母怀抱" 中,没有人会宠你迁就你,不可以随意撒娇任性,必须老老实实守规矩!!! scanf("%d %d %d",&purchase);
输入了3个int,却只有一个参数去接收,肯定会报错,可以再声明两个int的参数去接收剩余的value:
int num2, num3;
scanf("%d %d %d",&purchase, &num2, &num3); weimengnan006 发表于 2022-11-29 17:27
输入了3个int,却只有一个参数去接收,肯定会报错,可以再声明两个int的参数去接收剩余的value:
可以写成
scanf("%d %d %d",&purchase1,&purchase2,&purchase3);
吗? 0unique0 发表于 2022-12-3 10:53
可以写成
scanf("%d %d %d",&purchase1,&purchase2,&purchase3);
吗?
写法没错,但是你要提前声明purchase1,purchase2,purchase3,不然编译器无法识别你这三个参数是什么 3个%d要对应3个整形变量与之对应
页:
[1]