1楼:六翼幻世
输入n的时候的回车被gets(a)收到了,然后你认为输入a的时候的内容,被m接收了
gets()和scanf()不同gets()将回车之前的专字符全部取走,之后将属回车变成’\0’并且取走;
如果scanf()后面紧跟gets()那么要在两个之间加入getchar()取走回车
如scanf("%c",&n);
getchar();
gets(str);
2楼:夏天的小红花
这是由于抄程序在读取数字时只读取了前bai面的数字du部分,而把后面的回车符留zhi在了键盘缓dao冲区,所以在下面读取字符串时遇到这个回车符就结束了,也就是说程序读到了一个空的字符串。另外,在下面复制字符串的时候并没有复制字符串的结束符。下面的**改正了这些问题。
#include
#include
int main()
b[j]='\0';
printf("%s",b);
return 0; //有更改}
关于switch语句的使用问题,关于C语言问题中switch语句的使用问题
1楼 下海的孤魂 switch结构里少了default语句。 应该如下这样,所有case完成后,最下面加上一个default。 以后请教大家时,出错信息里把行数也拷贝上来,可以更快地看出问题出在 。比如 warning c4060。。。 之前,应该还有出错的行数信息的。 switch int a 1...
求问下大神,C语言指针问题,大神大神,赐教啊,关于C语言指针问题。
1楼 阳光的雷咩咩 从声明可知l本身是指针类型,整个函数都是对l为头结点的链表做操作 要从函数内部改变函数参数的值,一般要用指针,这也就是为何initlist要用二级指针的原因。这个值得深入理解,我认为真正的难点在这里。 而不是后面传l为何起作用,这是你问的地方 2楼 匿名用户 不太明白你说的啥 能...
c语言题:输入字符,输出对应的ascii码,直到输入q或
1楼 我是不是师兄 你想输入之后就输出结果吗 应该是这样 include include int main void while ch q ch q 这里你写错了 写成ch q return 0 q 恒为0 所以不会循环 2楼 匿名用户 对照着改 吧 include include int main...