根据用户输入的整数求和。

程序分析:

while (number == 1)

==运算符是C的相等运算符,该表达式判断number是否等于1。

注意:不要把number==1与number=1混淆,后者是把1赋给status。

根据测试条件number==1,只要number等于1,循环就会重复。每次循环,num的当前值都被加到sum上,这样sum的值始终是当前整数之和。当number的值不为1时,循环结束。然后程序打印sum的最终值。

要让程序正常运行,每次循环都要获取num的一个新值,首先,使用scanf()读取num的一个新值:然后,检查scanf()的返回值判断是否成功获取值。

注意:如果用户输入的不是数字,scanf()会读取失败并返回0。此时,number的值就是0,循环结束。

q to quit

因为输入的字符q不是数字,所它会被放回输入队列中(实际上,不仅仅是q,任何非数值的数据都会导致循环终止,但是提示用户输入q退出程序比提示用户输入一个非数字字符要简单)。

总结:

1、把sum初始化为0;

2、提示用户输入数据;

3、读取用户输入的数据;

4、当输入的数据为整数时,输入加给sum;

5、提示用户再次进行输入

6、再次读取用户输入数据;

7、打印sum的值;

注意:while循环是一个入口条件循环,程序在进入循环体之前必须获取输入的数据并检测其是否为真。所以在while前面要有一个scanf()函数,要让循环继续执行,在循环内需要一个读取数据的语句,所以在while循环最后还要有一个scanf()函数。

方法一:程序如下:

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{int num ,number;int sum = 0;printf("请输入求和的一个数:\n");number=scanf("%d", &num);while (number == 1)//while循环,判断number是否为真{sum = num + sum;printf("请输入下一个数:(q to quit)\n");number=scanf("%d", &num);}printf("这些数的和为%d\n", sum);*/return 0;
}

输出结果如下:

方法二:程序如下(其实就是简化了代码)

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{int num;int sum = 0;printf("请输入求和的一个数:\n");while (scanf("%d", &num) == 1){sum = num + sum;printf("请输入下一个数:(q to quit)\n");}printf("这些数的和为%d\n", sum);return 0;
}

C语言实现根据用户输入的整数求和(两种方法)相关推荐

  1. Java黑皮书课后题第7章:*7.30(模式识别:四个连续相等的数)编写下面的方法,测试某数组是否有四个连续相同值的数。编写测试程序,提示用户输入一个整数列表,调用方法看是否有4个连续且相等的数

    *7.30(模式识别:四个连续相等的数)编写下面的方法,测试某数组是否有四个连续相同值的数.编写测试程序,提示用户输入一个整数列表,调用方法看是否有4个连续且相等的数 题目 题目描述与运行示例 破题 ...

  2. websocket如何区分用户_WebSocket区分不同客户端两种方法(HttpSession和@PathParam)

    介绍 在使用websocket来制作多人即时聊天工具的时候,难免会遇到一个问题,如何区分不同的客户端.想要解决这个问题就等于是要解决这样一个问题:如何把当前登录用户的userId传给服务端呢?因为不同 ...

  3. java 取随机整数_Java获取随机整数的两种方法

    方式一: 使用 Random 类 举例:获取 0~3 范围内(包括 0 和 3 )的 int 类型的随机数 Random random = new Random(); System.out.print ...

  4. C语言斐波那契数列求和两种方法

    递归调用函数: #define _CRT_SECURE_NO_WARNINGS int fun(int n); #include<stdio.h> int main() {//斐波那契数列 ...

  5. python自定义函数实例计算1-n的偶偶数和_python用户输入一个整数N,计算并输出1到N相加的和,请问这个程序错在哪里了?...

    展开全部 第一个错误的地方是for i in str(n),input()输入的是636f707962616964757a686964616f31333431356661整型,循环增加应该用for i ...

  6. Java黑皮书课后题第6章:*6.4(反序显示一个整数)使用下面的方法体编写方法,反序显示一个整数…例如reverse(3456)返回6543,编写一个测试程序,提示用户输入一个整数,然后显示它的反序

    *6.4(反序显示一个整数)使用下面的方法体编写方法,反序显示一个整数-例如reverse(3456)返回6543,编写一个测试程序,提示用户输入一个整数,然后显示它的反序 题目 题目概述 破题 代码 ...

  7. 用户输入一个列表和两个整数作为下标,然后使用切片获取并输出列表中结余两个下标之间的元素组成的子列表。例如,用户输入 [1,2,3,4,5,6]和2,5,程序输出[3,4,5]。

    用户输入一个列表和两个整数作为下标,然后使用切片获取并输出列表中结余两个下标之间的元素组成的子列表.例如,用户输入 [1,2,3,4,5,6]和2,5,程序输出[3,4,5]. a = list(in ...

  8. 用户输入一个整数,求出它的各个位数,并求各位数之和

    import java.util.Scanner; //用户输入一个整数,求出它的各个位数,并求各位数之和 public class splitInteger { public static void ...

  9. python输入一个数字n、计算1到n的和_python用户输入一个整数N,计算并输出1到N相加的和,请问这个程序错在哪里了?...

    第一个错误的地方是for i in str(n),input()输入的是整型,循环增加应该用for in range(n),str(n)并不能起到顺序增加的作用. 第二个错误的地方是print('1到 ...

  10. python编写一个程序、输入一个数判断其是偶数还是奇数_编写一个程序,判断用户输入的整数是偶数还是奇数。 (7.0分)_学小易找答案...

    [其它]已知info=[1,2,3,4,5],请通过两种编程方法,将列表变成info=[5,4,3,2,1] (6.0分) [其它]阅读下面的程序,分析代码是否可以编译通过,如果能编译通过,请列出运行 ...

最新文章

  1. 全局函数(直接使用)
  2. QT中添加背景图片,颜色,以及字体等
  3. jsp页面怎么调用的servlet
  4. js实时获取系统当前时间
  5. JSP页面取当前日期 oracle导入导出 branch与tag
  6. samba登陆密码不正确
  7. 三、Java面向对象编程有四个特征
  8. 通用职责分配软件原则之9-受保护变量原则
  9. matlab图像的主视图,求助大佬【如用MATLAB实现满足投影关系的三视图】
  10. android bitmap转image
  11. map迭代器遍历_一口气写了 HashMap 的 7种遍历方式,被同事夸了
  12. VC++ (MFC)调用 C#生成DLL的方法
  13. 求素数 java 101 200_Java求101~200之间的素数
  14. Execl同时冻结行和列
  15. java并发编程(三)--java中的锁(Lock接口和队列同步器AQS)
  16. STM32F1主从定时器设置
  17. 基于RNN的序列化推荐系统总结
  18. 移动APP和小程序的低代码开发平台有哪些
  19. 看完全都会了!源码解读及如何保证线程安全?BAT大厂面试总结
  20. 我的世界怎么看服务器信息,我的世界怎么查看服务器种子

热门文章

  1. xp怎样修改计算机mac地址,WinXP系统MAC地址修改的方法
  2. iOS UIViewController跳转
  3. php 中文逗号 转英文,PHP把空格、换行符、中文逗号等替换成英文逗号的正则表达式...
  4. 三运放差分放大电路分析_三运放差动放大电路
  5. 个人网站建设专业定制,个人网站建设怎么做
  6. CICD持续集成部署系列2-使用 harbor 搭建 Docker 私有仓库
  7. cesium 贴地+空间+面积测量
  8. 精通 CSS+DIV 网页样式与布局 158
  9. 金仓数据库KingbaseES与Oracle大对象类型之间的区别
  10. windows上的左斜杠和linux上的右斜杠的记忆方式