C语言 这是一个很简单的题目,给定2个整数A和B,请输出A+B的和。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言 这是一个很简单的题目,给定2个整数A和B,请输出A+B的和。相关的知识,希望对你有一定的参考价值。

输入数据包含2个整数A和B,其中A和B均为32位int范围内的整数。我的代码如图提交后不能全对求解

#include

int main()

int a,b;

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

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

return 0;

扩展资料:

利用C语言编写一个求两数相加的和的编程思想和方法如下:

1、首先需要定义三个变量a,b,c,两个为相加的数,第三个为相加后得到的和。

2、然后使用scanf()语句接收从键盘输入的两个数,为变量a,b赋值。

3、接着进行a和b的加法运算,将结果赋值给变量c。

4、最后使用printf()语句将计算结果显示在屏幕上。

5、代码编写完毕后,点击运行后即可在调试窗口看到程序的运行结果。

C语言中任意输入两数求和

main()

doublea,b,sum=0;

printf("请输入两个实数:");

scanf("%f%f",&a,&b);

sum=a+b;

printf("%f\\n",sum);

参考技术A C语言 这是一个很简单的题目,给定2个整数A和B,请输出A+B的和。?#include
int main()

int a,b;
scanf("%d%d",&a,&b);
printf("%d\n",a+b);
return 0;

扩展资料:
利用C语言编写一个求两数相加的和的编程思想和方法如下:
1、首先需要定义三个变量a,b,c,两个为相加的数,第三个为相加后得到的和。
2、然后使用scanf()语句接收从键盘输入的两个数,为变量a,b赋值。
3、接着进行a和b的加法运算,将结果赋值给变量c。
4、最后使用printf()语句将计算结果显示在屏幕上。
5、代码编写完毕后,点击运行后即可在调试窗口看到程序的运行结果。
C语言中任意输入两数求和
main()
doublea,b,sum=0;
printf("请输入两个实数:");
scanf("%f%f",&a,&b);
sum=a+b;
printf("%f\n",sum);
参考技术B 时间限制: 1 Sec 内存限制: 128 MB

题目描述

老师布置给小明一个算术任务,要求算出a到b中所有整数的和。由于小明的心算很慢,于是就请你写一个程序来帮助他计算。现在,给定两个正整数a和b,计算所有a到b的所有正整数之和。

输入

第1行: 两个正整数a和b.

输出

所有a到b的所有正整数之和。

样例输入 Copy

2 4

样例输出 Copy

9

提示

【样例解释】

2+3+4=9.
参考技术C 把第9~17行修改为:
sum=a;
sum+=b;
printf("%lld\n",sum);追问

依旧不行

追答

这程序应该能够解决溢出的问题了的。

你原来的代码能对几个点?
要不改为这样试一下?
long long a,b;
scanf("%lld %lld",&a,&b);
printf("%lld\n",a+b);

追问

4个
并没有用
放弃了

本回答被提问者采纳
参考技术D <img>960a304e251f95ca9c3af9c1c4177f3e660952fd</img>追答

图没发过去

追问

溢出咋整

L1-025 正整数A+B

题目:

题的目标很简单,就是求两个正整数AB的和,其中AB都在区间[1,1000]。稍微有点麻烦的是,输入并不保证是两个正整数。

输入格式:

输入在一行给出AB,其间以空格分开。问题是AB不一定是满足要求的正整数,有时候可能是超出范围的数字、负数、带小数点的实数、甚至是一堆乱码。注意:我们把输入中出现的第1个空格认为是AB的分隔。题目保证至少存在一个空格,并且B不是一个空字符串。

输出格式

如果输入的确是两个正整数,则按格式A + B = 和输出。如果某个输入不合要求,则在相应位置输出?,显然此时和也是?

输入样例1:

123 456

输出样例1:

123 + 456 = 579

输入样例2:

22. 18

输出样例2:

? + 18 = ?

输入样例3:

-100 blabla bla...33

输出样例3:

? + ? = ?

 

思路:

    自定义一个函数判断字符串是否为[1,1000]间的整数。用getline接收一行的字符串,再根据第一个空格使用substr进行划分两个字符串。分别调用函数判断这俩字符串是否符合要求,后面的比较好写。

知识点for me:

1、不能像这样输出字符串:printf("%s + %s = %s",s1,s2,res);因为printf只能输出C语言内置的数据,而string不是内置的。如果要用printf输出字符串应该加一个.c_str(),比如printf("%s ", s.c_str());。

2、在用C++的string时也不能使用scanf读取输入。如果一定要用scanf读取的话要这么做:char str[10];  scanf("%s",str); 注意这里没有加&,因为在C语言中数组名就代表该数组的起始地址。涉及到string的输入输出时干脆还是全部用cin,cout或者是getline(cin,str) 读取一行字符串。

3、stoi()可以将string转换成int,stod()可以将string转换成double;to_string()可以将int、double、float等类型的变量转换成string。它们的头文件都是#include <string>。这都是C++11的特性。

 

上代码:

#include <cctype>
#include <string>
#include <iostream>
using namespace std;
bool islegal(string s)
{
    for(int i=0;i<s.length();i++)
    {
        if(!isdigit(s[i]))
            return false;
    }
    if(1<=stoi(s)&&1000>=stoi(s)){
        return true;
    }else{
        return false;
    }
}
int main()
{
   string s,s1,s2,res;
   getline(cin, s);
   for(int i=0;i<s.length();i++)
   {
           if(s[i]== ){
               s1=s.substr(0,i);
               s2=s.substr(i+1);
               break;
           }
   }
   if(!islegal(s1))
   {
           s1="?";
           res="?";
   }          
   if(!islegal(s2))
   {
           s2="?";
        res="?";       
   }
   if(islegal(s1)&&islegal(s2)){
         res=to_string(stoi(s1)+stoi(s2));
   }        
   cout<<s1<<" + "<<s2<<" = "<<res;    
   return 0;
}

 

 

以上是关于C语言 这是一个很简单的题目,给定2个整数A和B,请输出A+B的和。的主要内容,如果未能解决你的问题,请参考以下文章

给定区间[-2的31次方, 2的31次方]内的3个整数AB和C,请判断A+B是否大于C。

C语言新手 给定一段连续的正整数,请判断其中素数的个数

ZZNUOJ_用C语言编写程序实现1218:反转a+b(附完整源码)

ZZNUOJ_用C语言编写程序实现1149:查找子数组(附完整源码)

给定年月日 怎样用C语言编程计算2个日期之间的时间天数

两个整数求平均值很简单?没几个人写对这个代码!