佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 1481|回复: 7

C programming language

[复制链接]
发表于 23-8-2009 01:28 AM | 显示全部楼层 |阅读模式
各位,我的大学assignment 搞到我一个头两个大。可以帮帮我吗?
帮我写几个function也好。。

题目的要求是这样的:

create an address book with:
-contain last name n 1st name
-able to insert address
-able to search address by last name(要有多过一个的可能性)
-able to delete the previous search
-able to display the entire address book

我的问题:
1. 要怎样做sorting?
2.用text file 来store the data?array可以吗?
3.要怎样delete之前的搜寻?
4.我insertdata时, 药store在哪里?
5.search function要怎样写?

帮帮我,做到要呕
回复

使用道具 举报


ADVERTISEMENT

发表于 23-8-2009 03:15 AM | 显示全部楼层
原帖由 ~龍兒~ 于 23-8-2009 01:28 AM 发表
各位,我的大学assignment 搞到我一个头两个大。可以帮帮我吗?
帮我写几个function也好。。

题目的要求是这样的:

create an address book with:
-contain last name n 1st name
-able to insert address
...


你是utar精算第1年的吧..
1. 要怎样做sorting?
大概是這樣
用for loop, 再用strcmp來compare每個record, 大過0 (1=現在的record大過下面的record)就是需要sort, 就先把當前record存進1個暫時的variable
然後把下面的record存進當前record, 再把剛才的暫存record存進下面的record

2.用text file 来store the data?array可以吗?
你們應該有學到fopen那些吧. fprintf就是把data寫進去text file
從text file read出來就用fscanf

3.要怎样delete之前的搜寻?
這個跟sorting差不多, 都是換位子的問題
比如說你有0, 1, 2, 3, 4, 5  (index number)
你要delete 3, 你的for loop就從3開始, 把4寫進3, 5寫進4, 可以用strcpy
那麼, 3就不見了咯

4.我insertdata时, 药store在哪里?
從你的program來看..都是先store在array的, 過後才選擇save進text file吧

5.search function要怎样写?
用for loop + strcmp, 就像剛才我說的strcmp, 0就是一樣, 所以strcmp(value1, value2)==0 就是找到了


怎樣整合起來..就花點時間去想咯
1個個function慢慢做吧, 完整了才做下一個
回复

使用道具 举报

发表于 23-8-2009 03:37 AM | 显示全部楼层
原帖由 ~龍兒~ 于 23-8-2009 01:28 AM 发表
各位,我的大学assignment 搞到我一个头两个大。可以帮帮我吗?
帮我写几个function也好。。

题目的要求是这样的:

create an address book with:
-contain last name n 1st name
-able to insert address
...


没错,你就是UTAR生。
有些程序你们还没学到
所以呢,不懂怎样解释!  加油
回复

使用道具 举报

 楼主| 发表于 23-8-2009 12:37 PM | 显示全部楼层

回复 2# mdw1121686 的帖子

你怎么知道我是utar的?还知道精算?不过我不是year1 了。。。

1.要用什么sorting?
selection sort?bubble sort?insertion sort?有tutor跟我说用string compare窝?

『2.用text file 来store the data?array可以吗?
你們應該有學到fopen那些吧. fprintf就是把data寫進去text file
從text file read出來就用fscanf 』
- idea是不是这样——txt file是空的。我insert data进去,把它store在txt file。
如果要display就fscanf?
回复

使用道具 举报

发表于 23-8-2009 01:03 PM | 显示全部楼层
原帖由 ~龍兒~ 于 23-8-2009 12:37 PM 发表
你怎么知道我是utar的?还知道精算?不过我不是year1 了。。。

1.要用什么sorting?
selection sort?bubble sort?insertion sort?有tutor跟我说用string compare窝?



『2.用text file 来store the data?array可 ...


啊..搞錯
沒啦..因為看過朋友的題目



1.要用什么sorting?
selection sort?bubble sort?insertion sort?有tutor跟我说用string compare窝?
只是說sorting的話  沒加以解釋  甚麼sort都可以吧
我跟你說的"strcmp" 拆開來讀就是string compare咯
sort方面你甚麼都可以sort吧, 通常呢我們就拿名字來sort, 大多數人都用last name吧
用法是這樣, strcmp("aaa", "bbb"), 如果aaa小過bbb就return -1
等於就return 0
大過就return 1
所以你大概是這樣配合for loop用  
for(i=0; i<n;i++)
{
if(strcmp(record[i].name, record[i+1].name)>0
{
xxx
}
}
大過0時就是record i 大過 record i+1   (example: qqq 大過 ppp)
然後就照我剛才說的方法換位


『2.用text file 来store the data?array可以吗?
你們應該有學到fopen那些吧. fprintf就是把data寫進去text file
從text file read出來就用fscanf 』
- idea是不是这样——txt file是空的。我insert data进去,把它store在txt file。
如果要display就fscanf?

你這idea沒錯, 不過還是要看你的題目是怎樣
你題目是不是有叫你可以save, 又可以retrieve的?
所以我覺得應該是這樣: 先把data store在array, 再有個save function把array裡面的data寫進txt file
display時, 從array裡面拿出來
如果剛開program, array裡面沒data, 就要從load function裡面read data store進array, 再從array display出來

[ 本帖最后由 mdw1121686 于 23-8-2009 02:13 PM 编辑 ]
回复

使用道具 举报

发表于 1-9-2009 05:44 PM | 显示全部楼层
又想过用dymanic link list吗?
回复

使用道具 举报

Follow Us
发表于 1-9-2009 11:12 PM | 显示全部楼层
year1用linked-list,有点勉强呢,导师应该还没教。
回复

使用道具 举报

发表于 6-9-2009 07:25 PM | 显示全部楼层
http://www.youtube.com/watch?v=Z5i07EF_Nh4
我之前做的,也是assignment, year 1 时候做的。
大同小异,但我是phone book...
回复

使用道具 举报


ADVERTISEMENT

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 7-12-2025 03:41 PM , Processed in 0.163661 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表