如果只是单纯药品名 那就 输入几个字符串 用空格空开 (我一般都是用空格当间隔符 用其他符号也可以 在scanf语句中体现出来就可以)
scanf("%s %s %s %s",name1,name2,name3,name4);
如果是几个药品的所有信息那么同样可以用空格隔开信息 但是这样就会很长大致模拟了一下
#include<stdio.h>
struct drug{
char name[20];
char id[10];
char func[50];
char use [50];
float price;
};
int main(){
struct drug d[3];
for(int i = 0;i<3;i++){
scanf("%s %s %s %s %f",d[i].name,d[i].id,d[i].func,d[i].use,&d[i].price);
}
printf("名称\tID\t功能\t用法\t价格\n");
for(int i = 0;i<3;i++){
printf("%s\t%s\t%s\t%s\t%f\n",d[i].name,d[i].id,d[i].func,d[i].use,d[i].price);
}
}
运行效果:
也不一定要像我这样一行输入完毕 可以输入一个药品的信息然后回车 换行再写第二个 同样可以