1.网络新手的原型是一个名为B1FF的人,他有一种独特的编写消息的方法。下面是一条常见的B1FF公告:
H3Y DUD3,C 15 RILLY COOL!!!!!!!!!!
编写一个“B1FF过滤器”,它可以读取用户录入的消息并把此消息翻译成B1FF的表达风格:
Enter message:Hey dude,C is rilly cool
IN B1FF-speak:H3Y DUD3,C is RILLY COOL!!!!!!!!!!
程序需要把消息转换成大写字母,用数字代替特定的字母(a->4,b->8,E->3,I->1,o->0,s->5),然后添加10个左右的感叹号。提示:把原始消息存储在一个字符数组中,然后从数组头开始逐个的翻译并显示字符。
程序代码:
#include<stdio.h>
#include<stdlib.h>
//定义一个新类型bool
#define N 40
int main(void)
{
int i,num=0;
char message[N],ch;
printf("Enter message:");
while((ch=getchar())!='/n')
{
message[num]=ch;
num++;
}
for(i=0;i<num;i++)
{
if(message[i]=='a')
message[i]='4';
else if(message[i]=='b')
message[i]='8';
else if(message[i]=='e')
message[i]='3';
else if(message[i]=='i')
message[i]='1';
else if(message[i]=='o')
message[i]='0';
else if(message[i]=='s')
message[i]='5';
else if(message[i]>='a' && message[i]<='z')
message[i]=message[i]-32;
else
message[i]=message[i];
}
for(i=0;i<num;i++)
printf("%c",message[i]);
printf("!!!!!!!!!!");
printf("/n");
return 0;
}
2.编写一个程序,根据用户输入的英文名和姓名先显示姓氏,其后跟一个逗号,然后显示名的首字母
Enter a first and last name:Lloyd Fosdick
Fosdick,L
程序代码:
#include<stdio.h>
#include<stdlib.h>
//定义一个新类型bool
#define N 40
int main(void)
{
char name[N],ch;
int num=0,i=0;
printf("Enter a first and last name:");
while((ch=getchar())!='/n')
{
name[num]=ch;
num++;
}
while(i<=num && name[i]!=' ')
i++;
for(i=i+1;i<=num;i++)
printf("%c",name[i]);
printf("%c",',');
printf("%c",name[0]);
printf("/n");
return 0;
}