求C语言题目(要具体的程序!) 建立一个链表,将数据放入链表,先输出链表,再将链表逆序

作者&投稿:吴忠 (若有异议请与网页底部的电邮联系)
急求一个C语言程序 题目要求 建立一个简单的链表即可 越少越好 程序越短越好 谢谢了~

#include
#include

typedef struct node{
int data;
struct node *next;
}NODE;
NODE* print(NODE* head) //输出链表
{
while(head){
printf("%d ",head->data);
head=head->next;
}
return 0;
}
NODE *creat( NODE *head) //创建链表(先输入n 表示有n个链表数据)
{
NODE *tail, *p;
int num,i,n;
head = tail = p = NULL;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d", &num);
p = (NODE *)malloc(sizeof(NODE ) );
if(p==NULL)return NULL;
p->data = num;
p->next = NULL;
if ( head==NULL ){
head = tail= p;
}else{
tail->next =p;
tail=p;
}
}
return head;
}
nt main(){
NODE *h1=NULL;
h1=creat(h1);
print(h1);
return 0;
}

图片在哪里???
#include
#include

struct node
{
int num;
struct node *next;
};//定义节点

int main()
{
struct node *p,*temp,*head;
int i,a=1;
temp=(struct node *)malloc(sizeof(struct node));//开辟一个节点空间
temp->num=a;
head=p=temp;//得到头结点
p->next=NULL;
for(i=0;i<9;i++)
{
a=a+2;
temp=(struct node *)malloc(sizeof(struct node));
temp->num=a;
temp->next=NULL;
p->next=temp;
p=p->next;
}

p=head;
for(;p != NULL;)//打印链表
{
printf("%d,"p->num);
p=p->next;
}

return 0;


}

#include <stdio.h>
#include <stdlib.h>
typedef struct node
{
int num;
node* next;
}node,*link;
void creat(link &head)
{
link p,q;
head=new node[sizeof(node)];
q=head;
int i=1;
do
{
p=new node[sizeof(node)];
printf("请输入第%d个数:",i++); //结束标记为0
scanf("%d",&p->num);
if(p->num!=0)
{
q->next=p;
q=p;
}
}while(p->num!=0);
q->next=NULL;
}
void reserve(link &head)
{
if(head->next ==NULL)
return;
link pre, cur, ne;
pre=head->next;
cur=head->next;
while(cur)
{
ne = cur->next;
cur->next = pre;
pre = cur;
cur = ne;
}
head->next->next = NULL;
head->next = pre;
}
void show(link head)
{
link p=head->next;
while (p)
{
printf("%d ",p->num);
p=p->next;
}
printf("\n");
}
void main()
{
link head=NULL,p;
int i;
creat(head);
show(head);
printf("链表逆序:");
reserve(head);
show(head);
}


c语言题麻烦按题目要求写下然后告诉我大概过程谢谢
注意:上面的算法假设了月份是从 1 开始编号的,如果月份是从 0 开始编号的,则需要将上面的算法中的 month - 1 改为 month。需要注意的是,上面的算法中的 is_leap_year 函数没有给出,因为实现方法取决于你所使用的语言。在 C++ 中,可以使用以下代码来判断一个年份是否为闰年:bool is_leap_...

c语言选择题,要过程,详细
第四题:A “<”“>”属于是逻辑运算,运算出来的值只能是0或1,a=1;b=2;c=2,先判定while循环的条件语句,(a<b<c)从左往右运算,a<b为真,表达式的值为1,然后1<c为真,整个条件语句就为真,进入循环体,(t=a;a=b;b=t;就是做a与b值的交换)此时a=2,b=1,c--=2,c=1;...

c语言编程题目求解
题目1:使用if多分支结构:c include<stdio.h> int main(){ int score;printf("请输入学生的成绩:\\n");scanf("%d", &score);if(score>=90 && score<=99){ printf("学生的成绩等级为A\\n");}else if(score>=80 && score<=89){ printf("学生的成绩等级为B\\n");}else if(score>=...

求帮忙~计算机C语言的编程题!大学选的辅修课没去过,要考试了不会呀...
楼主 我来拯救你~~~ 10道题全部奉上~~!!!有些题别人已经给出了,我引用一下啊(懒得重写了),大家不要喷我哦~~~第一题 include<stdio.h> int main(){ int d1,d2,d3,n=253;d1=n%10;d2=n\/10%10;d3=n\/100%10;printf("253的:\\n个位数为%d\\n十位数为%d\\n百位数为%d\\n...

C语言选择题8,9题,求大神给个具体解答思路和解析,谢谢了,在线等...
解析:B 选项中 char *p = &s;,该句无意义,由于 s 已经是一个 char * 变量了,再进行 & 操作符只会使它变为一个 char ** 的表达式,赋值到 p 中。C 选项中 char *p; p = *s;,该句无意义,只是把一个 char 表达式强制转换成 char * 表达式赋值到 p 中。D 选项中 char *p; ...

急!急!简单c语言编程题,求编写代码
\/\/第一题#include<stdio.h>void fun(int n){ int i,j,k,t;for(k=0;k<n;k++)\/\/控制总行数{ for(i=0;i<n-k-1;i++)\/\/控制输出空格,因为空格不好看见,就用*代替 printf("%c",'*'); for(j=0;j<2*k+1;j++)\/\/控制输出字母 { printf("%c",65+j)...

C语言程序设计题目:麻烦各位知道的大大解答下,顺便也写一下解题步骤...
鄙视一下出题的老师,代码写的真难看,我把格式修改了一下,有的地方为了方便讲解,也改了形式。只要你稍微学过一点,一定能看懂。我希望你别把我给你的解释直接复制粘贴,一定要自己好好看看,认真消化!小弟弟,学点东西就比不学强,c语言很重要的,加油吧!\/ \/* 问题一:这个问题的结果是8。\/ ...

用C语言做以下题目,请教高手最好调试一下!用最简单的语句哈,要不看不...
(0)include<stdio.h> main(){ int a,b,c,d,e;double s,u;for(e=2;e<=9;e++)for(a=1;a<=9;a++)for(b=0;b<=9;b++)for(c=0;c<=9;c++)for(d=0;d<=9;d++){s=a*1000+b*100+c*10+d;u=b*1000+c*100+d*10+e;if(s*e==u)printf("%lf*%d=%lf\\t",s,...

c语言简单题目,高手解答下
printf("What to do?(p(Pop)\/u(pUsh)\/c(Clear)\/q(Quit)):\\n");scanf("%c", &aChar);if(aChar == 'u'){ printf("Please enter a number:");scanf("%d", &aInt);printf("此处压栈\\n");Push(aInt);} else if(aChar == 'p'){ printf("此处弹栈\\n");Pop();} else ...

c语言题目 b=3 ; b=(++b)+(++b)+(++b); 输出最终b=? 答案是16 具体怎么...
只能说是编译器的原因,你试试:b=3;b=(++b)+(++b);估计答案是10.++的优先级比+高,所以先做2次++,b变成了5,再做b=5+5=10;但是你写b=(++b)+(++b)+(++b);答案是16 说明编译器先把(++b)+(++b)=10,算了出来,再做了b=10+(++b)=16 其实不考虑编译器,我觉得正确答案...

萝北县18335851564: 求C语言题目(要具体的程序!) 建立一个链表,将数据放入链表,先输出链表,再将链表逆序 -
弋剂安坤: #include typedef struct node { int num; node* next; }node,*link; void creat(link &head) { link p,q; head=new node[sizeof(node)]; q=head; int i=1; do { p=new node[sizeof(node)]; printf("请输入第%d个数:",i++); //结束标记为0 scanf("%d",&...

萝北县18335851564: C语言题,求大神帮忙啊C语言作业要求 1.从键盘输入3个字符串,要求找出其中最大者 . 2.写一程序,判断一字符串是否是回文,若是输出YES,否则输出... -
弋剂安坤:[答案] 具体代码如下: #include int main() { int a,b,c; scanf("%d%d%d",&a,&b,&c); printf("%d\n",(a=a>b?a:b)> c?a:c); } #include #include int main() { char s[50]; char *p,*q; p = s; gets(s); q = &s[strlen(s)-1]; while(p++ = 0; i--) { if('a'

萝北县18335851564: 帮小弟做一道C语言编程作业题,谢谢大家了~(要详细的程序命令啊)
弋剂安坤: #include&lt;stdio.h&gt;#include&lt;malloc.h&gt;struct student{char no[10];float score;};void main(){int N,i,num=0;float max;struct student *p;scanf("%d",&amp;N);//输入学生人数p=(struct student*)malloc(N*sizeof(struct student));for(i=0;i&lt;N;i++)...

萝北县18335851564: 求一道C语言程序设计题,具体要求如下: -
弋剂安坤: #include <math.h> main() {float s,a,r; scanf("%f",&s); r=sqrt(s/3.14159); a=sqrt(s); if(2*r>a) printf("圆的直径大"); else printf("正方形的边长大"); scanf("%f",&a); if(pow(a,2)>3.14159*pow(a/2,2)) printf("正方形的面积大"); else printf("圆的面积大"); system("PAUSE"); return ; }

萝北县18335851564: 急求一道C语言题目,怎么编程序?
弋剂安坤: /*按照要求和提示我写了patient *Creat()、patient *Delete()、int InLine(patient *head)、patient *OutLine(patient *head)、int Search(patient *head)函数,因为不清楚你对程序控制的要求,我简单地写了个控制菜单int menu()函数,用来简单控制...

萝北县18335851564: 求c语言编程例题!
弋剂安坤: #include<stdio.h> #include<string.h> main() { char t[50],temp; int n,i; clrscr(); printf("please input a string:"); gets(t); n=strlen(t);for(i=0;i<n/2;i++) { temp=t[i]; t[i]=t[n-i-1]; t[n-i-1]=temp; }printf("%s",t); getch(); }

萝北县18335851564: 求C语言题目
弋剂安坤: c语言经典100题: 【程序1】 题目:有1,2,3,4个数字,能组成多少个互不相同且无重复数字的三位数 都是多少 1.程序分析:可填在百位,十位,个位的数字都是1,2,3,4.组成所有的排列后再去 掉不满足条件的排列. 2.程序源代码: main() { int i,j,k...

萝北县18335851564: 一道数据结构 用C语言建立单链表的编程题目,求助. -
弋剂安坤: 这个程序是以前做的,看起来复杂,其实是太多的判断和提示内容而已,你看看主函数,再运行一下,再看看创建链表的函数,关键部分并不多,应该不难看懂,另外模块我...

萝北县18335851564: 帮我用c语言程序求出这道题目
弋剂安坤: #include<stdio.h> void main() { float change,a[10]={100,50,20,10,5,2,1,0.5,0.2,0.1}; //定义当前正在发行的人民币面值. int i,count=0; printf("请输入工资金额(元):"); scanf("%f",&change); printf("最少找钱方案为: \n"); for(i=0;i...

萝北县18335851564: 跪求两道C语言编程题,急!!!!!!!!!
弋剂安坤: 恩 好方法, 记的我一次面试的时候主考官就是出的这道题目,我当时是用下面这方法的 #include "stdio.h" void fun(char *p) { int i=0,j=0; int m,n; char a[100]; /*数组下标据P的大小而定*/ char b[100]; char *str,*s2,*s3; char c; a[0]='\0'; b[0]='\0'; str...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网