注册 登录
编程论坛 C语言论坛

大一新生学c语言,不懂,请大神指教!

狐少 发布于 2019-11-22 20:07, 2114 次点击
#include <stdio.h>

intmain()
{
int a,b,c,s;

 scanf("%d,%d,%d",&a,&b,&c);

 s=a+b+c;

 printf("%d=%d+%d+%d\n",a,b,c);

 printf("%d=%d+%d+%d\n", s);

 return 0;
}
大一新生,初学,书上作业没答案,问老师,老师叫自己看书,可是鄙人愚钝还是不会,这串代码中,题目要改正源程序的错误。输入输出实例为
3  4  5
12=3+4+5
3+4+5=12
很基础,不知道诸位大哥可以教教小弟不
9 回复
#2
摩托车诗人2019-11-22 21:38
#include<stdio.h>
int main()
{int a,b,c,s;
scanf("%d,%d,%d",&a,&b,&c);
printf("%d  %d  %d  \n",a,b,c);
s=a+b+c;
printf("%d=%d+%d+%d\n",s,a,b,c);
printf("%d+%d+%d=%d",a,b,c,s);
}
#3
狐少2019-11-22 22:11
回复 2楼 摩托车诗人
谢谢大佬
#4
摩托车诗人2019-11-22 22:27
#include<stdio.h>
int main()
{int a,b,c,s;
scanf("%d,%d,%d",&a,&b,&c);
printf("%d  %d  %d  \n",a,b,c);
s=a+b+c;
printf("%d=%d+%d+%d\n",s,a,b,c);
printf("%d+%d+%d=%d",a,b,c,s);
}

已经验证过正确性了,首先你刚开始输入进来的数没有输出一遍,你输出也错了,你想输出一个表达式,里面的变量四个,都是%d格式的即十进制输出
#5
摩托车诗人2019-11-22 22:56
1.我也是新手,进度比你稍微快些,不是大佬哈。
2.你的代码中有以下这些问题有待解决(我的看法哈,这些前面的前几天学过,可以加我微信咱们一起学习共同进步fh31817855346021):1)int是关键字,告诉系统后面定义的函数类型是整型,main是 主函数的名字,把int和main连起来,计算机是傻傻的他可能会吧intmain当成一个你起的一个名字东西。失去了原本定义的目的。2)如果你想输出s=a+b+c  那么你的输出格式跟这个也要对起来printf("%d=%d+%d+%d\n",s,a,b,c);对比一下其实就是%d替换了所有变量名,你输出时候依次填上去就行了。3)输出三次,但是你只输出了两次
#6
狐少2019-11-23 19:31
回复 5楼 摩托车诗人
谢谢  懂了一点我再看看
#7
狐少2019-11-23 19:32
回复 4楼 摩托车诗人
嗯  谢谢  懂了一点
#8
狐少2019-11-23 19:35
回复 4楼 摩托车诗人
#include<stdio.h>
#include<math.h>
int main()
{
    double a,b,c,s,p;
    printf("input  a,b,c:");
    scanf("%1f,%1f,%1f",&a,&b,&c);
    p=(a+b+c)/2;
    s=sqrt(p*(p-a)*(p-b)*(p-c));
    printf("s=%f\n",s);
    return 0;
}
  哥这个程序哪里出问题了?   输入3.0,4.0,5.0后   s的值变得超大   是不是数的类型搞错了?
#9
forever742019-11-24 09:28
字母L的小写形式长得和数字1有点像,你需要慧眼区别它们。
#10
狐少2019-11-24 16:12
回复 9楼 forever74
哦哦   原来如此     谢谢了
1