30/09/2018, 19:28
Lỗi control may reach end of non-void function trong XCODE
chào các anh , em mới tập tành học C làm bài quản lý sinh viên mà cái xcode nó cứ bắt em trả về giá trị cho cái hàm nhập mà em trả về cái gì cũng không fix được , em còn thiếu kinh nghiệm nên muốn post code lên đây các anh sửa giúp em , em cám ơn ạ
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct sinhvien{
char ht[30];
int tuoi;
struct sinhvien *next;
} sv;
sv nhap(sv *p){
sv *pdau;
int i=0,tuoi;
char ten[30];
p=NULL;
pdau=NULL;
while(i){
printf("
nhập tên : ");
fflush(stdin);
gets(ten);
if(ten[0] == ' '){
return *pdau;
}
if(pdau == NULL){ // con trỏ pdau chưa trỏ vào đâu
p=(sv *)malloc(sizeof(sv)); // cấp phát bộ nhớ động cho con trỏ p để lưu thông tin
pdau=p; // cho pdau trỏ tới p
}
else{
(*p).next=(sv *)malloc(sizeof(sv)); // cấp phát bộ nhớ động cho cấu trúc tiếp theo
p=(*p).next; // cho p trỏ tới cấu trúc mới để nhập thêm thông tin
}
strcpy((*p).ht,ten);
printf("
nhập tuổi : ");
(*p).tuoi=tuoi;
(*p).next = NULL; // không trỏ p tới cấu trúc tiếp theo nữa
}
}
void xuat(sv *p,sv *pdau)
{
p=pdau;
while(p!= NULL){
printf("
%30s | %3d",(*p).ht, (*p).tuoi);
p=(*p).next;
}
}
void manin()
{
sv *pdau,*p;
char ch=';';
while (ch != 27){
printf("
Chọn công việc ( ấn ESC để thoát) : ");
printf("
1. Nhập ");
printf("
2. Xuất ");
printf("
3. Xoá ");
printf("
Thêm ");
ch=getchar();
switch(ch){
case '1': {
system("cls");
nhap(p);
break;
}
case '2' :{
system("cls");
xuat(p,pdau);
break;
}
}
}
}
Bài liên quan
uppp các anh giúp em với ạ
Hàm nhap return đâu, k cần return thì cho void chứ sao lại để sv vào đó
hàm nhập đấy dùng để nhập thông tin vào p theo cái cấu trúc sv , không bỏ được cái sv đâu bác ạ
Thì bạn return cái đã nhập ra
thanks bác nhé, nhưng mà em chưa hiểu cái hàm nhập đấy em return mấy cái rồi ko được , bác thử bỏ vào ide giúp em với ^^
bạn code cái gì đây…
code bài tập quản lý sinh viên bác ạ
bạn tham khảo code mình nhé, code clean hơn nữa nhé
em cám ơn bác đã nhiệt tình giúp em
em sẽ xem lại vào báo cho bác ạ ^^