当前位置:首页 » 编程语言 » c语言中一个数拆分后存于数组中
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言中一个数拆分后存于数组中

发布时间: 2023-06-15 19:28:21

c语言如何分割字符串并将结果放入数组

如果是从输入读,那不用存字符串,直接存数组就好了
比如
scanf(“%d,%d....”,a,a+1,a+2...)
如果已经是字符串了,比如str,那么用sscanf
比如sscanf(str,“%d,%d....”,a,a+1,a+2...)

⑵ C语言中,如何把一个数据均分为若干段,然后依次存入一个整型数组的各个元素中

作为字符读入每读到固定个数就写入数组:
int k = 0;
char str[10000];
scanf("%s",str);
for(int i=0;i<=strlen(str);i++){
a[k]=str[i]-'0';
if(i>0 && i%3==0)k++;
else a[k] *=10;
}

⑶ c怎么把一个数拆分

1. c语言如何拆分数字
小弟有这么一种做法,我觉得这个比较快一点。写得不是很好,你看下先啦!

#include<stdio.h>

#include<string.h>

#include<windows.h>

int main()

{

char a[30];

int i,l;

printf("请输入一整型数字:");

gets(a);

printf("数字拆分如下:\n");

l=strlen(a);

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

printf("%d ",a[i]-'0');将数字字符转为数字值

printf("\n");

}

你看一下,还可以的话,麻烦你采纳我,Thank you。
2. C 怎么把拆分的数字加起来
#include<stdio.h>

int main()

{

int number,right_digit,total;

printf("Enter your number.\n");

scanf("%i",&number);

do {

right_digit = number % 10;

number = number/10;

total = total + number.

printf("%i%i\n",right_digit, total);

}

while(number !=0 );

return 0;

}
3. C语言怎么拆分一个数字
#include<stdio.h>

#include<math.h>

void main()

{

int a,b,c,n;

double d;

printf("输入一个三位数\n");

scanf("%d",&n);

a=n/100;百位

b=(n%100)/10;十位

c=n%10;个位

d=pow(a,3);pow()是一个函数,包含于math.h文件中,此处是求a的3次方

pow(m,n)用法如下,m是幂,n是指数,运算出来的结果是double类型

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

printf("a的三次方是%f\n",d);

}
4. 如何用C语言拆分整数
将一个整数的各个位分离出来的最简单方法就是模10,取个肢掘位数,直到该变为0。

参考代码:

#include <stdio.h>

void main()

{

int n=0;

scanf("%d", &n );

do {

printf("%d\n", n%10 ); 每次输出个位

n/=10 ; 缩小10倍,去除原来的个位。

}while(n);

}但这整拆分的特点是从后向前输出每一位数。

如果仅是为了输出,还想正向输出每一位数,则可用递归函数来解决。(也可以实现逆向输出)

参考代码:

#include <stdio.h>

void split_int( int n )

{

if ( n>0 )

{

printf("%d\n", n%10 );逆向输出,放开这里,关闭下面的printf().即:先输出当前个位历禅核,再去高位的数

split_int( n/10 );先去输出高位的数

printf("袭兆%d\n", n%10 ); 再输出当前的个位数

}

}

void main()

{

int n;

scanf("%d", &n);

split_int(n);

}如果想把分离开的数据存储到数组中,则最简单的方法是将整数用sprintf()存储到字符数组中,然后,遍历数组,逐位取出。

参考代码:

#include <stdio.h>

void main()

{

int n,i;

char str[20];

scanf("%d", &n);

sprintf(str,"%d", n);

for( i=0;str[i];i++ ) 正向输出

printf("%c\n", str[i] );

for( i--;i>=0;i-- ) 逆向输出

printf("%c\n", str[i] );

}
5. c语言数字拆分
pow函数学过吧? 就是平方pow(a,b) a的b次方

我暂时想不到什么简单的算法 先给个复杂的

#include<stdio.h>

#include<math.h>

int main()

{ int n,s=-1,d,m;

scanf("%d",&n);

m=n;

while(m)

{

m/=10;

s++;

}

while(s>-1)

{

d=n/pow(10,s);

n-=d*pow(10,s);

printf("%d",d);

s--;

}

}