因为你非常有可能每输入一个字符就按了一次回车,而回车其实也是一个字符。在 scanf("%c",char[i]);语句后加上一句getchar();就可以啦!如果前面有输入数据的情况。把getchar();放在 scanf("%c",char[i]);之前。
scanf("%s",name); while(i<n) { if(strcmp(students[i].name,name)==0) /*若找到姓名*/ { printf("学生学号:%s\n学生姓名:%s\n学生年龄:%d\n学生性别:%s\n学生C语言成绩:%-8.0f\n计算机成绩:%-8.0f\n英语成绩:%-8.0f\n平均成绩:%-8.0f\n",students[i].num,students[i].name,students[...
scanf()是C语言中的一个输入函数。与printf函数一样,都被声明在头文件stdio.h里,因此在使用scanf函数时要加上#include <stdio.h>。(在有一些实现中,printf函数与scanf函数在使用时可以不使用预编译命令#include <stdio.h>。)函数 scanf() 是格式输入函数,即按用户指定的格式从键盘上把数据输入...
scanf ("%S",mingzi); for (u=0;u<n;u++) { if(strcmp(mingzi,student[u].name)) { printf ("\n学号:%s",student[n].num); printf ("\n姓名:%s",student[n].name); printf ("\n班级:%s",student[n].classes); printf ("\n性别:%s",student[n].sex); printf ("\n语文成绩:%s",...
最大的问题出在你的数据写入,也就是你的 scanf("%s,%d,%s,%.0f",&p1->name,&p1->num,&p1->grade,&p1->tel_num);//有问题 要读入字符串是,你用‘,’作分隔符显然是不可取的,因为系统会把','当做字符串中的一个字符读入,因此你输入一长串的数据,实际上都赋给了char name[10]...
如果你的是英文字符字母的标点符号的话是没有错的,就是你的if后面要加中括号。
需要准备的材料分别有:电脑、C语言编译器。1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp。2、在test.cpp文件中,输入C语言代码:char a;scanf("%c", &a);if (a < '0' || a > '9') {printf("输入错误\n");} 3、编译器运行test.cpp文件,此时成功判断了输入的...
char X[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'}; scanf("%d",&a); for(i=0;a!=0;i++) { b[i]=a%base; a=a/base; } for(--i;i>=0;i--) //开始有一个 --i { int j=b[i]; printf("%c",X[j]); } printf(...
4. 在使用scanf函数读取字符串时,可以使用%s占位符,但要注意%s不会读取空格。如果需要读取包含空格的字符串,可以使用%[^\n]等其他占位符或使用其他方法处理。示例代码 下面是一个简单的示例,演示了如何使用scanf函数从键盘读取整数和字符串:c include int main { int num;char str[100];printf;...
在C语言编程中,我们常常会遇到getchar()、gets()、getchar()、scanf()这几个函数,它们在读取输入数据方面各有特点。接下来,我会简要介绍这几个函数的主要用途。1. getchar()主要用于读取字符数据。比如,当你输入数字9时,它会读取的是'9'这个字符,而非9这个数值。如果你希望以整形形式输出,...