| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4291 人关注过本帖
标题:实训啦,问题多多~大家多多关照!
取消只看楼主 加入收藏
走刀口→超
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:5018
专家分:0
注 册:2006-3-14
收藏
得分:0 
。。。。这下丑了呢~~~

明白了喃。呵呵~

人在江湖【走】,怎能不挨【刀】;为了能活【口】,唯有把己【超】!come on...
2006-06-26 15:19
走刀口→超
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:5018
专家分:0
注 册:2006-3-14
收藏
得分:0 

#include <stdio.h>
#include <conio.h>
#include <string.h>
#define ESC 27
#define MAX 3
struct day
{
int month;
int day1;
};
struct mydata
{
char name[20];
struct day birthday;
char telnum[14];
};
int main(void)
{
FILE *fptr1;
struct mydata a[MAX];
char ch,*p;
int i=0;
fptr1=fopen("c:\\tongxun.txt","a");

if((fptr1!=NULL))
{
printf("Input the date:\n");
do
{

printf("input the name:");
gets(a[i].name);
printf("\ninput the month:");
scanf("%d",&a[i].birthday.month);
printf("\ninput the day:");
scanf("%d",&a[i].birthday.day1);
printf("\ninput the telephone number:");
scanf("%s",&a[i].telnum);
i++;
printf("continue?(press ESC to quit)\n");
getchar();
}while(ch=getche()!=ESC && (i<MAX));

for(i=0;i<MAX-1;i++)
{if(strcmp(a[i].name,a[i+1].name)>0)
{p=a[i]; a[i]=a[i+1]; a[i+1]=p; }}//这一行!错误:incompatible types in assignment???(貌似是p和a不是同一类数据,不能交换?)
fwrite(a,sizeof(a),1,fptr1);
fclose(fptr1);
printf("\nFile append successful!!\n");
}
else
printf("File Opening Failure!!\n");
return 0;
}
C-FREE编译器。。。急死了喃。。。这么一天连个添加都没写完。。。

而且不加上排列这段,TYPE出来有乱码。为何?

[此贴子已经被作者于2006-6-26 16:08:26编辑过]


人在江湖【走】,怎能不挨【刀】;为了能活【口】,唯有把己【超】!come on...
2006-06-26 15:48
走刀口→超
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:5018
专家分:0
注 册:2006-3-14
收藏
得分:0 

实训第1天总结:
呼~不想解释了。今天一整天。忙了个鸭蛋,还晕了不少。

感觉知识还不够,有点混乱。单个用还行,一起用就XXX了!

晚上得多啃书了。还有4天喃~加油加油~~~

谢谢今天星星的指导。呵呵!代码带回去研究。


人在江湖【走】,怎能不挨【刀】;为了能活【口】,唯有把己【超】!come on...
2006-06-26 16:34
走刀口→超
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:5018
专家分:0
注 册:2006-3-14
收藏
得分:0 
干吗老找荒唐之处么。

写个通讯录咯~要有添加,查看,删除,修改!

人在江湖【走】,怎能不挨【刀】;为了能活【口】,唯有把己【超】!come on...
2006-06-27 08:37
走刀口→超
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:5018
专家分:0
注 册:2006-3-14
收藏
得分:0 
以下是引用穆扬在2006-6-26 20:57:22的发言:

更荒唐



发现了。错得真离谱能。找出错误。BUT程序实际运行扔有错误。T。T


人在江湖【走】,怎能不挨【刀】;为了能活【口】,唯有把己【超】!come on...
2006-06-27 08:53
走刀口→超
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:5018
专家分:0
注 册:2006-3-14
收藏
得分:0 
要思路。不要成品~

单单在内存中搞呀?

来试试看~~~

人在江湖【走】,怎能不挨【刀】;为了能活【口】,唯有把己【超】!come on...
2006-06-27 09:12
走刀口→超
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:5018
专家分:0
注 册:2006-3-14
收藏
得分:0 

#include <stdio.h>
#include <fcntl.h>
#include <io.h>
#define MAX 3
struct day
{
int month;
int day1;
};
struct mydata
{
char name[20];
struct day birthday;
char telnum[20];
};
int main(void)
{
int f1,i=0,j;
char ch;
struct mydata *a[MAX],*p;

f1=open("C:\\list.bin",O_APPEND|O_WRONLY|O_BINARY);

if((f1!=-1))
{
do
{
printf("input the name:");
gets(a[i]->name);
printf("input the birthday(day):");
scanf(" %d",a[i]->birthday.day1);
printf("input the birthday(month):");
scanf(" %d",a[i]->birthday.month);
getchar();
printf("input the telphonenumber:");
gets(a[i]->telnum);
printf("still input (press n ou N to quie)?");
scanf(" %c",&ch);
getchar();
i++;
}while((ch!=78)&&(ch!=110)&&(i<MAX));

for(i=0;i<MAX-1;i++)
{
if(strcmp(a[i]->name,a[i+1]->name)>0)
{p=a[i];a[i]=a[i+1];a[i+1]=p;}
}
for(i=0;i<MAX;i++)
write(f1,&a[i],sizeof(a[i]));
close(f1);
printf("Data accepted!!\n");
}
else
printf("\nFile Opening Failure!!\n");
}

帮我看一下。我输入到DAY过后就出现系统错误。弹出该内存不能WRITTEN???
先建一个list.bin在C盘里哟~搞完这个再去看单内存。哈哈!

[此贴子已经被作者于2006-6-27 9:18:48编辑过]


人在江湖【走】,怎能不挨【刀】;为了能活【口】,唯有把己【超】!come on...
2006-06-27 09:16
走刀口→超
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:5018
专家分:0
注 册:2006-3-14
收藏
得分:0 
fflush(stdin);
请问这个是啥米?

人在江湖【走】,怎能不挨【刀】;为了能活【口】,唯有把己【超】!come on...
2006-06-27 09:34
走刀口→超
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:5018
专家分:0
注 册:2006-3-14
收藏
得分:0 
以下是引用穆扬在2006-6-27 9:29:54的发言:
说的太明白
恐怕让你觉得太低估你的智力

1.scanf都忘记怎么用了么
scanf(" %d",a[i]->birthday.day1);
这种句子也写得出来?
2.把最初的函数丢掉不好
是头痛医脚
3.觉得你轻视基本概念
你的代码表明你经常基本概念不清楚

。。。是有点。觉得写得不够。。。

呼。。。。。。


人在江湖【走】,怎能不挨【刀】;为了能活【口】,唯有把己【超】!come on...
2006-06-27 09:36
走刀口→超
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:5018
专家分:0
注 册:2006-3-14
收藏
得分:0 

/* */后并不能发现他的真正功能。

只觉得和getchar();差不多。

查函数得知,将缓冲区直接写入文件(文件以写方式打开)。必须打开着是不?

慢慢来。。。慢慢来。又有点急了。


人在江湖【走】,怎能不挨【刀】;为了能活【口】,唯有把己【超】!come on...
2006-06-27 09:56
快速回复:实训啦,问题多多~大家多多关照!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028133 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved