C语言编程,写一函数digit(n,k),它把数n从右边起的第k位数字的值给出来,其中n为正整数,若n的位数不足k
c++写的
#include
#include
#include
using namespace std;
void digit(int n,int k)
{
string str;
char *my;
int len=0;
itoa(n,my,10);
//str=my;
len=strlen(my);
if(len>=k)
cout<<"值为"<<str[len-k]<<endl;
else
cout<<"0"<<endl;
}
//示例
int main()
{
digit(12845,3);
cin.get();
return 0;
}
#include
#include
#include
using namespace std;
void digit(int n,int k)
{
string str;
char *my;
int len=0;
itoa(n,my,10);
//str=my;
len=strlen(my);
if(len>=k)
cout<<"值为"<<str[len-k]<<endl;
else
cout<<"0"<<endl;
}
//示例
int main()
{
digit(12845,3);
cin.get();
return 0;
}
小朋友你应该学会自己思考
int digit(int n,int k)
{
int i,temp1,temp2;
for(i = 0;i < k; i++)
{
temp1 = n%10;
n = n/10;
}
return temp1;
}
void main()
{
int n,k,result;
printf("请输入数字n和k:\n");
scanf("%d %d",&n,&k);
result = digit(n,k);
printf("%d从右边数第%d位为%d",n,k,result);
}
很简单的,你先看看,不懂了再问。望采纳!
#include <stdio.h>
int digit( int n , int k )
{
int i=1;
while(n) //当n不为0时循环
{
if ( i==k ) //如果当前位置i与k相同,则返回当前数字
return n%10 ;
n/=10 ; //n缩小10倍,为的是下次n%10为要取的数字
i++; //位置数+1
}
return 0 ; //找不到匹配位置时,返回0
}
int main()
{
int ret=0;
ret=digit(76543,4) ;
printf("digit(76543,4)=%d\n" , ret );
ret=digit(12,4) ;
printf("digit(12,4)=%d\n" , ret );
return 0;
}
程序给你了,你试下,不懂的可以追问:
#include<stdio.h>
int digit(int n,int k)
{
int t=k-1;
while(t>0)
{
n/=10;
t--;
}
if(n==0)
return 0;
else
return n%10;
}
void main()
{
int n,k;
scanf("%d%d",&n,&k);
printf("%d\n",digit(n,k));
}
没有分析k>n怎么办啊
明白了,好的。
C语言编程,写一函数digit(n,k),它把数n从右边起的第k位数字的值给出来...
c++写的 include<iostream> include<stdio.h> include<string.h> using namespace std;void digit(int n,int k){ string str;char *my;int len=0;itoa(n,my,10);\/\/str=my;len=strlen(my);if(len>=k)cout<<"值为"<<str[len-k]<<endl;else cout<<"0"<<endl;} \/\/示例 int main...
c语言:定义一个函数digit(n,k),它返回整数n的从右边开始数的第k个数字...
int digit(int n,int k){ while(k>1){ n\/=10;k--;} return n%10;} void main(){ printf("%d\\n%d\\n",digit(1234,3),digit(6754,4));}
编写一个函数,返回一个整数的位数
它定义了一个函数int digit(int n),用来返回一个整数n的位数。在main函数中,输入一个整数并调用digit函数,输出结果。include <stdio.h> \/\/定义一个函数int digit(int n),用来返回一个整数n的位数 int digit(int n){ int count = 0; \/\/定义一个计数器,初始值为0 while(n != 0){ \/...
C语言编程,写一函数digit(n,k),它把数n从右边起的第k位数字的值给出来...
include<stdio.h> int digit(int n,int k){ int i,temp1,temp2;for(i = 0;i < k; i++){ temp1 = n%10;n = n\/10;} return temp1;} void main(){ int n,k,result;printf("请输入数字n和k:\\n");scanf("%d %d",&n,&k);result = digit(n,k);printf("%d从右边数第%d...
在程序中定义一个函数digit(n,k),它能分离出整数n从右边数第k个数字...
整数数字(X,廉政n){ 诠释RET = 0;为(i = 1; <N; + +)X \/ = 10;RET = 10%;返回RET;} 廉政的main(){ \/>整数X,N,RET;printf的(“输入x:”);scanf的(“%d”的,&X);printf的(“输入的位置:”;} scanf的(“%d”,&N);RET =数字(X,N);printf的(“...
编写一个函数digit(n,k),它把数n从右边起的第k位数字的值给出来,其中n...
include<iostream> include<stdio.h> include<string.h> using namespace std;void digit(int n,int k){ string str;char *my;int len=0;itoa(n,my,10);\/\/str=my;len=strlen(my);if(len>=k)cout<<"值为"<<str[len-k]<<endl;else cout<<"0"<<endl;} \/\/示例 int main(){ dig...
...值为为整数n从右边开始的第k位数字的数。如digit(231456,3)返回4...
int n,int k){ while(--k) { n \/= 10; \/\/右移 } return n%10; \/\/返回个位}void main() { int n,k; scanf("%d %d",&n,&k); printf("%d\\n",digit(n,k));} 有疑问可以追问,望采纳哈......
定义一个函数digit(n,k),要求输入数字n与k,输出数字n上第k位的数。例...
<math.h> int digit(int n,int k){ if (n<pow(10,k-1))return 0;n=n\/int(pow(10,k-1));return n%10;} void main(){ int k;long n;printf("输入n k,以空格隔开:");scanf("%d %d",&n,&k);int dig=digit(n,k);printf("digit(%d,%d)=%d\\n",n,k,dig);} ...
写一个函数int digit(int n,int k),它返回数n的从右边向左的第k个...
int digit(int n,int k){ int i = 0;int y = 0 ,s=0;for(i=1;i<k;i++){ s = s\/10;} y = s%10;return y;}
用C++编写函数digit(int num,int k)返回num从右边开始第k位数字的值...
int digit(int num,int k){ while(k>1);\/\/我们计数是从1开始的,电脑是从0开始的。当k=1时,依然大于0,还要执行一次循环,那样就多减了一位,所以到1就结束 { num = num \/ 10 k--;cout<<num<<endl;} return num%10 ;\/\/返回数位的值 } void main(){ int num;int k;cout<...