题目31:
请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。
思路:
- 首先明确哪几天需要输入两个字母。
- 然后注意两个字母的输入需要将换行符问题解决。
代码:
#include"stdio.h"
int main()
{
char i,j;
scanf("%c",&i);
getchar();
switch(i)
{
case 'm':
printf("monday");
break;
case 't':
printf("输入第二个字母");
scanf("%c",&j);
if(j=='u')
{
printf("tuesday");
break;
}
if(j=='h')
{
printf("thursday");
break;
}
case 'w':
printf("wendesday");
break;
case 'f':
printf("friday");
break;
case 's':
printf("输入第二个字母");
scanf("%c",&j);
if(j=='a')
{
printf("saturday");
break;
}
if(j=='u')
{
printf("sunday");
break;
}
}
return 0;
}
结果:
题目32:
删除一个字符串中的指定字母,如:字符串 “aca”,删除其中的 a 字母。
思路:
- 输入字符串,选择想要删除的字母。
- 将不是那个字母的其他字母放入另一个字符串即可。
代码:
#include"stdio.h"
int main()
{
char a[70],b,c[70];
int i=0,j=0;
gets(a);
scanf("%c",&b);
while(a[i]!='\0')
{
if(a[i]!=b)
{
c[j]=a[i];
j++;
}
i++;
}
c[j]='\0';
printf("%s",c);
}
结果:
题目33:
判断一个数字是否为质数。
思路:
- 质数的因子只有1和本身。
- 从2开始除,如果没有余数就退出。
- 退出时因子恰为本身即为质数。
代码:
#include"stdio.h"
int main()
{
int a;
scanf("%d",&a);
int i;
for(i=2;i<=a;i++)
{
if(a%i==0)
break;
}
if(i==a)
printf("是质数");
else
printf("不是质数");
return 0;
}
结果:
题目34:
练习函数调用。
思路:
- 随便编写一个函数
- 在主程序中调用即可
代码:
#include"stdio.h"
void inout(int a);
int main()
{
int a;
inout(a);
return 0;
}
void inout(int a)
{
scanf("%d",&a);
printf("%d",a);
}
结果:
题目35:
字符串反转,如将字符串 “www.runoob.com” 反转为 “moc.boonur.www”。
思路:
- 无论奇偶,交换次数是长度除以2。
- 而交换的地址相差len-2i-1即a[i]和a[len-i-1]。
代码:
#include"stdio.h"
int main()
{
char a[80],t;
scanf("%s",a);
int i,len=0,j;
for(i=0;a[i]!='\0';i++)
{
len++;
}
for(i=0;i<len/2;i++)
{
t=a[i];
a[i]=a[len-i-1];
a[len-i-1]=t;
}
printf("%s",a);
return 0;
}