关于字符串的输入输出问题
2008-10-15 17:22
260 查看
今天看了别人的帖子,看似很简单的问题,呵呵,还真把我给蒙住了,不过已经有人解出来了,我也就顺便偷懒了,呵呵...
问题代码:
#include <stdio.h>
int main()
{
struct student
{
char name[20];
int num;
float math;
float enghis;
float compute;
float socre;
int yz;
char dz[50];
}stu;
printf("输入数据!/n");
scanf("%s,%d,%f,%f,%f,%d,%s",&stu.name,&stu.num,&stu.math,&stu.enghis,&stu.compute,&stu.socre,&stu.yz,&stu.dz);
printf("你输入的是 %s,%d,%f,%f,%f,%d,%s!/n",stu.name,stu.num,stu.math,stu.enghis,stu.compute,stu.socre,stu.yz,stu.dz);
return 0;
}
输入运行后,输出会多出些随机的字符串,看出错误了没?
改正后的代码:
#include <stdio.h>
int main()
{
struct student
{
char name[20];
int num;
float math;
float enghis;
float compute;
float socre;
int yz;
char dz[50];
}stu;
printf("输入数据!/n");
scanf("%s%d%f%f%f%f%d%s",stu.name,&stu.num,&stu.math,&stu.enghis,&stu.compute,&stu.socre,&stu.yz,stu.dz); //
printf("你输入的是 %s,%d,%f,%f,%f,%f,%d,%s!/n",stu.name,stu.num,stu.math,stu.enghis,stu.compute,stu.socre,stu.yz,stu.dz); //
return 0;
}
还改了一个地方,那就是输入格式由逗号隔开改成用空格隔开,因为若用逗号隔开,字符串输入时会把逗号也当成字符串的一部分,所以按前面那样子输入字符串后又输入数字后面是会出错的,所以一致的全都改成空格格式,学习了,呵呵...
问题代码:
#include <stdio.h>
int main()
{
struct student
{
char name[20];
int num;
float math;
float enghis;
float compute;
float socre;
int yz;
char dz[50];
}stu;
printf("输入数据!/n");
scanf("%s,%d,%f,%f,%f,%d,%s",&stu.name,&stu.num,&stu.math,&stu.enghis,&stu.compute,&stu.socre,&stu.yz,&stu.dz);
printf("你输入的是 %s,%d,%f,%f,%f,%d,%s!/n",stu.name,stu.num,stu.math,stu.enghis,stu.compute,stu.socre,stu.yz,stu.dz);
return 0;
}
输入运行后,输出会多出些随机的字符串,看出错误了没?
改正后的代码:
#include <stdio.h>
int main()
{
struct student
{
char name[20];
int num;
float math;
float enghis;
float compute;
float socre;
int yz;
char dz[50];
}stu;
printf("输入数据!/n");
scanf("%s%d%f%f%f%f%d%s",stu.name,&stu.num,&stu.math,&stu.enghis,&stu.compute,&stu.socre,&stu.yz,stu.dz); //
printf("你输入的是 %s,%d,%f,%f,%f,%f,%d,%s!/n",stu.name,stu.num,stu.math,stu.enghis,stu.compute,stu.socre,stu.yz,stu.dz); //
return 0;
}
还改了一个地方,那就是输入格式由逗号隔开改成用空格隔开,因为若用逗号隔开,字符串输入时会把逗号也当成字符串的一部分,所以按前面那样子输入字符串后又输入数字后面是会出错的,所以一致的全都改成空格格式,学习了,呵呵...
相关文章推荐
- 问题:求两个字符串的最长公共子串。 要求:输入两个字符串,输出它们的最长公共子串,包括长度。
- 任意输入一个字符串,输出它的所有子串。Python练习(未考虑去重问题)
- 关于c++中字符串的输入问题
- 关于字符串和整型指针输出问题!
- 关于输入字符串格式不正确的问题
- 关于在asp.net后台输出提示字符串的时候显示的字符提示出错的问题
- 关于getchar() 和 cin 输入字符串的速度问题
- 关于空格和回车带来的输入输出不一致问题,使用了一个奇怪的replace
- 【随笔】关于算法竞赛中使用文件输入输出和文件名的规定等问题
- 字符串输出的几种情况 关于内存问题
- 关于控制台程序的输入输出问题
- 关于字符串的存储和输出问题
- ASP与JSP 关于页面的输入和输出的问题
- 关于C语言中printf输出字符串的问题!字符串须以'\0'作为结尾。
- 问题 A: 输入字符串以及输出
- 关于float和double的输入输出问题
- 关于Devexpress xtraGrid中数字字段删除数字后出现输入字符串格式不正确问题的解决方案
- 字符串的输入输出问题
- 关于C中字符串的输入和输出使用的函数不同所造成的影响
- C语言中关于字符串的输入问题