输入一个三位整数,将这个整数的个位,十位,百位输出到一行中,列如输入123,输出3 2 1
#include <stdio.h>
int main()
{
int n,a,b,c;
scanf("%d",&n);
a = n%10;
b = n%100/10;
c = n/100;
printf("%d %d %d",a,b,c);
}
供参考:
#include <stdio.h>
void inverse(int n)
{
if (n < 10)
printf("%d", n % 10);
else{
printf("%d ",n % 10);
inverse(n / 10);
}
}
int main()
{
int n, m;
scanf("%d", &n);
inverse(n);
return 0;
}
不知道你这个问题是否已经解决, 如果还没有解决的话:笔记:
1.数组名本身就是一个地址
2.字符串比较用strcmp
3._s安全模式输入时要加数组长度(10或者sizeof(数组名)/sizeof(数组类型))
#include<stdio.h>
#include<string.h>
int main()
{
int i = 0;
char password[10] = { 0 };
for (i = 0; i < 3; i++)
{
printf("请输入密码:");
scanf_s("%s", password,10);//10是限制缓冲区只读前10个,防止溢出
if (strcmp(password, "123456") == 0)
{
printf("登录成功\n");
break;
}
else
{
printf("密码输入错误\n");
}
}
if (i == 3)
{
printf("密码连续三次输入错误,退出程序\n");
}
return 0;
}