本帖最后由 Jesp 于 2020-3-18 12:00 编辑
新手学习c语言,自制一个小工具——薪资计算器
定义了存储器(int sanm;//用户输入的数字,用作用户输入了数字几,然后当作有几个月的提成)
还有一个月固定的收入(double yiyue;// 一月)
提成(double ticheng;)
上次调试前double的都是float,结尾保留数字用了%0.2f。
现在就是我需要输入几个月的提成,然后for循环那边老出错,比如我输入要统计6个月的提成,他就只显示几个月,然后直接跳出循环了。后来我加上了一个判断的,但还是不行
[C] 纯文本查看 复制代码 #include<stdio.h>
#include<stdlib.h>
int main(void) {
int sanm; //用户输入的数字
double yiyue;// 一月
double ticheng;
ticheng = 0;
//开始计算
printf("\n\n\t\t\t\t\t您的月薪是:"
);
scanf_s("\n\n%lf", &yiyue
);
printf("\n\t\t\t\t\t你要统计几个月的薪资(按月统计)"
);
scanf_s("\n\n%d", &sanm
);
printf("\n\t\t\t\t\t您的这"
);
printf("%d", sanm
);
printf("个月提成分别是:"
);
for (int i = 1; sanm >= i; i++) {
double p;
scanf_s("\n\t\t\t\t\t%lf\n", &p);
ticheng = ticheng + p;
if (i = sanm)
{
break;
}
}
printf("\n\n\n\n\t\t\t\t\t您这"
);
printf("%d", sanm
);
printf("个月的薪资是:%.2g$", yiyue * sanm + ticheng
);
printf("\n\n\t\t\t\t\t您 的 年 薪 是:%.2g$(不算提成)", yiyue * 12
);
printf("\a\n\n\t\t\t\t\t您 "
);
printf("%d", sanm
);
printf(" 个 月 总 计:%.2g$\n\n\n\n\n", yiyue * sanm + ticheng
);
//计算结束!!!!
return 0;
}
经过模仿大佬的步伐后:
[C] 纯文本查看 复制代码 #include<stdio.h>
#include<stdlib.h>
int main(void) {
int sanm; //用户输入的数字
float yiyue;// 一月
float ticheng;
ticheng = 0.0;
//开始计算
printf("\n\n\t\t\t\t\t您的月薪是:");
scanf_s("%f", &yiyue);
printf("\n\t\t\t\t\t你要统计几个月的薪资(按月统计)");
scanf_s("%d", &sanm);
printf("\n\t\t\t\t\t您的这");
printf("%d", sanm);
printf("个月提成分别是:");
for (int i = 1; i <= sanm; i++)
{
float p;
printf("\n\t\t\t\t\t请输入第%d个月的提成:", i);
scanf_s("%f", &p);
printf("\n\t\t\t\t\t你输入了第%d个月的提成:%.2f\n", i, p);
printf("\t\t\t\t\t");
ticheng = ticheng + p;
}
printf("\n\t\t\t\t\t您这");
printf("%d", sanm);
printf("个月的薪资是:%.2f$", yiyue * sanm + ticheng);
printf("\n\t\t\t\t\t您 的 年 薪 是:%.2f$(不算提成)", yiyue * 12);
printf("\a\n\t\t\t\t\t您 ");
printf("%d", sanm);
printf(" 个 月 总 计:%.2f$\n\n\n", yiyue * sanm + ticheng);
//计算结束!!!!
system("Pause");
return 0;
} |