-1

当我输入一个单词时,我按空格键然后我不知道为什么,但我需要再输入一个单词或一个字母来停止扫描。

    #include <stdio.h >
        char string1[20];
    char a='a', b='b', g='g', d='d', e='e', v='v', o='o';

    int i;
    int sum;

    printf (" my word is:\n");
    scanf( "%19s ", string1);
 sum=0;
       for (i = 0; string1[i] !='\0'; i++)
    {
    if (string1[i]==a ) {sum=  +1;} else
    if (string1[i]==b ) {sum=  +2;} else
    if (string1[i]==g ) {sum=  +3;} else
    if (string1[i]==d ) {sum=  +4;} else
    if (string1[i]==e ) {sum=  +5;} else
    if (string1[i]==v ) {sum=  +6;} else
    if (string1[i]==o ) {sum=  +50;} else
    {sum=0;} }
    printf ("%d\n" , sum);
    return 0;
    }
4

1 回答 1

3
scanf( "%s\n ", string1);

您要求scanf继续扫描,直到您在单词后键入除空格以外的其他内容。要阅读一个单词,请单独使用%s

于 2013-04-02T14:23:07.120 回答