C语言 “格式字符串未使用数据参数”与printf

a0zr77ik  于 2023-03-22  发布在  其他
关注(0)|答案(1)|浏览(311)

当我编译下面的代码时,我得到一个“Data argument not used by format string”错误:

#include <stdio.h>

int main(void)
{
    int kor[3], eng[3];
    int i;
    for(i=0;i<3;i++){
        printf("1번째 학생 성적 입력 \n", i+1);  // error shows up for this line
        printf("국어 : "); scanf("%d",&kor[i]);
        printf("\n영어 : "); scanf("%d",&eng[i]);
    }
    printf("=== 학생 성적 출력 ===\n");
    printf("학번 국어 영어 \n");
    for(i=0;i<3;i++){
        printf("%d  %d  %d \n",i, kor[i], eng[i]);
    }
}
agxfikkp

agxfikkp1#

printf("1번째 학생 성적 입력 \n", i+1);

您为printf()提供了一个参数i + 1,但它没有对应的格式说明符,因此它未被使用。
C11标准:
[...]如果格式耗尽而参数仍然存在,则多余的参数将被评估(一如既往),否则将被忽略[...]

相关问题