C++输入一个正整数(短整数),计算出各位数字之和,各位数字的平均和,反复执行,直到输入的数为-999为止。

作者&投稿:甘温 (若有异议请与网页底部的电邮联系)
编程语言C++类引用问题float&~

java 和 c# 等语言有自动内存回收机制,可以不考虑此等问题;C++内存回收需要自己编程处理,一般几个变量的使用频率较低的变量可以忽略,只有占用内存较多的或使用频率较多的变量,需要编程主动回收。C++的内存机制也不是你所理解的那么弱,也是有一套保障机制的,只是为了效率,不主动监测回收,只要注意需要回收的变量,可以放心使用。

c/c++,c的编译器有很多种主要有,在Windows下用vc/visual studio编译器微软的。

Linux下面主要用Gcc编译器Linux下c++用的是QT Creator,g++
c++主要是得话在Windows下主要是visual studio,QT Creator。

#include <iostream>                     //控制台操作头文件

int Add(int a[],int n)                  //求数组a中n个元素的和
{int i,s;                               //循环变量与和
 for(i=0,s=0;i<n;i++) s+=a[i];          //求出n个元素的和
 return s;}                             //返回各位的总和
  
double Ver(int a[],int n)               //求数组a中n个元素的平均值 
{int i;                                 //循环变量
 double s;                              //平均值 
 for(i=0,s=0;i<n;i++) s+=a[i];          //求出n个元素的和
 return s/n;}                           //返回各位的平均值

 int main()                             //主函数
{int a[16],                             //用于存放各位数的数组
     n,t,i;                             //整型变量
 do{printf("请输入一个整数(-999退出):");//输入提示
    scanf("%d",&n);                     //输入一个数给n
    if(n==-999) break;                  //如果输入-999结束循环
 for(t=n,i=0;t;t=t/10) a[i++]=t%10;     //用循环分离出n的各位数放进数组a
 if(n==0) a[0]=0,i=1;                   //n等于0比较特殊,要特殊处理
 printf("%d共有%d位,",n,i);             //输出这个数有几位 
 printf("各位的和是%d,",Add(a,i));      //输出各位的和 
 printf("平均是%lf

",Ver(a,i));}     //输出各位的平均值 
    while(1);                           //无穷循环
 printf("
");                          //输完所有数再空一行
 system("PAUSE");                       //屏幕暂停,以便看到显示结果
 return 0;}                             //结束程序
 
 以上程序在DEV C++运行通过.



类似快速读入一样地搞一下即可

#include<bits/stdc++.h>
using namespace std;
int a,b;

bool read(int &x,int &y){
char c=getchar();short f=1;
while(c<=' ')c=getchar();
if(c=='-')f=-1,c=getchar();
for(x=y=0;'0'<=c&&c<='9';c=getchar()){c-=48;x=x*10+c;y+=c;}
x*=f;
return x!=-999;
}

int main(){
while(read(a,b))printf("%d
",b);
}



用C语言编程从键盘输入一个正整数,判断其个位数是否为5,若是5则输出...
include <stdio.h> int main(){ int five;printf("输入一个整数:");scanf("%d",&five);while(five>10){ five = five%10;} if(five == 5)printf("yes");else printf("no");return 0;}

. c语言编程:输入一个正整数,统计该数的各位数字中零的个数,并求各位...
include <stdio.h> int main(){ int n,t,count=0,max=0;printf("请输入正整数n: ");scanf("%d",&n);while(n){ t=n%10;if(t==0)count++;else if(t>max)max=t;n=n\/10;} printf("count=%d,max=%d\\n",count,max);return 0;} count:0的个数。max:各位数字中的最大者 ...

输入一个正整数n,再输入n个整数,输出最小值 c语言
你题目有没有写全,如果按照你这个题目,没有规定输入整数的位数,考虑要输入任意位数的数字,那么数字就不能使用已有的整数类型来保存(比如int只有4个字节大小,超出就溢出了)。我写的是任意长度的数字输入,比较取最小值。(你内存够就行)include <stdio.h>#include <malloc.h>#include <string....

c语言作业:输入一个正整数求出它是几位数;输出原数和位数,对每一位进行...
include <stdio.h> int weishu(long n,int a[]){int i=0;while(n){ a[i++]=n%10;n\/=10;} return i;} void main (void){ long n;int k,i,j,t,a[20];scanf("%ld",&n);printf("原数:%ld\\n",n);k=weishu(n,a);printf("位数:%d\\n",k);for(i=0;i<k-1;i++)...

C语言编程 输入一个不多于九位的正整数,要求输出它是几位数
此程序可通过以下步骤实现:1、输入一个正整数 2、将整数转换为字符串(使用sprintf函数)3、求字符串的长度(strlen函数),即正整数的位数 代码如下:include <stdio.h>#include <string.h>int main(){long num;char str[20];scanf("%ld", &num);sprintf(str, "%ld", num);printf("%d", ...

输入一个正整数n(1< n ≤10),再输入n个整数,将最小值与第一个数交换...
include <stdio.h> int main(void){ int n,i,a[10],max,min,temp,r,p;scanf("%d",&n);for (i=1;i<=10;i++)scanf("%d",&a[i]);min=a[1];for (i=1;i<=n;i++){ if (a[i]<a[1]){ min=a[i];r=i;} } temp=a[1],a[1]=min,a[r]=temp;max=a[n];for...

C语言题目,输入一个正整数n,输出该数各位数字的积 例如,输入1234 输出...
include <stdio.h> int main(){ int num,s=1;scanf("%d",&num);while(num>0){ s=s*(num%10);num\/=10;} printf("每位数之积是:%d\\n",s);return 0;}

由键盘输入一个正整数,找出大于或者等于该数的第一个素数
Private Sub form_click()Dim p As Integer, x As Integer, flag As Boolean flag = False '这里应是false,否则无法执行 x = InputBox("请输入一个正整数", "输入正整数")Do While Not flag '只有标记为真时,才执行 p = 2 '1不可以为素数,所以选2 flag = True '把标记设为真 Do ...

C语言 从键盘上输入一个正整数,计算并输出该数的各位数字之和
输出该数的各位数字之和的源代码如下:include <stdio.h> int fun(int n){ int i;int sum=0;if(n>1000||n<0){ puts("输入的数字超出范围!"); \/\/ 错误信息提示 } else { for(i=2;i<n;i++) \/\/ 循环遍历n,取出因子,并进行累加 { if(0 == n%i){ sum+=i;} } } return...

C语言编程:输入一个正整数,输出如下图形,例如输入5,输出的图形如下...
include<stdio.h> int main(){ int i,j,k,n;printf("请输入一个数字:");scanf("%d",&n);for(i=1,k=-1;i<=n;i++,k+=2){ for(j=0;j<n-i;j++) printf("%c",32);printf("%d",i);if(k>0){ for(j=0;j<k;j++) printf("%c",32);printf("%d",i);} printf(...

汉阳区13389813711: C++输入一个正整数,计算出各位数字之和,各位数字的平均和,反复执行,直到输入的数 -
肇韩悉能: #include "stdio.h"#include "stdlib.h" int getsum(int arr[],int len) { int sum = 0; for(int i = 0;i{ sum += arr[i]; } return sum; } double getaverage(int arr[],int len) { int sum = getsum(arr,len); return ((double)sum)/len; } void main() { int a; printf("请输...

汉阳区13389813711: 编写程序,输入一个正整数,计算并显示该整数的各位数字之和,例如1987各位数字之和是1+9+8+7=25.用VC++编写 -
肇韩悉能: #include"stdio.h" void main() { int i=0,j=0,k=0; printf("请输入一个正整数:"); scanf("%d",&i); for(;i>0;i/=10) { k=i%10; j+=k; } printf("%d",j); } 上面就是用c语言编的,应该是你的意思,希望对你有帮助!呵呵!

汉阳区13389813711: C语言程序设计:编写程序,输入一个正整数,统计该整数的位数并计算其各个数位上的数字之和. -
肇韩悉能: #include <stdio.h>int main() {int a, b, i, t;int k = 0, sum = 0; scanf("%d", &a); //输入整数a t = a;if(a / 10 == 0){k = 1;sum = a;printf("%d\n", k);printf("%d\n", sum);}else{while(a / 10 != 0){a = a / 10; //每除10,就有一位k++; ...

汉阳区13389813711: 用C++编写 从键盘上输入任意一个正整数 N01,求该整数各位数值之和 -
肇韩悉能: #include<iostream> using namespace std; void main() { unsigned number; int total = 0; cout<<"Pleaae input a positive integer: "<<endl; cin>>number; if(number <= 0) { cout<<"Illegal Input"<<endl; return; } while(number) { total += number%10; //取余数 number /= 10; } cout<<"该整数各位数值之和: "<<total<<endl; getchar(); }

汉阳区13389813711: 大神们谁会c++ 帮忙做做,行行好 帮我做做 (输入一个正整数 要求编写函数 计算该整数的 -
肇韩悉能: #include void main() { int n; int sum=0; cin>>n; while(n) { sum=sum+n%10; n=n/10; } cout<}//ok 请采纳

汉阳区13389813711: C++编程:从键盘输入一个正整数n,编程计算1~n之间的奇数和. -
肇韩悉能: //#include "stdafx.h"//if the vc++6.0, with this line. #include using namespace std; int main(int argc,char *argv[]){ int n,i,s; cout << "input n(int n>=0)...\nn="; if(!(cin >> n) || n<0){ cout << "input error, exit...\n"; return 0; } for(s=0,i=1;i<=n;s+=i,i+=2)...

汉阳区13389813711: C++ 文件data.txt中存放着一批整数,编写程序输入一个整数,统计并输出其在该文件中出现的次数 -
肇韩悉能: 1、首先,定义一个常量,用来控制数组的大小. 2、接着,定义两个数组,保存所有素数和所有整数. 3、定义4个整型变量,保存输入的整数、控制循环的变量,以及素数个数. 4、输入一个正整数,保存在变量num中. 5、将数组arr中的值,都设置为0. 6、最后,如果标志值为真,则输出此整数内没有整数. 7、运行程序,输入一个正整数,显示出来.

汉阳区13389813711: C++输入一个正整数,要求编写函数,计算该整数的各个数字之和的流程图 -
肇韩悉能: #include <iostream>#include <cstring> using namespace std; int main() { char hstr[20]; int num,sum=0; cout<<"请输入一个正整数:"; cin>>num; //读取一个整数 ultoa(num,hstr,10); //把整数转化成字符串 for(int i=0;i<strlen(hstr);i++) { sum+=(int)(hstr[i]-48); //把字符串的每个字符转化成int并对之求和 } cout<<"该整数各个数位数字之和sum= "<<sum<<endl; //输出求和结果 return 0; }

汉阳区13389813711: C++语言中:任意输入一个正整数,如何求出这个正整数的数字之和. -
肇韩悉能: #include void main(){ int i,j,k,l; printf("请输入一个数字:\n"); scanf("%d",&i); j=i/100; k=i%100/10; l=i%100%10; printf("和为:%d\n",j+k+l); } 只适合3位数

汉阳区13389813711: 用C++从键盘输入一个正整数,输出各位数字之和 -
肇韩悉能: ,&number);while(number){sum+= number%10number/=10,sum);return 0;}printf("sum=%d"思想同楼上: #include%d" int main() {unsigned int number,sum=0;scanf(&quot

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网