C scanf 函数如何只读取字符串的第一个字符

发布于 科技 2024-06-25
16个回答
  1. 匿名用户2024-01-29

    你如何写输入控制字符串。

    目标??? 键入 yes

    char array[4];定义长度为 4 的字符串。

    scanf("%s",array);%s 输出字符串控制器。 数组最初是一个地址。

    就是这样。 char yon;

    scanf("%c",&yon);

    if(yon==89||yon==121),因此当输入 yes 时 if 为 true。

    这个程序只能输入一个字符,不能输入字符串yes,yes要占用3个字符的空间,一个yon变量不能容纳]。

    希望

  2. 匿名用户2024-01-28

    带字符

    a[10];,则 a 是指向数组第一个元素的指针,a 是指向数组的指针; 因为指向一维数组的第一个元素的指针与指向此数组的指针的地址相同,所以区别在于 a+1 指向 a[1],而 &a+1 指向 a[10](此处超出界)。 但是&a和a's"价值"是一样的,只是类型不同。 当 c 调用该函数时,参数的类型被强制为参数的类型 scanf("%s", a) 或 scanf ("%s", a) 要求参数为 char

    至于类型指针,&a 是 char 尽管如此

    类型,但被强制转换为 char

    形状。。。。。。

  3. 匿名用户2024-01-27

    你现在这样写 yes 也是真的,但如果你不希望它保留在输入缓冲区中,你可以这样写它:

    char yon;

    scanf("%c",&yon);

    fflush(stdin);

    if( you=='y' ||yon=='y' )

  4. 匿名用户2024-01-26

    你定义 char y 吗? 这肯定是一个字符,并且将定义一个字符数组。

  5. 匿名用户2024-01-25

    这是一个字符,而不是字符串。

  6. 匿名用户2024-01-24

    使用 scanf(%s, &flag) 应该会出现溢出错误。

    我已经很久没有c了,所以我会帮你下来。

  7. 匿名用户2024-01-23

    默认的scanf回车符和空格是不同组之间的间隔和结束符号,所以不能输入带空格的字符串,建议使用gets来完成这个功能,gets是以回车符结束的:

    char str[40]; gets(str);

  8. 匿名用户2024-01-22

    字符串并不意味着专门用于读取字符串,因此建议您需要使用字符串读取数据,字符串可以用作标头。

    使用 char * gets(char *) 读取 使用 char *puts(char *) 输出。

    可以使用更安全的:

    使用 char * fgets(char *,int,stdin) 输出 char * fputs(char *,int,stdout) 读入。

    scanf() 停止读取空格,但不会丢弃数据。

  9. 匿名用户2024-01-21

    #include

    #include

    int main()

    k=i;k 是字符串的长度。

    for(i=k-1;i>=0;i--) string 输出 printf("%c",para[i]);

    printf("");

    return 0;

    试试上面**,我已经调试好了。

  10. 匿名用户2024-01-20

    scanf("%c",para);这个位置应该是循环的。

  11. 匿名用户2024-01-19

    一个循环被解决,

  12. 匿名用户2024-01-18

    老大哥'\0'例如,您可以将其更改为其他内容''另外,看看你for后面的分号,编译运行弟弟给的**。

    #include

    intmain()

    没错,但如果你也想读取返回结果,只需使用 eof,并记住以 ctrl+c 结尾。

  13. 匿名用户2024-01-17

    第一个错误:for后面的分号。

    第二个错误:string[i]!,在为 string[i] 赋值之前。='\0'条件是常数,相当于一个无限循环。

    可以将其更改为 do--while()。

    dowhile(i<100&&

    string[i-1]!='\0');

  14. 匿名用户2024-01-16

    scanf("%2x",&a[0]);

    它可以以两位数的宽度读取。

    printf("%d",a[0]);以十进制系统查找并打印它。

  15. 匿名用户2024-01-15

    在 scanf 函数中,可以使用 %c 读取字符,使用 %s 读取字符串,但读取字符串时不要忽略空格,读取字符串时不要忽略起始空格,最多读取空格,因此只能读取一个单词,而不能读取整行字符串。

    事实上,scanf 函数也可以做到这一点,而且功能更强大。 这里有一个参数,[这个参数的意思是读进一组字符。 [ 是一个集合的符号,所以 %[ 特指那些读入该集合的字符,例如 %[a-z] 是输入大写字母,遇到不在这个集合中的字符时会停止。

    如果集合的第一个字符是"^",这意味着读取不存在"^"遇到后一个字符集合"^"以下集合的字符停止。 请注意,字符串可以包含空格,并且还将读取字符串的开头。

  16. 匿名用户2024-01-14

    int i,j,m;

    scanf("%d%d%d",&i,&j,&m);

    int a = ;

    for(int k = 0; k < 3; k++)printf("%d",a[k]);

    只需将输入的数字放入数组中,就不会有空格字符。

相关回答
14个回答2024-06-25

<>因为你的格式化控件是%dspace%dspace,所以在第一种情况下,也应该有1个空格和2个空格,否则直接按回车键,回车键就存放在空格中,这样不会结束语句,而是等待输入。 更正:删除了第二个空格。

23个回答2024-06-25

这个想法没有错。 估计是文件名长度问题。 如果使用的是早期构建平台,则文件主名称不应超过 8 个字符,扩展名不应超过 3 个字符。 *DAT很好......

18个回答2024-06-25

假设 scanf("%f%e",&a,&y);它应该是 scanf("%f%e",&x,&y); >>>More

13个回答2024-06-25

使用 scanf 和 printf 函数时,请添加 include。 其中 scanf() 是格式输入函数,printf() 是格式输出函数。 >>>More

14个回答2024-06-25

你能说清楚吗,我不知道你的意思。 是否要在 main 函数中调用一个函数,然后不知道如何定义被调用的函数? 如果是这样的话,我可以告诉你。 >>>More