社区
C语言
帖子详情
C语言中,如何得到某个数字的某几位
leaway211
2006-07-12 12:40:10
例如 int = 1234;
我要得到第2-3位,有没有什么简单的方法能得到答案23呢?
...全文
2632
16
打赏
收藏
C语言中,如何得到某个数字的某几位
例如 int = 1234; 我要得到第2-3位,有没有什么简单的方法能得到答案23呢?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wodeyouxian
2006-07-25
打赏
举报
回复
mark
林道洪崖不周峰
2006-07-22
打赏
举报
回复
look!
apricot0819
2006-07-20
打赏
举报
回复
1
可以把数的每个位数分开放进一个整型数组里。。
再想取哪位就随便了啊
xddzccn
2006-07-20
打赏
举报
回复
1
#include "string.h"
#include "stdio.h"
main()
{ int a;
char chb[4];
printf("plrease input a number");
scanf("%d",&a);
sprintf(chb,"%d",a);
printf("%c%c",chb[1],chb[2]);
}
想知道sprintf(chb,"%d",a);为什么是%d,而不是%s啊
唐巧
2006-07-20
打赏
举报
回复
sprintf比较方便。
xddzccn
2006-07-12
打赏
举报
回复
int sihui(long b);
main()
{long a;
printf("please input a number");
scanf("%d",&a);
printf("%d",ishui(a));}
int ishui(long b)
{
long a[9],i,n=0;
do{a[n++]=b%10;
}while(b=b/10);
for(i=0;i<n/2;i++)
if(a[i]!=a[n-1-i])return 0;
return 1;
}
jixingzhong
2006-07-12
打赏
举报
回复
例如 int = 1234;
我要得到第2-3位,有没有什么简单的方法能得到答案23呢?
===========================
char s[10];
int num = 1234;
int i;
sprintf(s, "%d", num);
for(i=0; s[i] != 0; i++)
printf("In the num %d, the %d number is %c.\n", num, i+1, s[i]);
在字符串 s 中,
第 i 位数字就是 元素 s[i-1] (数组下标从0开始)....
chenhu_doc
2006-07-12
打赏
举报
回复
顶~
PDD123
2006-07-12
打赏
举报
回复
没有直接的函数
xiaojun19830916
2006-07-12
打赏
举报
回复
int i=1234;
个位数=i%10;
十位数=1%100-个位数;
百位数=i%1000-十位数*10-个位数;
du51
2006-07-12
打赏
举报
回复
//C++下可以这样.
#include<sstream>
#include<iostream>
#include<string>
#define START 2//开始
#define NUM 2//个数
using namespace std;
int main()
{
int n=1234;
stringstream ss;
ss<<1234;
cout<<ss.str().substr(START-1,NUM)<<endl;
system("PAUSE");
return 0;
}
tanglucose
2006-07-12
打赏
举报
回复
jixingzhong(瞌睡虫:选择了远方,只顾风雨兼程!) 正解!!
stecdeng
2006-07-12
打赏
举报
回复
jixingzhong(瞌睡虫:选择了远方,只顾风雨兼程!) 的例子是使用了 SPRINTF函数
讲得详细也比较通用
函数名: sprintf
功 能: 送格式化输出到字符串中
用 法: int sprintf(char *string, char *farmat [,argument,...]);
程序例:
#include
#include
int main(void)
{
char buffer[80];
sprintf(buffer, "An approximation of Pi is %f\n", M_PI);
puts(buffer);
return 0;
}
stecdeng
2006-07-12
打赏
举报
回复
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int i=1234,j;
j=(i/10)%100;
printf("%d\n",j);
system("PAUSE");
return 0;
}
1234除以10为123
再除以100 余数为23
如果只要某位数1234除以100得12
12除以10 余数为2
yingge
2006-07-12
打赏
举报
回复
#include <stdio.h>
int getsubdec(int n,int low,int high){
int i,j;
for(i=1;i<low;i++)
n/=10;
for(j=1,i=low;i<=high;i++)
j*=10;
return n-j;
}
int main(){
int i=1234;
printf("%d\n",getsubdec(i,2,3));
return 0;
}
liubingqian
2006-07-12
打赏
举报
回复
int i=1234;
个位数=i%10;
十位数=1%100-个位数;
百位数=i%1000-十位数*10-个位数;
24位BMP位图信息隐藏和读取(
c语言
实现)
用
c语言
,实现了对位图文件进行信息的隐藏和读取。
经典
C语言
100道题.docx
【程序1】 题目:有1、2、3、4个
数字
,能组成多少个互不相同且无重复
数字
的三位数?都是多少? 1.程序分析:可填在百位、十位、个位的
数字
都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。 2.程序源代码: main() { int i,j,k; printf("\n"); for(i=1;i<5;i++) /*以下为三重循环*/ for(j=1;j<5;j++) for (k=1;k<5;k++) { if (i!=k&&i!=j&&j!=k) /*确保i、j、k三位互不相同*/ printf("%d,%d,%d\n",i,j,k); } }
C语言
经典例题100例(含答案)
100道经典例题包含答案,做完收获很大,适合掌握了
C语言
基本语法以后想做练习的同学学习
C语言
数位排序共4页.pdf.zip
C语言
数位排序共4页.pdf.zip
C语言
程序设计试题及答案
考试吧专供2011年9月等考
C语言
程序设计试题及答案
C语言
70,017
社区成员
243,265
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章