jmfs.net
当前位置:首页>>关于c语言程序,如果输入-1就会出错的资料>>

c语言程序,如果输入-1就会出错

typedef struct node{int data;struct node *next;}node;#include #include void intiate(node *h);void show(node *h);int main(){node *m;m=(node*)malloc(sizeof(node)); //这里来分配头结点,保证根据头能找到整个链表!intiate(m);show(m);...

//仅供参考typedef struct node{int data;struct node *next;}node;#include #include node* intiate(node *h);//返回指针int main(){node *m;m = intiate(m);printf ("\nout\n");printf("%d",m->next->data );return 0;}node* intiate(node *h)...

用个while在程序入口处检查输入的字符。#include int main(void){int ctrlnum;while (1) {printf("input ctrlnum:");scanf("%d", &ctrlnum);if (ctrlnum == 0) {printf("exit\r\n");return 0;} else if (ctrlnum == 1) {break;}}//要执行的程序...

#includevoid main() { int n=0,temp,sum=0; float a=0; while(1) { scanf("%d",&temp); if(temp!=-1) { sum=sum+temp; n++; } else break; } a=(float)sum/n; printf("共输入:%d个数\n平均数为:%f\n",n,a); }

使用循环,并加入错误处理。 你搜索C语言 输入错误处理,看看有没有你想要的例子。

你好!! 你的程序里面 int 类型和 double 类型混用了,类型强制转换的时候出错了; 将类型都换成 double 类型,结果就对了。 完整的代码,你看看吧,满意请采纳 #include#includeint main(){double p(double); // 类型改为 doubledouble n=1.0,...

因为编译器所能检测到的错误信息是有限的,它能检测C语言的语法错误和语义错误,而逻辑错误一般是检测不出来的. 当你输入的程序语法和语义都没有出错但是逻辑出错时,编译会通过,但是运行的时候就通不过了,你需要重新检查你的代码,找出错误改正过来.

gets(ss); 的时候,你的ss中的字符串就变成了你输入的"ABC",strcat(ss,"6789"); 是把后面的字符串,复制到前面的字符串之后,于是就出现你的那个结果了。

#include int main(void){ int n,i=2;printf("Enter -1 to end program...\n"); printf("Enter a number to check: "); scanf("%d",&n); do{if (n==-1){printf("Bye bye... Exiting program...\n"); break;}else if((n==1)||(n==0)){printf("Num...

#include main() { float i; printf("请楼主输入成绩:"); scanf("%f",&i); if (i>=60) printf("\n成绩合格!\n"); else printf("\n楼主要努力学习哦!\n"); }

网站首页 | 网站地图
All rights reserved Powered by www.jmfs.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com