今天学习了strlen,strcat,getchar,getche和getch,strlen()函数的作用是统计给定字符串的长度,strcat是用来拼接字符串,getchar代表读入一个字符,getche是输入后立即从控制台取字符,不以回车为结束,且立刻显示在屏幕上(带回显),且头文件为conio.h,getch是从控制台读取一个字符,但不显示在屏幕上(不带回显)头文件也为conio.h。
以下为今日习题练习:
1.输入六位密码 abcdef 输入三次错误结束
#include<stdio.h>
#include<conio.h>
#include<string.h>
int main()
{
char s[7]={"abcdef"};
char a[7]={"\0"};
int i=0,m=1;
while((a[i]=getch())&&i<=5)
{
printf("*");
i++;
if(i==6)
{
a[i]='\0';
if(strcmp(s,a)==0)
{
printf("输入正确\n");
}
else
{
printf("输入错误\n");
i=0;
m++;
if(m>3)
{
break;
}
}
}
}
}
2.将一个正整数分解质因数
#include<stdio.h>
int main()
{
int a,b;
scanf("%d",&b);
a=b;
int i;
printf("%d=",a);
for(i=2;i<a;i++)
{
if(a%i==0)
{
printf("%d*",i);
a=a/i;
i=1;
}
}
if(a==b)
{
printf("1*%d",b);
}
else
{
printf("%d",i);
}
}
3.有一行文字,现要求从其中删去某个指定字符,要求该行文字和待删的字符均由终端输入
#include<stdio.h>
int main()
{
char s[20]={"\0"};
gets(s);
int i;
char a;
printf("请输入要删除的字符:");
a=getchar();
for(i=0;i<20;i++)
{
if(s[i]==a)
{
while(i<20)
{
s[i]=s[i+1];
i++;
}
i=-1;
}
}
puts(s);
}
4.鸡兔同笼,34个头,100只脚,问鸡兔各多少只
#include<stdio.h>
int main()
{
int i;
for(i=1;i<34;i++)
{
if(i*4+(34-i)*2==100)
{
printf("兔子有%d只,鸡有%d只",i,34-i);
break;
}
}
}