微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

打印可以相加得到给定和的元素

打印可以相加得到给定和的元素

输入用户想要输入的元素数量,然后输入用户想要从给定元素列表计算的总值。

Input : N=5
   Enter any 5 values : 3 1 6 5 7
   Enter sum you want to check : 10
Output : 3 1 6

算法

START
STEP1-> Take values from the user
STEP2-> Take the sum a user want to check in the set.
STEP3-> For i = 0; i < n; i++
STEP4-> Check If sum - *(ptr+i) >= 0 then,
   STEP4.1-> sum -= *(ptr+i);
   STEP4.2-> Print the value of *(ptr+i)
END If
END For
STOP

示例

#include <stdio.h>
int main(int argc, char const *argv[]){
   int *ptr, n, i, sum;
   printf("Enter number of digits you want to enter");
   scanf("%d", &n);
   ptr = (int*)malloc(sizeof(int)*n); //Dynamically allocating the memory of int
   type
   printf("Enter %d elements", n);
   for(i = 0; i < n; i++) {
      scanf("%d", (ptr+i)); //Inputting the value in dynamically
      //allocated array
   }
   printf("Enter the sum you want to check");
   scanf("%d", &sum);
   for ( i = 0; i < n; i++) {
      if(sum - *(ptr+i) >= 0) { //Checking the values which can be added to form the sum
         X
         sum -= *(ptr+i); //Updating the value of sum
         printf("%d ", *(ptr+i)); //Printing the Values which can be summed up to form sum
      }
   }
   return 0;
}

输出

如果我们运行上面的程序,它将生成以下输出

Enter number of digits you want to enter
5
Enter 5 elements
3
1
6
5
7
Enter the sum you want to check
10
3 1 6

以上就是打印可以相加得到给定和的元素的详细内容,更多请关注编程之家其它相关文章

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐