2

所以我想让 hello.c 程序在一行上写名字和姓氏,所以以这种形式但是当我以这种当前形式运行我的程序时,它给了我错误“字符串常量之前的预期 â)â”我想我已经把剩下的代码写下来了,因为我已经删除了那行并运行它并且它可以工作。所以我只想问如何让我已经指出的 2 个字符串在同一行上。

这是我的代码

#include <stdio.h>
int main()
{
  char firstname[20];
  char lastname[20];
  printf("What is your firstname?");
  scanf("%s", firstname);
  printf("What is your lastname?");
  scanf("%s", lastname);
  printf("Hello %s\n", firstname "%s", lastname);
  printf("Welcome to CMPUT 201!");
  }
4

2 回答 2

6

你要

printf("Hello %s %s\n", firstname, lastname);

代替

printf("Hello %s\n", firstname "%s", lastname);
于 2013-09-12T22:23:08.390 回答
1
#include<stdio.h>
#include<string.h>

int main()
{
    char first_name[20] = " ", last_name[20] = " ", full_name[40] = " ";
    printf("What is your firstname?\n");
    scanf("%s", first_name);
    printf("What is your lastname?\n");
    scanf("%s", last_name);
    sprintf(full_name,"%s %s",first_name, last_name);
    printf("name is %s\n",full_name);
    return 0;
}

我已经使用 sprintf 展示了相同的内容。

1)同样在您的程序中,您没有返回任何内容,如果不想返回任何内容,请将其设置为 void 函数。编写 int 函数时,请始终养成返回整数的习惯。

2)此外,当您编写 printf 函数时,请始终养成添加 \n(new line) 的习惯,以便输出看起来不错

快乐编码。

于 2013-09-13T08:45:15.293 回答