在C语言中使用scanf()语句时出现的常见错误是什么?
问题
scanf()C语言中使用函数读取字符串和数值数据时发生的常见错误
解决方案
该scanf() 函数用于从 C 语言的 stdin 中读取格式化输入。它返回写入其中的整数个字符,否则返回负值。
通常,在scanf()从用户读取整数后的字符串值时,我们会经常出现错误。
示例
以下是读取卷号(整数值)和学生姓名的 C 程序 -
#include <stdio.h>输出结果struct student {
char name[10];
int roll;
} s;
int main(){
printf("Enter information of students:\n");
printf("\nEnter roll number: ");
scanf("%d", &s.roll);
printf("\nEnter name: ");
gets(s.name);
printf("\nDisplaying Information of students:\n");
printf("\nRoll number: %d\t", s.roll);
printf("\nname:%s\t", s.name);
return 0;
}
在上面的例子中,roll no: was read by the compiler, 之后编译器无法读取 name 并移动到下一条语句 printf("Roll Number is: %d\t, s.roll);
and the output is "Roll number: 3name: "
这是scanf()在 C 语言中使用函数读取字符串和数字数据时出现的常见错误。
Enter information of students:Enter roll number: 3
Enter name: //error
Displaying Information of students:
Roll number: 3
name: //error
以上是 在C语言中使用scanf()语句时出现的常见错误是什么? 的全部内容, 来源链接: utcz.com/z/335611.html