请C语言高手告诉我我错在哪里?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请C语言高手告诉我我错在哪里?相关的知识,希望对你有一定的参考价值。

题目是:企业发放的奖金根据利润提成。利润i≤100000元的,奖金可提成10%,档100000<I≤200000时,低于100000元的按10%提成,高于100000元的部分按7.5%提成;200000<I≤400000时,低于200000元的部分任按上述办法提成(下同)。高于200000元的部分按5%提成;400000<I≤600000元时,高于400000元的按3%提成;600000<I≤1000000时,高于600000元的部分按1.5%提成;I>1000000时,超过1000000元的部分按1%提成。从键盘输入当月利润I,求应发奖金总数。

我的答案是:
#include <stdio.h>
int main ()

double i,bonus,bon1,bon2,bon4,bon6,bon10;
printf("请输入利润i:");
scanf("%f",&i);
bon1=i*0.1;
bon2=bon1+(i-100000)*0.075;
bon4=bon2+(i-200000)*0.05;
bon6=bon4+(i-400000)*0.03;
bon10=bon6+(i-600000)*0.015;
if(i<=100000)
bonus=bon1;
else if(i<=200000)
bonus=bon2;
else if(i<=400000)
bonus=bon4;
else if(i<=600000)
bonus=bon6;
else if(i<=1000000)
bonus=bon10;
else
bonus=bon10+(i-1000000)*0.01;
printf("应发奖金总数是:%f\n",bonus);
return 0;


请高手指教,感谢!

输入的时候请用scanf("lf%",&i);
因为i是double型,按照f的浮点数格式输入会导致数值错误,lf对应的是double的输入
其实用float也行

另外你何不一边判断一边计算呢,对比较小的i后面都算成负数了,也不用计算
参考技术A %f是个问题,double转换成float的时候会报错前面把double换成float应该可以了 参考技术B 这跟C语言无关,是你没读懂题意

使用 nextjs 应用程序中的 axios 将文件上传到 graphql api 服务器时我错在哪里?

【中文标题】使用 nextjs 应用程序中的 axios 将文件上传到 graphql api 服务器时我错在哪里?【英文标题】:Where I am wrong when uploading file to graphql api server using axios from nextjs application? 【发布时间】:2021-12-02 13:44:36 【问题描述】:

我正在构建下一个 js 应用程序。我想使用 axios 将文件上传到 graphql 服务器。但是我收到了像图像一样的错误-

但我不明白我错在哪里。请帮帮我。

这里是上传功能-

import Image from "assets/Hero-bg.jpg"

var formData = new FormData();
    formData.append('operations', ' "query": "mutation($file: Upload!) signUp(avatar: $file, input: name: "Siam Ahnaf", email: "siamahnaf198@yahoo.com", password: "siam1980")message, token", "variables":  "file": null  ');
    formData.append('map', ' "0": ["variables.file"] ');
    formData.append('0', Image);
    await axios(
        url: "http://localhost:3001/graphql",
        method: "post",
        data: formData,
        Headers: 
            'Accept': 'application/json'
        
    )
        .then(response => console.log(response))
        .catch(error => console.log(error));

这里是突变查询

mutation signUp($avatar: Upload!) 
  signUp(
    avatar: $avatar
    input:  
      name: "Siam Ahnaf"
      email: "siamahnaf198@yahoo.com"
      password: "12345678" 
  ) 
    message
    token
  

请帮助我。我有很多天至少2个月的问题。我还不能解决。

【问题讨论】:

【参考方案1】:

我认为你是错误的 maltipart json 格式。多部分 json 格式无效。要查看实际错误,请单击网络选项卡,然后查看您面临的错误类型。如果您面临无效的 json 多部分格式。只需更改此代码并重试-

var formData = new FormData();
    formData.append('operations', ' "query": "mutation($file: Upload!) signUp(avatar: $file, input: name: \\"Siam Ahnaf\\", email: \\"siamahnaf198@yahoo.com\\", password: \\"siam1980\\")message, token", "variables":  "file": null  ');
    formData.append('map', ' "0": ["variables.file"] ');
    formData.append('0', Image);
    await axios(
        url: "http://localhost:3001/graphql",
        method: "post",
        data: formData,
        Headers: 
            'Content-Type': 'application/json'
        
    )
        .then(response => console.log(response))
        .catch(error => console.log(error));

【讨论】:

以上是关于请C语言高手告诉我我错在哪里?的主要内容,如果未能解决你的问题,请参考以下文章

C语言高手请进

数据结构高手,或者C语言告诉,看看哪里错了,编译不过呀,显示有很多错误

简单C语言,求回答..................(告诉我哪里错了)

C语言用typedef定义一个单向链表的节点的数据结构,请大侠看看我这种方式错在哪里?如何修改?

帮忙看一下这个C语言程序错在哪里了

C语言:下列程序哪里有错误,包括语法和算法,请高手纠正。