狗狗可以涂碘酒吗:c语言问题
来源:百度文库 编辑:中科新闻网 时间:2024/10/03 16:53:14
这个怎么写??
// zd_39.cpp : Defines the entry point for the console application.
//
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(int argc, char* argv[])
{
char buffer[6];
printf("请输入一个不大于五位的整数:\n");
scanf("%s",buffer);
printf("位数是:%d\n",strlen(buffer));
for(int i=0;i<strlen(buffer);i++)
printf("第%d位是:%d\n",i+1,buffer[i]-48);
printf("逆序显示为:\n");
for(i=strlen(buffer)-1;i>=0;i--)
printf("%d",buffer[i]-48);
printf("\n");
return 0;
}
运行结果:
请输入一个不大于五位的整数:
34567
位数是:5
第1位是:3
第2位是:4
第3位是:5
第4位是:6
第5位是:7
逆序显示为:
76543
Press any key to continue
把这个整数转化为字符串(itoa),位数就是字符串长度(strlen),打印用printf("%c",str1[i]),放在for循环中。
---转载---
itoa
将整数转换成字符串,并返回转换结果
(itoa int)
参数
int
整数型。
返回值
由 int 转换所得的字符串。
示例
命令: (itoa 33)
"33"
命令: (itoa -17)
"-17"
main()
{
int a,b,c;
a=3,b=2,c=1;
{
b=2;
if(a>b&&a>c)a=1;
if(=3;
}
printf("%d%d%d\n",a,b,c);
getch();
}
# include <stdio.h>
void solution();
int main() {
// 测试
solution( 34223);
}
void solution(int value) {
int n = value;
int digit = 0;
int m = 1;
int j;
printf("逆序打印:\n");
while (n > 0) {
printf("%d ", n % 10);
n /= 10;
m *= 10;
digit++;
}
printf("\n顺序打印:\n");
n = value;
for (j = 0; j < digit; j++) {
m /= 10;
printf("%d ", n / m);
n -= n / m * m;
}
printf("\n%d 的位数是 %d\n", value, digit);
}
回家想想~