帮忙写一个程序,基础入门的

编写一个程序,首先要求用户输入名字,然后要求用户输入姓氏。在一行打印输入的姓名,在下一行打印每个名字中字母的个数。把字母个数与相应名字的结尾对齐,如下所示:
Melissa Honeybee
7 8
然后打印相同信息,但是字母个数与相应单词的开始对齐。
Melissa Honeybee
7 8

这是C Primer Plus 中文版第五版的编程练习,官网下载的答案没有,求大侠帮帮忙
最好大侠帮忙写个完整的程序,我用来参考

#include<stdio.h>
#include<string.h>

int main()
{
char str1[20],str2[20];
scanf("%s%s",&str1,&str2);
int num1=strlen(str1);
int num2=strlen(str2);
printf("%*.*s",0,num1,str1);
printf("%*.*s\n",(num2+1),num2,str2);

printf("%d",num1);
printf("%*d\n",num1+1,num2);
//第二次输出
printf("%.*s",num1,str1);
printf("%*.*s\n",(num2+1),num2,str2);

printf("%*d",num1,num1);
printf("%*d\n",num2+1,num2);
return 0;
}追问

你有测试过吗,不行呢

追答

可以的

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-11-17
#include <stdio.h>
#include <string.h>
void main ()
{
 char sur[20],name[20];
    int ns,nn,i;
 printf ("输入名字:");
 gets (name);
    nn = strlen (name);
 printf ("输入姓氏:");
 gets (sur);
    ns = strlen (sur);
 printf ("%s %s\n",sur,name);
 for (i=0; i<ns-1; i++)
  printf (" ");
 printf ("%d",ns);
 for (i=0; i<nn; i++)
  printf (" ");
 printf ("%d",nn);
 printf ("\n");
 printf ("%s %s\n",sur,name);
 printf ("%d",ns);
 for (i=0; i<ns; i++)
  printf (" ");
 printf ("%d\n",nn);
}

第2个回答  2013-11-17
打印时格式分别为 printf("%nd",int); printf("%-nd",int); n为你自己想要的字符宽度 int不用解释了吧 呵呵
相似回答