初学C语言,求一程序:有一组数字比如(1-15);然后输入1-15之间的数字例如:输入1,2,2,11,11,11,15;

作者&投稿:罗易 (若有异议请与网页底部的电邮联系)
c语言程序题 输入一个整数,求它的位数及各位数字之和。例如,123的位数是3,各位数字之和是6.~

#includeusing namespace std;int main(){cout>num;cout<<"你输入的数字是:"<<num<<endl;void sumandnum(int num);sumandnum(num);return 0;}void sumandnum(int num){if(num==0) cout<<"位数是1,各位数字之和为0"<<endl;if(num<0) num=-num;static int count=0;static int sum=0;while(num){sum+=num%10;num/=10;++count;}cout<<"位数是"<<count<<endl<<"各位数字之和是"<<sum<<endl;}

#include void main(){int a,i=0,sum=0;scanf("%d",&a);while(a){ sum+=(a%10);//sum是个位数之和a/=10;i++;//i为位数}printf("%d位数,各位数字之和为%d
",i,sum);}

#include<stdio.h>

typedef struct 

{

int a;

int flag;

}TT;

void main()

{

TT b[15];

int c[10];

for(int i=0;i<15;i++)

{

b[i].a=i+1;

b[i].flag=0;

}

printf("please input some numbers:
");

for(i=0;i<10;i++)

scanf("%d",&c[i]);

for(i=0;i<10;i++)

for(int j=0;j<15;j++)

{

if(c[i]==b[j].a)

b[j].flag++;

}

printf("大于2次的是:");

for(int j=0;j<15;j++)

if(b[j].flag>=2)

printf("%d ",b[j].a);

printf("
");

printf("等于1次的是:");

for(j=0;j<15;j++)

if(b[j].flag==1)

printf("%d ",b[j].a);

printf("
");

printf("没有出现的是:");

for(j=0;j<15;j++)

if(b[j].flag==0)

printf("%d ",b[j].a);

printf("
");

}



#include <stdio.h>
void main()
{
int arr[16]={0},i,count,elem,non[15],one[15],more[15];
int j=0,k=0,l=0,num;
printf("请输入数字的个数\n");
scanf("%d",&count);
num=count;
printf("请输入1~15之间的数字\n");
while(num--)
{
scanf("%d",&elem);
arr[elem]++;
}
for(i=1;i<=15;i++)
switch(arr[i])
{
case 0:non[j++]=i;break;
case 1:one[k++]=i;break;
default:more[l++]=i;break;
}
printf("大于2次的是:");
for(i=0;i<l;i++)
printf("%d ",more[i]);
printf("\n等于1次的是:");
for(i=0;i<k;i++)
printf("%d ",one[i]);
printf("\n没有出现的是:");
for(i=0;i<j;i++)
printf("%d ",non[i]);
printf("\n");

}

程序如下,这组数字的范围由输入的数字的最小值和最大值确定,输入若干整数,用CTRL+Z结束输入.
//---------------------------------------------------------------------------

#include <stdio.h>
#include <stdlib.h>

typedef struct{
int index;
int cnt;
} node;

node * add(node *ms,int *size,int d)
{
int i;
if (ms==NULL) {
ms=malloc(sizeof(node));
++*size;
ms->index=d;
ms->cnt=1;
}
else if (d>ms[*size-1].index) {
ms=realloc(ms,sizeof(node)*(++*size));
ms[*size-1].index=d;
ms[*size-1].cnt=1;
}
else
{
for (i = 0; i<*size; i++) {
if (d==ms[i].index) {
++ms[i].cnt;
break;
}
}
if (i==*size)
{
ms=realloc(ms,sizeof(node)*(++*size));
while (i&&d<ms[i-1].index)
{
ms[i]=ms[i-1] ;
i--;
}
ms[i].index=d;
ms[i].cnt=1;
}
}
return ms;
}

int main(void)
{
node *nms=NULL;
int i,ind,size=0;
while (scanf("%d",&ind)!=EOF)
nms=add(nms,&size,ind);
printf("大于等于2次的是:");
for (i=0; i<size; i++)
if (nms[i].cnt>=2) printf("%d ",nms[i].index);

printf("\n等于1次的是:");
for (i=0; i<size; i++)
if (nms[i].cnt==1) printf("%d ",nms[i].index);

printf("\n没有出现的是:");
for (i=1; i<size; i++) {
if (nms[i].index-nms[i-1].index>1)
for (ind=nms[i-1].index+1; ind<nms[i].index; ind++)
printf("%d ",ind);
}
putchar('\n');
free(nms);
return 0;
}
//---------------------------------------------------------------------------


C语言编写一个程序,求x> y的运行结果
以下是一个简单的C语言程序,可以比较两个整数x和y,并打印出相应的结果:在这个程序中,我们首先声明了两个整数变量x和y,然后使用printf函数提示用户输入两个整数。接下来,我们使用scanf函数读取用户输入的整数,并将它们存储在变量x和y中。然后,我们使用一个if-else语句来比较x和y的值。如果x大于y...

我是大一新生,刚学c语言。谁能帮我写一个能运行两个数加减乘除的程序...
include<stdio.h> int main(){ int i,j,d;char c;scanf("%d%c%d",&i,&c,&j);switch(c){ case '+':d=i+j;break;case '-':d=i-j;break;case '*':d=i*j;break;case '\/':if(j!=0)d=i\/j;else { printf("Can not divided by 0!\\n");return 1;} } printf("%d%...

用C语言编写一个程序,求a+(b的绝对值)的和.
include<stdio.h> int main(){ int a,b,fb;scanf("%d%d",&a,&b);fb = abs(b);printf("a+|b| = %d\\n", a+fb);return 0;}

我是学C语言的新手,求高手帮助我注释一下计算大数相乘的程序。
{ int i,j,k=0,alen,blen,sum=0,res[101][101]={0},flag=0;char result[101];alen=strlen(a);blen=strlen(b);for (i=0;i<alen;i++)for (j=0;j<blen;j++)res[i][j]=(a[i]-'0')*(b[j]-'0');\/\/预处理,把a[i],b[j]的乘积得到 for (i=alen-1;i>=0;i--)...

求C语言程序:如何获得一个程序运行的时间? 最好带一段简单的代码 新人...
clock()函数,计算代码消耗的cpu时间,一般用处不大 time()函数,获取系统时间,许多依赖于time()计算超时的程序,在修改系统时间后一般都不能正常运行。因此本人推荐:windows下:计算绝对时间QueryPerformanceCount\/QueryPerformanceFrequency.cpu脉冲计数\/ cpu频率,获得开机以来的秒数。当然,这两个函数获得时间...

用C语言编一个求学生总成绩和平均成绩的程序
include <stdio.h> void main(){ int score[5]={58,70,86,76,54};int sum=0;int i=0;for(i=0;i<5;i++){ sum+=score[i];} printf("总分是%d,平均成绩%f\\n",sum,sum\/5.0);} \/\/绝对简单版

求一个简单c语言程序
大端机:与小端机刚刚相反。比如,0x12 34 56 78放在内存中就是12 34 56 78。PowerPC、SUN的SPARC、摩托罗拉 6800是大端机。下面是我用小端机电脑写的验证程序 include<stdio.h> int main(){ int a = 0x12345678;char *p;p=(char *)&a;for(int i=0;i<sizeof(int);i++,p++)printf("...

求c语言大佬帮助!帮我写个小程序,谢谢
int n);\/\/在屏幕上输出数组各元素的值(逗号分隔)#define N (10)int main(){ int a[N],b[N],c[N*2],i; srand(time(NULL)); Init(a,N); Print(a,N); Short(a,N); Print(a,N); Init(b,N); Print(b,N); Short(...

求C语言大神帮忙编写一个程序,按要求写出来。
include <stdio.h> define MAX 20\/* userCode(<100字符): 自定义函数之原型声明 *\/ void rotate( int (*arrA)[MAX], int (*arrB)[MAX], int m, int n);int main(void){ int arrA[MAX][MAX], arrB[MAX][MAX], i, j, m, n;printf("请输入 m n: ");scanf("%d %d", &...

求c语言高手详解一段程序
define执行的是简单替换,以你的程序为例吧 s=f(a+1);把参数a+1代替参数x,结果得到 s=f(a+1)=a+1*a+1*a+1=3+1*3+1*3+1=10 s=f((a+1))=(a+1)*(a+1)*(a+1)=4*4*4=64;也就是用(a+1)去替换x

固镇县18814685288: 用简单的C语言(刚学不久)编写程序:输入一个整数,求它的位数和各位数字之和 -
越软安畅: #include <stdio.h>#include <string.h> int main() { long int n; char ch[20]; int i,len,sum=0; scanf("%ld",&n); if(n<0) n=-n; sprintf(ch,"%ld",n); len=strlen(ch); for(i=0;i<len;i++) sum+=ch[i]-'0'; printf("%d是一个%d位数的整数\n",n,len); printf("各位数的和= %d\n",sum); return 0; }示例运行结果:1234567812345678是一个8位数的整数 各位数的和= 36

固镇县18814685288: 下面是我编写的C语言的程序,在3个数字中比大小,请问下有没有错误啊~!! -
越软安畅: if ( a > b ) { max = a;} else { max = b;}if ( c > max ) { max = c;}printf("%d", max);

固镇县18814685288: 急求C语言程序:求一个字符串中所有的数字字符对应的数值之和. -
越软安畅: #include long numcharsum(const char *s)int main(void){ char s[100]; printf("input a string: "); scanf("%s"...

固镇县18814685288: 求一个C程序,输入一组数字,显示其个数,最大值,最小值,平均值,方差,标准差 -
越软安畅: 输入整数时要用空格分开#include <stdio.h> #include <math.h>#define MAX 50 main(){ char *p,str[301];/*int 最大为5位数,加上分隔空格为6*50=300字节*/ int arr[MAX]; int i,num,max,min,tem; float ave,var,stdvar; gets(str); p=strtok(str," "); if(p) arr...

固镇县18814685288: 用C语言编一个程序求一个数各位数之积 -
越软安畅: 这个问题其实很简单! 办法有两个, 1.因为不知道你要输入的是几位数,所以可以用动态数组,输入数字之后,每一个位置其实就只有一个数字,那么就可以直接用每个位置的数字相乘! 2,不用动态数组的话,可以直接用int,思路是,不停的除以10,求余数,得到的余数就是那一位的数字!一直到余数为0的时候停止! 这里只给出大概思路.可以根据这两个思路自己编! 祝你成功!

固镇县18814685288: C语言编程 有一组数字 1 3 5 7 9 11 13 15 17 19 输入一个数字,将其按大小插入其中 -
越软安畅: #include "stdio.h" int main(void){ int a[11]={1,3,5,7,9,11,13,15,17,19},i,n; printf("Input n(int)...\nn="); scanf("%d",&n); for(i=9;i>=0;i--){ if(n>=a[i]){ a[i+1]=n; break; } a[i+1]=a[i]; } if(i for(i=0;i printf("\n"); return 0; }

固镇县18814685288: c语言一组数字求和,比如随便输入3,10,5,40等,求和,数字的个数是不定的 -
越软安畅: 呵呵,你怎么在提了同样的问题,这两个是别人解答的,如果不满意,我加修改.#include "stdio.h" void main() { int n,sum=0; while(1){ scanf("%d",&n); if(n==0) break; sum+=n; } printf("%d",sum); } 不过有个问题,不能输入加数0,因为...

固镇县18814685288: 用C语言写一个程序:有5组数字,013,036,458,708,239,用000 -- 999,与他们对比,使得变成3组数. -
越软安畅: #include bool com(int m,int n){ int a[3],b[3]; a[0]=m/100;a[1]=(m%100)/10;a[2]=m%10...

固镇县18814685288: 用C语言写的一个程序:有一个已排好的数组,要求输入一个数后,按原来排序的规律将它插入数组中. -
越软安畅: 代码如下:#include<stdio.h> int main() { int a[20],i=0,n,x,k,j; printf("请输入一组顺序数(从小到大的顺序):"); while(~scanf("%d", &a[i])) { i++; if(getchar() == '\n') break; //在这判断,否则原先的第一个数字读不进去 } n=i; for(i=0;i<n;i++)...

固镇县18814685288: c语言问题啊 输入一组数值,比较他们的大小 按照从大到小排列,并且输出他们原始的序号问题 大家看看我的 -
越软安畅: //两处错误 1:自动数组的长度一定要是个常数表达式 ,2:最后输出的时候是b[i],这个粗心了#include...

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