课后作业 22动动手第一题
#include <stdio.h>#define NUM1024
int main()
{
char str;
char ch;
int count=0,i;
printf("请输入一个字符串:");
getchar();
for(i=0;(ch=getchar())!='\n';i++)
{
scanf("%c",str);
count++;
}
printf("你总共输入了%d个字符!",count);
return 0;
}
为啥这样算不出长度??? #include <stdio.h>
int main() {
size_t count = 0;
char ch;
printf("请输入一个字符串:");
for (;;) {
switch (ch = getchar()) {
case '\0':
case '\n':
case '\r'
case EOF:
printf("你总共输入了%d个字符!", count);
return 0;
default:
count++;
}
}
} scanf(“%c“,str ); quark 发表于 2021-2-24 20:23
scanf(“%c“,str );
好像还是不行 本帖最后由 jackz007 于 2021-2-24 20:46 编辑
#include <stdio.h>
#define NUM1024
int main(void)
{
char ch , str ;
int i ;
printf("请输入一个字符串:") ;
for(i = 0 ; (ch = getchar()) != '\n' && i < NUM - 1 ; str = '\0') str = ch ;
printf("%s\n" , str) ;
printf("你总共输入了 %d 个字符!" , i) ;
} jackz007 发表于 2021-2-24 20:42
我想问一下我这个是哪里错了呢 本帖最后由 jackz007 于 2021-2-24 21:27 编辑
投入就放过 发表于 2021-2-24 21:01
我想问一下我这个是哪里错了呢
ch = getchar() 和 scan("%c" , str) 都会在循环中读取键盘输入,你之所以这样安排的理由(意图)是什么?你心里明白自己要干什么吗?
只要看懂了我的代码,自然就会明白你自己代码的问题所在了。 jackz007 发表于 2021-2-24 21:25
ch = getchar() 和 scan("%c" , str) 都会在循环中读取键盘输入,你之所以这样安排的理由(意图 ...
懂了,感谢
页:
[1]