[問題] scanf
遇到的問題: (題意請描述清楚)
以下是目前寫的程式
#include <iostream>
#include <stdlib.h>
#include <stdio.h>
double MyRand(double a, double b);
double cost(double ice,double pearl, double sugar);
struct sCustomer
{
double IdealIce;
double IdealPearl;
double IdealSugar;
};
int main()
{
int invest;
double x, RealIce, RealPearl, RealSugar;
struct sCustomer first;
srand(1234);
printf("輸入欲投資的金額(萬元):");
scanf("%d",&invest);
printf("配方(依序輸入冰、珍珠及糖):");
scanf("%f %f %f",&RealIce,&RealPearl,&RealSugar);
x = cost(RealIce, RealPearl, RealSugar);
printf("The cost is %f\n",x);
first.IdealIce = MyRand(10.0,30.0);
first.IdealPearl = MyRand(5.0,20.0);
first.IdealSugar = MyRand(10.0,22.0);
printf("The IdealIce is %f\n",first.IdealIce);
printf("The IdealPearl is %f\n",first.IdealPearl);
printf("The IdealSugar is %f\n",first.IdealSugar);
system("pause");
return(0);
}
//回傳一個a至b的變數
double MyRand(double a, double b)
{
return((b-a)*rand()/(double)RAND_MAX+a);
}
//計算成本
double cost(double ice,double pearl, double sugar)
{
return(ice*0.01 + pearl*0.1 + sugar*0.5 + 0.5);
}
在debug的時候出現 warning C4996: 'scanf': This function or variable may be
unsafe. Consider using scanf_s instead.
To disable deprecation, use _CRT_SECURE_NO_WARNINGS.
See online help for details.
在我的寫法中 scanf 使用上不知道有何處不完整 看起來沒有錯耶@@
我在輸出x值時,卻出現亂碼
之後我先給RealIce, RealPearl, RealSugar的初始值而不用scanf
x就對了
所以我想應該是scanf的地方有錯 可是不知道應如何修正
謝謝各位幫忙
開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux)
visual studio 2008
補充說明:
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.122.112.112
→
10/11 01:38, , 1F
10/11 01:38, 1F
→
10/11 01:39, , 2F
10/11 01:39, 2F
→
10/11 01:40, , 3F
10/11 01:40, 3F
→
10/11 01:40, , 4F
10/11 01:40, 4F
→
10/11 01:41, , 5F
10/11 01:41, 5F
推
10/11 02:16, , 6F
10/11 02:16, 6F
→
10/11 02:37, , 7F
10/11 02:37, 7F
→
10/11 02:37, , 8F
10/11 02:37, 8F
推
10/11 02:43, , 9F
10/11 02:43, 9F
推
10/11 05:07, , 10F
10/11 05:07, 10F
→
10/11 05:13, , 11F
10/11 05:13, 11F
→
10/11 05:13, , 12F
10/11 05:13, 12F
→
10/11 08:41, , 13F
10/11 08:41, 13F