c課程設計題目
① C ++課程設計題目
#include<iostream>
usingnamespacestd;
structMyNode{
doublenode;/*實數*/
MyNode*next;/*下一個結點位置*/
};
intmain()
{
MyNode*head=NULL;/*頭結點*/
doublek=0;/*輸入的實數*/
/*循環輸入N個實數,N由客戶決定,當輸入為-1.001的時候,程序退出*/
while(1){
printf("pleaseinputanum,ifyouinput-1.001,theappexits ");
cin>>k;/*接收K值*/
if(k==-1.001)break;/*如果滿足條件,程序退出,並在退出前列印排序好的鏈表*/
if(head==NULL){/*如果頭結點為空,則構造頭結點*/
head=newMyNode();
head->node=k;
head->next=NULL;
}
else{/*如果頭結點不為空則構造結點,並將其按照大小順序插入鏈表*/
MyNode*thisNode=newMyNode();
thisNode->node=k;
thisNode->next=NULL;
MyNode*temp=head;/*temp將是待插入的鏈表位置*/
MyNode*pretemp=temp;/*pretemp永遠指向temp的前一個結點,為了插入鏈表結點*/
while(temp!=NULL){
if(thisNode->node>temp->node){/*如果新結點的值大於temp結點的值,則滿足插入條件*/
thisNode->next=temp;
if(pretemp!=temp)/*如果新結點要插入頭結點後面*/
pretemp->next=thisNode;
elsehead=thisNode;/*新節點插入頭結點的前面*/
break;
}
else{/*否則temp繼續向鏈表尾部移動*/
pretemp=temp;
temp=temp->next;
}
}
if(temp==NULL)
pretemp->next=thisNode;/*結點插入在鏈表尾部*/
}
}
MyNode*temp=head;
while(temp!=NULL){/*輸出*/
printf("%lf",temp->node);
temp=temp->next;
}
printf(" ");
temp=head;
while(temp!=NULL){/*刪除鏈表,釋放空間*/
MyNode*aftemp=temp->next;
deletetemp;
temp=aftemp;
}
head=NULL;
cin>>k;
return0;
}
② 一道大一c語言課程設計的題目,求大神
免費給你一個,自己改改
#include <stdio.h>
#include <malloc.h>
#include <string.h>
struct Student
{
char xuehao[100];
char name[100];
char sex[100];
int age;
float score;
};
void menu(int *n)
{
printf("\t\t\t*********************************************\n");
printf("\t\t\t\t\t1.創建數據\n");
printf("\t\t\t\t\t2.添加數據\n");
printf("\t\t\t\t\t3.刪除數據\n");
printf("\t\t\t\t\t4.查找數據\n");
printf("\t\t\t\t\t5.按成績進行排序\n");
printf("\t\t\t\t\t6.退出\n");
printf("\t\t\t*********************************************\n");
printf("請輸入數字1-6:");
scanf("%d",n);
}
void scanfstudent(struct Student * p,int len)//輸入學生的信息 學號 姓名 性別 年齡 得分
{
int i;
for(i = 0; i < len; i++)
{
printf("請輸入第%d學生的信息:\n",i+1);
printf("學號:");
scanf("%s",p[i].xuehao);
printf("姓名:");
scanf("%s",p[i].name);
printf("性別:");
scanf("%s",p[i].sex);
printf("年齡:");
scanf("%d",&p[i].age);
printf("得分:");
scanf("%f",&p[i].score);
printf("\n");
}
}
void printfstudent(struct Student *p,int len)//對學生的信息進行輸出
{
int i;
printf("學號\t\t姓名\t\t性別\t\t年齡\t\t分數\n\n");
for (i = 0; i < len; i++)
{
printf("%s\t\t",p[i].xuehao);
printf("%s\t\t",p[i].name);
printf("%s\t\t",p[i].sex);
printf("%d\t\t",p[i].age);
printf("%.2f\n",p[i].score);
}
}
void createdata(struct Student *p,int *len)
{
int n;
printf("請輸入要創建數組的長度:");
scanf("%d",&n);
scanfstudent(p,n);
*len = n;
printfstudent(p,*len);
}
void add(struct Student *p,int *len)//增加一個學生的信息。並且按照順序排列
{
// int i,j;
//int pos = 0;
int c = 1;
while(c == 1)
{
int mylen = *len;
struct Student st;
printf("請輸入要添加學生的信息:\n");
printf("學號:");
scanf("%s",st.xuehao);
printf("姓名:");
scanf("%s",st.name);
printf("性別:");
scanf("%s",st.sex);
printf("年齡:");
scanf("%d",&st.age);
printf("得分:");
scanf("%f",&st.score);
printf("\n");
p[mylen] = st;
*len = mylen+1;
printfstudent(p,*len);
printf("\n");
printf("是否繼續添加?輸入:\n1.繼續\n2.退出\n");
scanf("%d",&c);
}
}
void Sort(struct Student *p,int len)//按照分數從大到小排列選擇排序法
{
struct Student st;
int i,j;
for(i = 0; i < len - 1; i++)
{
for(j = i + 1 ; j < len; j++)
if(p[i].score < p[j].score)
{
st = p[i];
p[i] = p[j];
p[j] = st;
}
}
printfstudent(p,len);
}
/*if(myp->score >= p[0].score)//
{
for(i = mylen; i > 0 ; i--)
p[i] = p[i-1];
p[0] = *myp;
}
else if(myp->score <= p[mylen-1].score)
{
p[mylen] = *myp;
}
*/
//else
//{
/*for(i = 0; i < mylen; i++)
{
if(myp->score >= p[i].score)
break;
}
pos = i;
for(j = mylen; j > pos; j--)
{
p[j] = p[j-1];
}
p[pos] = *myp;
*len = mylen+1;
}*/
void del(struct Student *p,int *len)//刪除學生的信息
{
int i,j;
char p1[1024];
int c = 1;
while(c == 1)
{
int mylen=*len;
printf("請輸入要刪除學生的學號:");
scanf("%s",p1);
for(i = 0; i < *len; i++)
{
if(strcmp(p[i].xuehao,p1)==0)
break;
}
if(i == 0)//刪除的是第一個元素
{
for(j = 0; j < (*len)-1; j++)
p[j] = p[j+1];
}
else if(i>0 && i<(*len)-1)//刪除中間的元素
{
for(j = i;j<(*len) -1;j++)
p[j] = p[j+1];
}
else if(i == (*len)-1)
;
else
printf("error,學號輸入有誤!\n");
*len =mylen-1;//數組長度減少一個
printfstudent(p,*len);
printf("\n");
printf("是否繼續刪除?輸入:\n1.繼續\n2.退出\n");
scanf("%d",&c);
}
}
void serch(struct Student *p,int len)//按學號或者姓名查找學生信息
{
int i,j;
int flat = 0;
char num[100];
char name1[100];
printf("請輸入1或2,1按學號查找,2按姓名查找:");
scanf("%d",&i);
if(i == 1)
{
printf("請輸入要查找的學號:");
scanf("%s",num);
for(j = 0; j <len; j++)
{
if(strcmp(p[j].xuehao,num) == 0)
{
flat ++;
break;
}
}
if(!flat)
{
printf("學號輸入有誤!\n");
}
else
{
printf("學號:%s,姓名:%s,性別:%s,年齡:%d,得分:%.2f\n",p[j].xuehao,p[j].name,p[j].sex,p[j].age,p[j].score);
}
}
else if(i == 2)
{
flat = 0;
printf("請輸入要查找的姓名:");
scanf("%s",name1);
for(j = 0; j <len; j++)
{
if(strcmp(p[j].name,name1) == 0)
{
flat ++;
printf("學號:%s,姓名:%s,性別:%s,年齡:%d,得分:%.2f\n",p[j].xuehao,p[j].name,p[j].sex,p[j].age,p[j].score);
break;
}
}
if(!flat)
{
printf("姓名輸入有誤!\n");
}
}
}
/*int main(void)
{
int len;
int c;
// char c;
// char xuehao11[1024];
// struct Student *p;
//靜態構造結構數組
struct Student p[1024];
printf("請輸入學生的個數:");
scanf("%d",&len);
// p = (struct Student*)malloc(sizeof(struct Student)*len);動態構造一個結構數組
scanfstudent(p,len);
Sort(p,len);
printfstudent(p,len);
do
{
struct Student st;
printf("\n請輸入增加的學生的信息:\n");
printf("學號:");
scanf("%s",st.xuehao);
printf("姓名:");
scanf("%s",st.name);
printf("性別:");
scanf("%s",st.sex);
printf("年齡:");
scanf("%d",&st.age);
printf("得分:");
scanf("%f",&st.score);
// serch(p,len);
printf("\n");
//printf("請輸入要刪除的學生的學號:");
printf("\n");
//scanf("%s",xuehao11);
add(p,&st,&len);
// del(p,xuehao11,&len);刪除一個學生的信息
printfstudent(p,len);
printf("是否繼續添加?\n1:是\n2不添加\n");
scanf("%d",&c);
}
while(c==1);
}*/
int main(void)
{
int n;
struct Student p[1024];
int len = 0;
while(1)
{
menu(&n);
switch(n)
{
case 1:createdata(p,&len);break;
case 2:add(p,&len);break;
case 3:del(p,&len);break;
case 4:serch(p,len);break;
case 5:Sort(p,len);break;
case 6:printf("謝謝您的使用!\n\n");break;
default:printf("輸入有誤重新輸入!\n\n");break;
}
if(n == 6)
break;
}
return 0;
}
③ c語言課程設計題目
//2:從鍵盤上輸入n個數保存到數組中,找出這n個數的最小值和它的位置,
//然後把它和數組最前面的元素版對調權位置.
#include<stdio.h>
main(){
int N;
printf("Input the value of N:\n");
scanf("%d",&N);
int str[N];
int i,j,temp,tag;
//輸入N個整數
for(i=0;i<N;i++)
scanf("%d ",&str[i]);
printf("\n");
//找出最小的數和它的下標tag
temp=str[0];
for(j=0;j<N;j++)
{
if(str[j]>temp)
temp=str[j];
tag=j;
}
//最小的數和數組中最前面的元素對換位置
str[tag]=str[0];
str[0]=temp;
int k;
//輸出對換後的結果
for(k=0;k<N;k++)
printf("%d ",str[k]);
}
④ c語言課程設計題目+3!!!!!
//平均成績(去掉最高分,去掉最低分)。這里你可以先求出最大值和最小值,用總數減去它們後再求平均值
其餘的你應該用吧
有不會的請追問
⑤ 大一c語言課程設計題目求助
😉😉😊😊😊😊😊😊☺☺
⑥ 高分求解C語言課程設計題目
針對你
de
問題誰能教教我做C語言C++的tc課程設計啊
就教教我就好
拿到...,
提供
1
份
de
適用於初學者內
de
代碼對你來說容是有必要
de
,
如有具體需求,可以我們聯系,
聯系我們需要提供你
de
問題和電子郵件,
有可能幫你,不過絕對救急,
使用網路_Hi給我留言,
此回復對於所有需求和和來訪者有效,
ES:\\
⑦ 大一C語言課程設計題目, 求急! 加100分。
#include<stdio.h>
#include<string.h>
#define N 100
typedef struct AA
{
char name[20];
char phone[12];
char e_mail[30];
char relation[20];
}AA;
/*1。輸入新聯系人2。刪除指定的聯系人(輸入姓名,若找掉則刪除該聯系人的信息)
3。根據輸入的與本人關系,顯示聯系信息4。顯示所有聯系人的信息設計菜單*/
int input__(AA * s)
{
int len = 0,i = 0,n;
printf("請輸入要添加的聯系人個數,上限為%d個 ",N);
scanf("%d",&n);
for(i=0;i<n;i++)
{
printf("請依次輸入第%d聯系人的姓名、電話、郵箱以及與本人的關系(中間使用空格隔開即可): ",i);
scanf("%s%s%s%s",s[i].name,s[i].phone,s[i].e_mail,s[i].relation);
}
return n;
}
void delete__(AA *s,int *n)
{
int i = 0,j = 0,status = 0;
char ca[20] = "";
printf("請輸入要刪除的聯系人的姓名 ");
scanf("%s",ca);
for(i=0;i<*n;i++)
{
if(!strcmp(ca,s[i].name))
{
*n = *n-1;
status = 1;
for(j=i;j<*n;j++)
{
s[j] = s[j+1];
}
break;
}
}
if(status == 0)
printf("沒有找到要刪除的人的信息 ");
else
printf("刪除成功 ");
}
void show__relation(AA *s,int n)
{
int i = 0,status = 0;
printf("請輸入與聯系人的關系 ");
char ca[20] = "";
scanf("%s",ca);
for(i=0;i<n;i++)
{
if(!strcmp(ca,s[i].relation))
{
printf("name:%15s phone:%15s e-mail:%15s relation:%15s ",s[i].name,s[i].phone,s[i].e_mail,s[i].relation);
status = 1;
}
}
if(!status)
printf("沒有找到相應的信息 ");
}
void show__all(AA *s,int n)
{
int i = 0;
for(i = 0 ; i <n ; i++)
{
printf("name:%15s phone:%15s e-mail:%15s relation:%15s ",s[i].name,s[i].phone,s[i].e_mail,s[i].relation);
}
}
int main(void)
{
AA a[N];
int n = 0;
int i;
while(1)
{
printf("0------退出系統 1------輸入聯系人信息 2------刪除指定聯系人信息 ");
printf("3------顯示與本人關系相通的聯系人信息 4------顯示所有聯系人的信息 ");
scanf("%d",&i);
if(i == 0)
break;
switch(i)
{
case 1:n = input__(a); break;
case 2:
if(n == 0)
{
printf("你還沒有添加信息,請先添加信息: ");
break;
}
else
{
delete__(a,&n);
break;
}
case 3:
{
if(n == 0)
{
printf("你還沒有添加信息,請先添加信息: ");
break;
}
else
{
show__relation(a,n);
break;
}
}
case 4:
{
if(n == 0)
{
printf("你還沒有添加信息,請先添加信息: ");
break;
}
else
{
show__all(a,n);
break;
}
}
default:
printf("您的選擇有誤,請重新選擇 ");
break;
}
}
return 0;
}
//看看~~~剛剛寫完~
⑧ C語言課程設計 設計題目管理系統
你好,源代碼,實現你所要求的,需要了就聊我
⑨ C語言課程設計題目!急!在線高分!
/*
程序可以運行,知識掌握的不錯。
不過用記事本打開文件後是無法正常閱讀的,原因是你寫入的文件不對,你運行一下修改後的程序試試:
*/
#include<stdio.h>
#include<stdlib.h>
#defineN5//定義學生個數
structstudent
{
charname[8];
intscore[3];
floatav;
};
intmain()
{
inti;
charbuf[1024];
structstudentstud;
FILE*fp;
//寫入文件
if((fp=fopen("d:\chengji.txt","w+"))==NULL)
{
printf("can'topenthisfile. ");
exit(1);
}
fprintf(fp,"姓名 平時 筆試 操作 平均 ");
printf("請輸入學生信息: ");
for(i=0;i<N;i++)
{
printf("┈┈┈┈┈┈┈");
printf(" ");
printf("姓名:");
scanf("%s",stud.name);
printf("平時:");
scanf("%d",&stud.score[0]);
printf("筆試:");
scanf("%d",&stud.score[1]);
printf("操作:");
scanf("%d",&stud.score[2]);
fprintf(fp," %s",stud.name);
fprintf(fp," %d",stud.score[0]);
fprintf(fp," %d",stud.score[1]);
fprintf(fp," %d",stud.score[2]);
fprintf(fp," %f",(stud.score[0]+stud.score[1]+stud.score[2])/3.0);
//fwrite((student*)&stud,1,sizeof(student),fp);
}
fclose(fp);
//讀出文件
if((fp=fopen("d:\chengji.txt","r+"))==NULL)
{
printf("cannotopenthefile ");
exit(1);
}
printf("--------------------- ");
fread(buf,1,1024,fp);
printf("%s ",buf);
printf("--------------------- ");
fclose(fp);//記得關閉文件
system("pause");
return0;
}
⑩ C語言課程設計題目
#include<stdio.h>
#include<stdlib.h>
int main()
{
抄char f[128],key[64],buf[1024],*pos;
int count=0;
FILE *inf;
printf("請輸入要在其中查找關鍵詞的文件名和關鍵詞:");
scanf("%s %s",&f,&key);
inf=fopen(f,"r");
while(fgets(buf,1024,inf))
{
pos=buf;
while(pos=strstr(pos,key))
{
count++;
pos=pos+strlen(key);
}
}
printf("關鍵詞%s在文件%s中共出現了%d次。\n",key,f,count);
fclose(inf);
system("PAUSE");
return EXIT_SUCCESS;
}