1)题目描述:
小明捡到了一个手机,屏幕点亮后需要输入解锁密码才能开锁。手机的解锁密码由8个数字组成,每个数字可能是0-9中的一个,且8个数字互不相同
小明的破解思路非常简单,暴力。他会从最小的数字开始一个一个尝试。 比如第一次尝试01234567,第二次尝试01234568,直到98765432......
几个小时过后,小明终于.........把手机按没电了。
没电前,小明已经按破解思路尝试了多组答案,他只记得最后一组尝试的是什么 问,小明已经尝试了多少组
2)输入输出:
输入格式
一个8位的数,可能有前导0
输出格式
一个整数,表示答案
代码文本:
#include "stdio.h"
char repeat(char *p,char n){//重复检查
char i;
for(i=0;i<n;i++)
if(p[n]==p[i])
return 0;
return 1;
}
char check(char *p){//检查输入是否正确
char i,n;
for(n=0;p[n];n++);
if(n==8){
for(i=1;i<n;i++)//检查
if(!repeat(p,i))
return 0;
return 1;
}
return 0;
}
int main(int argc,char *argv[]){
char s[9]="",t[9]="",i,d=58;
int n;
printf("Please enter the last set of number(L:8,0~9, no repeat)...\n");
if(scanf("%[0-9]s",t)==1 && check(t)){
for(n=0,s[0]='0';s[0]<d;s[0]++)
for(s[1]='0';s[1]<d;s[1]++)
if(repeat(s,1))
for(s[2]='0';s[2]<d;s[2]++)
if(repeat(s,2))
for(s[3]='0';s[3]<d;s[3]++)
if(repeat(s,3))
for(s[4]='0';s[4]<d;s[4]++)
if(repeat(s,4))
for(s[5]='0';s[5]<d;s[5]++)
if(repeat(s,5))
for(s[6]='0';s[6]<d;s[6]++)
if(repeat(s,6))
for(s[7]='0';s[7]<d;s[7]++)
if(repeat(s,7)){
for(n++,i=0;i<8;i++)
if(s[i]-t[i])
break;
if(i==8){
printf("\n%d\n",n);
return 0;
}
}
}
else
puts("Input error, exit...");
return 0;
}
C语言:下面描述的题目咋编程?
char repeat(char *p,char n){\/\/重复检查 char i;for(i=0;i<n;i++)if(p[n]==p[i])return 0;return 1;} char check(char *p){\/\/检查输入是否正确 char i,n;for(n=0;p[n];n++);if(n==8){ for(i=1;i<n;i++)\/\/检查 if(!repeat(p,i))return 0;return 1;} return...
C语言题目描述: 从键盘上输入一个小写字母,然后将小写字母装换成大写...
ch=ch+32;printf("%c\\n\\n",ch);}else{ printf("%c\\n\\n",ch);} }
跪求编程大神~用c语言编个程序
下面是我做过的题目,算法思想树上已经说的很详细了,我就给代码哈。题目描述输入二叉树的先序遍历序列和中序遍历序列,输出该二叉树的后序遍历序列。输入第一行输入二叉树的先序遍历序列;第二行输入二叉树的中序遍历序列。输出输出该二叉树的后序遍历序列。示例输入ABDCEFBDAECF示例输出DBEFCA include...
如何编写C语言程序?
2.快捷键“CTRL+N”建立新源代码。3.输入源代码,下面给出最简单的Hello,world源代码:include <stdio.h> int main( ){ printf("Hello,World\\n");return 0;} 4.按下F11编译并且运行源代码,得到运行结果:5.点击任意键返回源代码编辑界面可以继续进行开发,接下来就是C语言语法的学习了。
用C语言编程?
int main(int argc,char *argv[]){ double s,py;printf("Please enter your monthly salary...\\npy=");if(scanf("%lf",&py)==1 && py>0){ s=(py-5000)*0.03*12;printf("Should pay personal income tax totaled %.2f yuan in 2025.\\n",s);} else printf("Input error, exit...
C语言题目——肿瘤面积,求解!我下面将给出在C++6.0环境下的代码,请高...
思路1:根据问题描述,结果存在于一个平行于输入矩阵的边缘的矩形内,即只有一个左上角的起始坐标最小和右下角的结束坐标最大,所以在输入数据的时候就可以同时判断并得到该两点的坐标(位于肿瘤边界上)再直接计算该边界所涵盖面积就可以了。思路1 程序:define N 100 int main(int argc, char *argv...
题目:输入两个正整数m和n,求其最大公约数和最小公倍数。用C语言编程
算法描述:m对n求余为a, 若a不等于0 则 m <- n, n <- a, 继续求余 否则 n 为最大公约数 <2> 最小公倍数 = 两个数的积 \/ 最大公约数 include int main(){ int m, n;int m_cup, n_cup, res; \/*被除数, 除数, 余数*\/ printf("Enter two integer:\\n");scanf("%d %d"...
c语言的函数问题?
所以,题目中两个表达式的描述,就是告诉你不同情况下的函数返回值。之后根据题意,主函数通过函数指针调用,函数指针就是指向函数的指针。把两个函数分别赋值给指针,再通过指针调用函数。下面是代码:include <stdio.h> int fn1(int n);int fn2(int n);int main(){ int k=3,n=-1,(*p)(...
c语言完整的程序怎么写?
判断sum是否等于n。如果等于,说明n是一个完数;如果不等于,说明n不是一个完数。下面是一个示例代码:n=int(input(请输入一个整数:))sum=0 for i in range(1,n+1):if n%i==0:sum+=i if sum==n:print(n,是一个完数)else:print(n,不是一个完数)在上面的代码中,我们...
水仙花数的c语言编程。
所谓的“水仙花数”是指一个三位数其各位数字的立方和等于该数本身,例如153是“水仙花数”,因为:153 = 1^3 + 5^3+ 3^3 。下面是完整的C语言编程代码:运行结果:result is:153 370 371 407